在我的应用程序中,用户可以输入0到999之间的数字 但是,他是否进入" 0"或" 00"或" 000"应该理解和区别对待。 知道的所有函数都将输入转换为单个零" 0"在把它放入变量之前。
private static void AddAmountChart1D (){
String str_pana;
int int_pana, Amount;
Scanner UserInput = new Scanner(System.in);
System.out.print("Enter the game pana : ");
str_pana = UserInput.nextLine(); /* This line should treat "0", "00" & "000" as different types of strings.
Presently it make all three as "0"
System.out.print("Enter the Amount : ");
Amount = UserInput.nextInt();
int_pana = get_int_pana(str_pana);
ChartAmount1D[int_pana] = ChartAmount1D[int_pana]+Amount;
}
答案 0 :(得分:0)
我的目的不是那么清楚。
但是如果你使用
UserInput.nextLine();
这将被视为一个字符串,因此它将返回零" 0"," 00"或" 000"。
此外,如果您希望将值作为数字处理,只需使用
int number = Integer.parseInt(str_pana);
并使用数字。
修改强>
请尝试检查" 0"," 00"的结果。或" 000"。
if (str_pana.equals("0")) {
System.out.println("Zero");
}else if (str_pana.equals("00")) {
System.out.println("Zero-Zero");
}else if (str_pana.equals("000")) {
System.out.println("Zero-Zero-Zero");
}
实际上我的观点是检查零,以便您可以在if子句中设置整数值,并将它们转换为相应的整数值,以便稍后使用。
答案 1 :(得分:0)
阅读整行。 使用功能
public boolean startsWith("0")
来自String类 如果它没有返回true - 只需解析。 否则计数零