【发布时间】:2020-07-12 11:43:26
【问题描述】:
我尝试将字符串中的数字转换为具有 datatyp 字符的数组。我的问题是,我的数组中的数字每次都是 48 到高。我也知道这个问题与 ASCII 表有关。我该怎么做才能解决这个问题?
package Test;
public class Main {
public static void main(String[] args) {
int iNumber = 0; int indexNumber = 0;
String calculation = "5+8";
int lengthCalculation = calculation.length();
int[] number= new int[lengthCalculation/2+1];
while(iNumber < lengthCalculation) {
number[indexNumber] = calculation.charAt(iNumber);;
iNumber+=2;
indexNumber++;
}
for(int q : number) {
System.out.println(q); }
}
}
【问题讨论】:
-
请分享您的预期和实际输出。
-
你的代码不是很好。你真正想解决什么问题?要么,拆分
+(或者可能拆分非数字),然后解析值。或者,使用ScriptEngine为您计算表达式。简而言之,你想看5和8吗?或者你想要13?还是您想要5、+和8(全部分开)。 -
你的问题是什么?
-
结果应该是5和8
-
从数字字符中减去'0'得到数字值。