我收到一个字符串,我将其转换为包含以mL为单位的水位的整数。我正在文本框中显示水位,并在进度条中显示它的进度。我需要计算cupcount消耗的杯子数量,每杯子400ml,并存储cup_amount消耗的水量。
String text = new String(txValue, "UTF-8");
/* listAdapter.add(text);
messageListView.smoothScrollToPosition(listAdapter.getCount()-1); */
String[] parts = text.split(",");
String part1 = parts[0];
String part2 = parts[1];
temperature.setText("Temperature: " + part1 + " °F");
capacitance.setText("Water Level: " + part2 + " mL");
int number = 0;
try{
number= Integer.parseInt(part2);
}catch(NumberFormatException nfe){
}
progressBar.setProgress(number);
int array[] = new int[200];
int cup_amount=0;
for(int a =0;a<array.length;a++) {
array[a] = number;
if(array[a]>0)
cup_amount = array[a]-array[a-1];
if(cup_amount >= 400)
{
cupcount= cupcount + 1;
cup_amount=0;
}
Log.d("Array","arr: "+ Arrays.toString(array));
}
cup_count.setText("Water intake = " + cupcount + " cups");
} catch (Exception e) {
Log.e(TAG, e.toString());
}
}
问题是当水位变化至少400mL时,cup_count没有更新。我怎样才能解决这个问题?
编辑:对不起,我的预期输入是整数,'数字',随着水位的增加而更新,它将在0mL到500mL之间。
我正在尝试记录消耗的水量,如果用户饮用400mL或更多,将会出现这种情况,并将其存储在变量'cup_count'中,以便我可以将其显示在XML格式的EditText框中'cupcount' 。我还想记录以mL为单位的总耗水量,这样我就可以告知用户他们在一定时间内没有足够的水,这将存储在变量'cup_amount'中。我甚至不确定使用数组是否是存储这些值的最佳方法。
答案 0 :(得分:0)
编辑:
我不确定这是否是你尝试实现的目标,但是你走了:
public class MyClass {
public static void main(String args[]) {
int total_amount = 2750;
int cup_count = total_amount / 400;
int remainder = total_amount % 400;
System.out.println("Water intake = " + cup_count + " cups.\nRemainder = " + remainder + " ml.");
}
}