好的,如果我的字符串输入为“3 6”
如何将这两个int放在数组中?如果你们之间有多个空格怎么办?
让我说我希望这些数字在像{3,6}这样的数组中 那可能吗?感谢
答案 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转换回数组。