2013-03-17 120 views
2

Sandboxx:如何将一串int整数转换为一个整数数组?

import java.util.Arrays; 
    import java.util.Scanner; 
    import static java.lang.System.*; 
    import static java.util.Arrays.*; 

public class Sandboxx 
{ 
    public static void main(String args[]) 
    { 



    Construct ion = new Construct(3, "3, 2, 1, 0"); 

    } 

} 

构建:

import java.util.Arrays; 
import java.util.Scanner; 
import static java.lang.System.*; 
import static java.util.Arrays.*; 

public class Construct 
{ 

    int length; 
    String s; 


    public Construct() { 

    } 

    public Construct(int _length) { 

    } 

    public Construct(String _s) { 

    } 

    public Construct(int _length, String _s) { 

    length = _length; 
    s = _s; 

    Scanner chopper = new Scanner(s); 

    int[] nums = new int[3]; 
    while (chopper.hasNextInt()) { 

     nums = chopper.nextInt(); 
    } 

    } 

} 

我试图把整数的字符串,(S)成整数(NUMS)阵列。我写了这段代码,但是我得到这个错误:Error:/Users/bobgalt/Construct.java:41:'.class'expected。我是java的新手,你可以看到,但我似乎无法弄清楚如何将int整个字符串放入一个int数组中。谢谢

回答

3

我认为你的问题是“我如何解析字符串”3,2,1,0“为一组整数?”

最简单的答案是String.split()。

例(未经测试):

String s = "3, 2, 1, 0"; 
    String a[] = s.split(","); 
    int[] nums = new int[a.length]; 
    for (int i=0; i < a.length; i++) 
    nums[i] = Integer.parseInt(a[i]); 
1

你可以尝试这样的事情: -

String s= "{3,2,1,0}"; 
String[] x= s.replaceAll("\\{", "").replaceAll("\\}", "").split(","); 

int[] s= new int[x.length]; 

for (int i = 0; i < x.length; i++) { 
    try { 
     s[i] = Integer.parseInt(x[i]); 
    } catch (Exception e) {}; 
} 
相关问题