在字符串中查找int

时间:2012-04-21 22:37:16

标签: java arrays string input int

好的,如果我的字符串输入为“3 6”

如何将这两个int放在数组中?如果你们之间有多个空格怎么办?

让我说我希望这些数字在像{3,6}这样的数组中 那可能吗?感谢

4 个答案:

答案 0 :(得分:3)

尝试这样做,使用正则表达式在找到一个或多个空格的序列时拆分输入字符串,然后将得到的String[]转换为int[]

String numberString = "  1   2 34    7 ";
String[] numbers = numberString.split("\\s+");
int[] ints = new int[numbers.length];
for (int i = 0; i < ints.length; i++)
    ints[i] = Integer.parseInt(numbers[i]);

现在ints数组包含预期值:

System.out.println(Arrays.toString(ints));
> [1, 2, 34, 7]

答案 1 :(得分:0)

$string = "3 6 4 879";
preg_match_all('/\d+(?=\s*)/', $string, $arr);

这是PHP的一种方式。

答案 2 :(得分:0)

您可以将split用于您的问题,例如:

分割空格的程序[C#]

static void Main()

{
string s = "1 3 2 7";
//
// Split string on spaces.
// ... This will separate all the words.
//
string[] words = s.Split(' ');
foreach (string word in words)
{
    Console.WriteLine(word);
}
}

输出

1 3 2 7

答案 3 :(得分:0)

Scanner sc = new Scanner(mString);
while (sc.hasNextInt()){
    mArrayList.add(sc.nextInt())
}

然后只需将ArrayList转换回数组。