2016-11-06 35 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

確實,是的,我今天早上還沒有喝過咖啡。 –