是否可以拆分字串以便每個字符根據java中的整數n分開?偽代碼示例:
int n = 2;
String myString = "ABC456";
listStrings = ["AB", "BC", "C4", "45", "56"]; // beacause n = 2
觀察:答案不應該是 [AB, CD, 46, 5]
uj5u.com熱心網友回復:
嘗試
int n = 2;
String myString = "ABC456";
List<String> listStrings = IntStream.range(0, myString.length() - n)
.mapToObj(i -> myString.substring(i, i n))
.toList();
uj5u.com熱心網友回復:
你是這個意思嗎?
String text = "ABC456";
List<String> strings = new ArrayList<String>();
int num = 2;
int index = 0;
while (index 1 < text.length()) {
strings.add(text.substring(index, Math.min(index num,text.length())));
index = num-1;
}
System.out.println(strings);
uj5u.com熱心網友回復:
我不相信有任何內置功能,因為您并沒有真正拆分字串,而是通過它并基于 n 抓取字符組。
我用 c# 撰寫了一些代碼,語法與 java 非常相似,因此它對于您的用例應該幾乎相同:
int n = 2;
string s = "ABC456";
List<string> answerList = new List<string>();
for (int i = 0; i < s.Length; i ) {
if (i 1 == s.Length)
break; //this prevents a single character from being added at the end of the list
string splitString = "";
for (int j = i; j < i n; j ) {
if (j == s.Length)
break;
splitString = s[j].ToString();
}
answerList.Add(splitString);
}
我相信有人會有更清潔的方法,但這對我有用
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/505912.html
