如何在不使用循環的情況下將字符串拆分爲整數數組?如何將字符串拆分爲整數數組?
例如:
如果我有一個字符串"12345"
,我想轉換爲int陣列[1,2,3,4,5]
不使用循環。我知道如何做到這一點。有沒有java提供的內置函數可以分割並轉換爲所需的數據類型?
如何在不使用循環的情況下將字符串拆分爲整數數組?如何將字符串拆分爲整數數組?
例如:
如果我有一個字符串"12345"
,我想轉換爲int陣列[1,2,3,4,5]
不使用循環。我知道如何做到這一點。有沒有java提供的內置函數可以分割並轉換爲所需的數據類型?
如果你的Java 8,你可以使用一個Stream:
「支持串行和並行總 操作元素的序列」
觀察:
import java.util.Arrays;
import java.util.stream.Stream;
class Main {
public static void main(String[] args) {
String numbersString = "12345";
int[] numbersIntArray = Stream.of(numbersString.split("")).mapToInt(Integer::parseInt).toArray();
System.out.println(Arrays.toString(numbersIntArray)); // [1, 2, 3, 4, 5]
}
}
的Java 8你可以使用數組也UTIL。
String string = "12345";
int[] ints= Arrays.asList(string.split("")).stream().mapToInt(Integer::parseInt).toArray();
System.out.println(Arrays.toString(ints));;
您可以使用遞歸。
public class Test {
static List<Integer> integerArray = new ArrayList<Integer>();
static int strLength;
static String s;
public static void main(String[] args) {
s = "12345";
strLength = s.length();
recursiveMe(0);
System.out.println(integerArray.toString());
}
public static void recursiveMe(int n) {
if (n < strLength) {
integerArray.add(n, Integer.parseInt(String.valueOf(s.charAt(n))));
recursiveMe(n + 1);
}
}
}
至少表明你將如何與循環 –
這就是所謂的BTW流,內置的您正在尋找的概念做。 –
你到目前爲止嘗試過什麼? – GurV