如果把Calendar.getInstance()的timeInMillis值改成int,能不能是唯一id?
If you change the timeInMillis value of Calendar.getInstance() to int, can it be a unique id?
在 Android 应用程序开发期间,每个项目都会尝试附加一个唯一的 int 类型 ID。我认为item的创建点是唯一的,所以在调用Calendar.getInstance()之后,我想通过将timeInMillis的值改为toInt()来给它。即使像这样转化成int,值是不是就变得唯一了?
例如)
val calendar = Calendar.getInstance()
val longId = calendar.timeInMillis // 1611807420557
val intId = calendar.timeinMillis.toInt() // 1194684557
作为我测试的结果,输出了上面的值。 1194684557值是不是改成了int一个唯一id?
toInt()
不是一个好主意,因为如果你的 long 超出了 int 的范围,它就不会工作。我建议将毫秒除以 1000。然后将其转换为整数。
尝试这样的事情:
val intId = (longId / 1000).toInt()
在 Android 应用程序开发期间,每个项目都会尝试附加一个唯一的 int 类型 ID。我认为item的创建点是唯一的,所以在调用Calendar.getInstance()之后,我想通过将timeInMillis的值改为toInt()来给它。即使像这样转化成int,值是不是就变得唯一了?
例如)
val calendar = Calendar.getInstance()
val longId = calendar.timeInMillis // 1611807420557
val intId = calendar.timeinMillis.toInt() // 1194684557
作为我测试的结果,输出了上面的值。 1194684557值是不是改成了int一个唯一id?
toInt()
不是一个好主意,因为如果你的 long 超出了 int 的范围,它就不会工作。我建议将毫秒除以 1000。然后将其转换为整数。
尝试这样的事情:
val intId = (longId / 1000).toInt()