Math.random().toString(36).substr(2)转换成java
时间: 2024-05-26 19:11:38 浏览: 174
语言中的代码是什么?
在 Java 中,可以通过下列代码实现 Math.random().toString(36).substr(2) 的转换:
String randomString = Long.toString((long)(Math.random() * (36 * 36 * 36 * 36 * 36)), 36);
这里我们先计算出 36 的五次方,然后随机生成一个 0 到这个数之间的整数。将这个整数转换成 36 进制字符串后,我们得到的字符串长度可能小于 5,需要在前面补齐“0”直到字符串长度恰好为 5。最终得到的字符串就是和 Math.random().toString(36).substr(2) 等价的 Java 代码。
相关问题
Math.random().toString(36).substr(2)
这不是一个问题,而是一个JavaScript语言中生成随机字符串的方法。该方法会生成一个由数字和小写字母组成的随机字符串。其中,Math.random()函数用于生成一个0到1之间的随机小数,toString(36)函数用于将该小数转换为36进制的字符串,而substr(2)函数则用于返回该字符串的第2位到最后一位的子串。
function generateUUID() { var d = new Date().getTime(); var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { var r = (d + Math.random() * 16) % 16 | 0; d = Math.floor(d / 16); return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16); }); return uuid; } console.log(generateUUID());简化成16位
可以将生成的UUID字符串截取前16位即可,例如:
```
function generateUUID() {
var d = new Date().getTime();
var uuid = 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
var r = (d + Math.random() * 16) % 16 | 0;
d = Math.floor(d / 16);
return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
});
return uuid.substr(0, 16);
}
console.log(generateUUID());
```
阅读全文