我是新手,我开始尝试一些东西,所以我制作了一个只需要一行的计算器。当我以这种格式进行操作时它会起作用:Int space String space int。 EG:10 + 50。如果我不做像 50+50 这样的空格,程序就会失败。有什么办法可以识别 Java 中的空格吗?请记住,我是一个菜鸟,但我发现我做得很好,这让我保持动力。这是代码:
package Tests;
import java.util.Scanner;
public class Calculator {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter your values : ");
int first = input.nextInt();
String character = input.next();
int second = input.nextInt();
int answer = 0;
switch (character) {
case "*":
answer = first * second;
break;
case "/":
answer = first/second;
break;
case "-":
answer = first-second;
break;
case "+":
answer = first+second;
break;
default:
System.out.println("Failed to recognise character");
break;
}
System.out.println("Answer : " + answer);
}
}
最佳答案
Scanner#next
根据您在创建 Scanner
对象时设置的分隔符,从输入字符串中读取下一个标记。默认定界符是空格,因此当您分隔操作数和运算符时,您的程序会正确处理它们。您可以将扫描器的分隔符设置为运算符。
Scanner input = new Scanner(System.in);
input.useDelimiter("\+|\-|\*|\\");
您的程序将正常运行。
关于java - 识别java中的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20155111/