如何在android中使用对象类型的自动增量?

时间:2013-06-09 07:39:48

标签: java android

好的,我将文件保存在json文件中,这与具有自动增量功能的db不同。

说我有这个对象。

public book() {
id = ?????
Title = mTitle;
}

如何让id为您提供唯一的int号码?那可能吗?提前谢谢。

3 个答案:

答案 0 :(得分:3)

在类中有一个静态变量并递增它。

class Book {

 private static int increment = 0;
 public Book() {
   id = ++increment;
   Title = mTitle;
 }

}

请遵循一些命名约定。类名应以大写字母开头。

答案 1 :(得分:2)

你有几个解决方案。

1 加入您的身份证System.currentTimeMillis()甚至System.nonoTime()。这几乎可以保证唯一性,并且数字将随之而来。

2 创建只计算对象的静态计数器:

示例:

public class Book {
   private static int count = 0;
   private int id;

   public Book() {
       id = ++count;
   }
}

此方法将保证应用程序的同一实例中ID的唯一性。

3 您还可以使用生成真正唯一字符串ID的类UUID

答案 2 :(得分:1)

如果您自动生成getter / setter,请务必将setId()标记为protected并删除传入的参数。

public protected void setId() {}