嗨,我在我的应用程序中得到了一个xp计数器,它可以计数按钮点击次数之类的东西。当xp =某个数字时,级别会增加。我现在是这样写的。
private void Levels(){
ref.child(userID).child("XP").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if (dataSnapshot.exists()) {
Integer current_xp = dataSnapshot.getValue(Integer.class);
if (current_xp== 50) {
Level_Counter level_counter = new Level_Counter(userID);
level_counter.Counter();
}
if (current_xp==100){
Level_Counter level_counter = new Level_Counter(userID);
level_counter.Counter();
}
if (current_xp==150){
Level_Counter level_counter = new Level_Counter(userID);
level_counter.Counter();
}
}
我该如何重写它,所以我只需要编写一次级别计数方法?这样每50点就可以升级一次
答案 0 :(得分:2)
如果您想每隔50点更改一次电平,可以执行以下操作:
if (current_xp % 50 == 0) {
int level = current_xp / 50;
}
答案 1 :(得分:1)
我认为您可以使用模运算符并以下面提到的方式重写if-else块。
if (current_xp % 50 == 0) {
Level_Counter level_counter = new Level_Counter(userID);
level_counter.Counter();
}