2016-11-06 40 views
-2

字符串包含由分隔数的未知长度“ - ”,例如:分割数字字符串到整数数组

intArray[] = { 4, 12, 103, 250, 302 } 

string = "4-12-103-250-302" 

我在一个整数数组这样需要这些数字

你能给我一个代码示例/解决方案吗?

+0

对不起,我在说关于Java – Alex

回答

0

您可以在Java中使用String.Split方法。然后将数组转换为整数数组。

string str = "4-12-103-250-302"; 
String[] parts = string.split("-"); 

int[] intArray = new int[parts.length]; 

for(int i = 0; i < parts.length -1; i++) 
{ 
    intArray[i] = Integer.parseInt(parts[i]); 
} 

然后,您可以像访问数组一样访问所有部件。

intArray[0] 
intArray[1] 
. 
. 
etc 
+0

谢谢,工作正常 – Alex

0

你想通过一个字符分隔符将字符串拆分成一个数组。然后,您想要将一个函数应用于数组中的每个项目,以使其成为一个整数。

在PHP中:

<?php 
$string = "4-12-103-250-302"; 
$aray = $string.split("-"); 
array_walk($aray, 'intval'); 

其他语言将有类似的结构。

由于Java < 8没有使用lambda表达式,试试这个:

str = "4-12-103-250-302"; 
String[] straray = str.split("\\-", -1); 
int[] intArray = new int[straray.length]; 
for (int i=0; i < straray.length; i++) { 
    intArray[i] = Integer.parseInt(straray[i]); 
} 
+0

谁说java 8不能用?这只是一张地图,不需要减少。我认为你的意思是说lambdas –

+0

确实,是的,我今天早上还没有喝过咖啡。 –