この番号はリンクリストノードにあります。それは27桁である:980089673400089200098129823リストの大きなノードを別のリストの小さなノードに分割する方法はありますか?
Iは、(ノード内のすべての4桁)新しいリストで、以下にそれを断片化する方法が必要です。
27 - > 9800 - > 3400-> 0892 - > 8967 - > 0009 - > 8129 - > 823
この番号はリンクリストノードにあります。それは27桁である:980089673400089200098129823リストの大きなノードを別のリストの小さなノードに分割する方法はありますか?
Iは、(ノード内のすべての4桁)新しいリストで、以下にそれを断片化する方法が必要です。
27 - > 9800 - > 3400-> 0892 - > 8967 - > 0009 - > 8129 - > 823
1)数値を文字列に変換します。
2)多くのサブセットの文字列を検索し、新しいリストに挿入し(それを設定、4をハードコードしないでください)
3)4で文字列の長さを分割します。
かなりシンプルですが、あなたのためにコードを書く人を探していないことを願っています。 お手伝いをしてください。
String str = String.valueOf(<your integer>);
int strLength = str.length();
int subStrCount = strLength/4;
List newList = new LinkedList();
for(int i=0;i<subStrCount;i++){
newList.add(str.subsctring(i*0, (i+1)*4));
}
newList.add(subStrCount*4, strLength);
あなたは私に断片化のサンプルを送っていますか?私の問題は「多くの部分文字列を見つけ、新しいリストに挿入する」 – user1124292
アイデアを伝えるスニペットを追加しました。私は私の携帯電話でスニペットがコンパイルエラーやバグを持っている可能性があるので、デバッガを使用してソートしてください。 – Scorpion
このコードは、トリックを行う必要があります。
for (int i = 0; i*4 < str.length(); i++) {
if (((i * 4 + 4) >= str.length())) {
System.out.println(str.substring(i * 4, 27));
} else {
System.out.println(str.substring(i * 4, i * 4 + 4));
}
}
あなたはint型の使用に変換する必要がある場合:
int n = Integer.parseInt("123");
String s = node.value();
int [] numbers = s.length%4 ? s.length/4 : s.length/4 + 1;
for (int i=0; i<numbers.length; ++i) {
numbers[i] = Integer.parseToInt(s.substring(i*4, 4));
}
return numbers;
数字はすべての桁が含まれます
これは簡単です。これまでに何を試しましたか? – Tudor