如何将一个int字符串放入一个int数组?

时间:2013-03-17 05:23:03

标签: java compilation compiler-errors

Sandboxx:

    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();
    }

  }

}

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

2 个答案:

答案 0 :(得分: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 :(得分: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) {};
}