如何使用 Parsing 将 Int 和字符从字符串中分离出来 (java)
How can I use Parsing to separate Int and characters from a string (java)
我正在尝试创建一个 RPN 计算器。我希望用户在输入字符之前一直按数字,但我不知道该怎么做。有人提到把输入变成一个字符串,然后解析它,这样我就可以把它分成 int 和 char。我可以看看这是如何工作的例子吗?它不一定需要用于 RPN 计算器。
若输入字符ch
则入栈
if(ch >='0' || ch <='9')
stack.push(ch);
else
//check for other characters
这是一个示例 Java 程序:
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Stack;
class Test {
public static void main (String[] args) throws IOException {
InputStreamReader inputStreamReader = new InputStreamReader(System.in);
int data = inputStreamReader.read();
Stack<Character> stack = new Stack<>();
while (data != -1) {
char c = (char)data;
if (Character.isDigit(c)) {
stack.push(c);
} else {
// do whatever you want.
}
data = inputStreamReader.read();
}
}
}
我正在尝试创建一个 RPN 计算器。我希望用户在输入字符之前一直按数字,但我不知道该怎么做。有人提到把输入变成一个字符串,然后解析它,这样我就可以把它分成 int 和 char。我可以看看这是如何工作的例子吗?它不一定需要用于 RPN 计算器。
若输入字符ch
则入栈if(ch >='0' || ch <='9')
stack.push(ch);
else
//check for other characters
这是一个示例 Java 程序:
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Stack;
class Test {
public static void main (String[] args) throws IOException {
InputStreamReader inputStreamReader = new InputStreamReader(System.in);
int data = inputStreamReader.read();
Stack<Character> stack = new Stack<>();
while (data != -1) {
char c = (char)data;
if (Character.isDigit(c)) {
stack.push(c);
} else {
// do whatever you want.
}
data = inputStreamReader.read();
}
}
}