Java 如何在Android中重置AtomicInteger唯一Id?
我想用重置按钮创建一个唯一的Id。我有一个类Java 如何在Android中重置AtomicInteger唯一Id?,java,android,uniqueidentifier,Java,Android,Uniqueidentifier,我想用重置按钮创建一个唯一的Id。我有一个类ViewIdViewId类包含AtomicIntegerAtomicInteger成功创建唯一Id。但我想使用按钮重置唯一Id。因此,请帮助我重置并再次创建唯一Id ViewIdClass: import java.util.concurrent.atomic.AtomicInteger; public class ViewId { private static ViewId INSTANCE = new ViewId(); private At
ViewId
ViewId
类包含AtomicInteger
AtomicInteger
成功创建唯一Id。但我想使用按钮重置唯一Id。因此,请帮助我重置并再次创建唯一Id
ViewId
Class:
import java.util.concurrent.atomic.AtomicInteger;
public class ViewId {
private static ViewId INSTANCE = new ViewId();
private AtomicInteger seq;
private ViewId() {
seq = new AtomicInteger(0);
}
public int getUniqueId() {
return seq.incrementAndGet();
}
public static ViewId getInstance() {
return INSTANCE;
}
}
public class MainActivity extends AppCompatActivity {
EditText editValue;
ViewId viewId = ViewId.getInstance();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editValue = (EditText)findViewById(R.id.editText);
}
// Increment Button
public void floatIncrement(View view) {
Log.e("Incremented value is : ", String.valueOf(viewId.getUniqueId()));
}
// Reset Button
public void resetBtn(View view) {
// reset here
}
}
main活动
Class:
import java.util.concurrent.atomic.AtomicInteger;
public class ViewId {
private static ViewId INSTANCE = new ViewId();
private AtomicInteger seq;
private ViewId() {
seq = new AtomicInteger(0);
}
public int getUniqueId() {
return seq.incrementAndGet();
}
public static ViewId getInstance() {
return INSTANCE;
}
}
public class MainActivity extends AppCompatActivity {
EditText editValue;
ViewId viewId = ViewId.getInstance();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editValue = (EditText)findViewById(R.id.editText);
}
// Increment Button
public void floatIncrement(View view) {
Log.e("Incremented value is : ", String.valueOf(viewId.getUniqueId()));
}
// Reset Button
public void resetBtn(View view) {
// reset here
}
}
只需调用
seq.set(0)
,这将使您的AtomicInteger
返回到0。您想在哪里使用此id。我看不到它被使用?@Diyoda我有两个按钮1<代码>浮动增量,2<代码>重置BTN。我想在单击“增量”按钮时将id存储在数据库中。我在日志中显示结果。floatIncrement
btn增加值(例如:1,2,3,…)。当我单击resetBtn
时,我想再次(1,2,3,…)排序。。我很高兴有人帮了你。昨天我还没来得及看电视呢。对不起that@hipokito我不知道它是否仍然有用,但我假设静态代码分析器正在标记它,对吗?如果是这样,您可以将“0”声明为常量,例如,private static final int INITIAL_VAL=0代码>