好吧所以我想知道如何从同一行读取一个整数和字符串?我举个例子: 如果我输入= 3K,我怎么能让我的输出看起来像这样:3K = 3000?
答案 0 :(得分:1)
首先打破你的要求。
如果您想要一个可变/灵活的解决方案,您可以提供任何类型的修改器,您需要确定用户输入的位数,然后确定修改器。
完成后,您可以拆分String
,将数字转换为int
并根据修改器应用相应的计算......
Scanner kb = new Scanner(System.in);
String input = kb.nextLine();
int index = 0;
while (index < input.length() && Character.isDigit(input.charAt(index))) {
index++;
}
if (index >= input.length()) {
System.out.println("Input is invaid");
} else {
String digits = input.substring(0, index);
String modifier = input.substring(index);
int value = Integer.parseInt(digits);
switch (modifier.toLowerCase()) {
case "k":
value *= 1000;
break;
//...
}
System.out.println("Expanded value = " + value);
}
答案 1 :(得分:0)
String input = "3k";
String output = input.replaceAll("[Kk]", "000");
int outputAsInt = Integer.parseInt(output);