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数组中。感谢
答案 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) {};
}