好吧,所以我想知道如何从同一行读取整数和字符串?我举个例子: 如果我有 input=3K 如何使我的输出看起来像这样:3K=3000?
最佳答案
首先分解您的需求。
- 您的输入值为[数字][修饰符]
- 您需要从修饰符中提取数字
- 您需要将修饰符应用于数字
如果您想要一个可变/灵活的解决方案,可以提供任何类型的修饰符,则需要确定用户输入的位数,然后确定修饰符。
一旦获得,您可以拆分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);
}
关于java - 从同一输入行读取整数和字符串(java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25798422/