我在java中接受了一个数字作为字符串S = 1234。现在我想得到s [0] s [1] s [2] s [3]的整数值。
for(int i=0;i<l;i++)// l is length of string s
int x=s[i]-'0';// print this now
但这似乎不起作用。
答案 0 :(得分:1)
您可以使用charAt()
结合获取该字符的数值来获取整数。
// Assuming you already have the Integer object "S" declared and assigned
int[] s = new int[Integer.toString(S).length()]; // create the integer array
for(int i = 0; i < Integer.toString(S).length(); i++)
{
int x = Character.getNumericValue(S.charAt(i));
s[i] = x;
}
答案 1 :(得分:1)
Java字符串不仅仅是char
数组,它们也是对象,因此您无法使用[]
运算符。但是你确实有正确的想法,你只是以错误的方式访问角色。相反,您可以使用charAt
方法:
for(int i = 0; i < l; i++) { // l is length of string s
int x = s.charAt(i) - '0';
// Do something interesting with x
}
答案 2 :(得分:0)
从另一个堆栈溢出响应中获取此信息:Java: parse int value from a char
int x = Character.getNumericValue(S.charAt(i));
答案 3 :(得分:0)
只需使用Character.getNumericalValue()方法即可转换数字字符串。以下是获得它的方法。
String num = "1234";
char[] a=num.toCharArray();
ArrayList<Integer> p = new ArrayList<>();
for(int i=0; i<a.length; i++){
p.add(Character.getNumericValue(a[i]));
System.out.println(p.get(i));
}