如果将Calendar.getInstance()的timeInMillis值更改为int,它可以是唯一的id吗?<



在Android应用程序开发过程中,每个项目都试图附加一个唯一的int类型id。我认为创建项目的点是唯一的,所以在调用Calendar.getInstance()之后,我想通过将timeInMillis的值更改为toInt()来给出它。即使它被转换成这样的整型,它的值会变得唯一吗?

特异)

val calendar = Calendar.getInstance()
val longId = calendar.timeInMillis          // 1611807420557
val intId = calendar.timeinMillis.toInt()   // 1194684557

作为我测试的结果,输出了上面的值。是否将1194684557的值更改为唯一的id?

toInt()不是一个好主意,因为如果您的long超出int的范围,它将不起作用。我建议用千分之一除以1000。然后把它转换成整型。试试这样写:

val intId = (longId / 1000).toInt()

最新更新