我是 android 的新手,正在尝试制作一个计算器...
现在我已经在 charSequence 变量中提取了整个表达式。
例如 30+69-(3-10)
现在我需要检测 charSequence 变量的第一个字符是数字 (0-9) 还是字符/运算符。
我可以使用 get.subSequence(0,1) 但不想将它与每个数字进行比较以确定它是否是一个数字,如果它是一个数字那么它是哪个......
我如何使用更少的条件将它与每个数字进行比较并提取该特定数字....
最佳答案
您可以使用:
Character.isDigit(someChar)
这会告诉你一个字符是否是一个数字。
如果不是,您可以假定它是一个运算符并照此处理。
所以一个实现看起来像:
CharSequence chars = "1+2-3";
for(int i = 0; i < chars.length(); i++ ) {
if (Character.isDigit(chars.charAt(i))) {
//is digit
} else {
//is operator
}
}
*我没有可用的 Java 编译器,所以我现在不能保证它可以工作。
关于java - Android CharSequence Number Detection(0-9) 在一条语句中而不使用 if else,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19281760/