Java 从字符串S中提取每个位置的整数

Java 从字符串S中提取每个位置的整数,java,string,Java,String,在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 for(int i=0;i您可以使用charAt()结合获取该字符的数值来获取整数 // Assuming you already have the Integer object "S" declared an

在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

for(int i=0;i您可以使用
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;
}
//假设您已经声明并分配了整数对象“S”
int[]s=new int[Integer.toString(s).length()];//创建整数数组
对于(int i=0;i
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
}
for(int i=0;i
从另一个堆栈溢出响应获取此信息:


只需使用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));
    }
String num=“1234”;
char[]a=num.toCharArray();
ArrayList p=新的ArrayList();

对于(int i=0;i关于
int x=s.charAt(i)-'0';
?您是否尝试过使用
Integer.valueOf()
Character.getNumericValue()
…一旦你有了足够的声誉,你就可以将问题标记为重复问题。另外,另一个答案已经提供了解决方案。哦,太好了,希望我很快就到了。我一定是同时在研究答案。
   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));
    }