[英]Using for loops to shift an array of characters
我創建了一個看起來像的char[]
[A, A, B, C]
我想刪除最后一個字符,然后將其他字符向上移動一個並在第一個索引處存儲一個新char
。 所以它看起來像這樣:
[D, A, A, B]
我如何使用一個或兩個for loops
來做到這一點。 我有正確的想法,我只是沒有正確實現它。
char[] array = new char[4]; //Array looks like [A, A, B, C]
for(int i = 0; i <= array.length - 2; i++) {
array[i] = array[i + 1];
}
array[0] = 'D'; //This should be the new char at index 0.
從數組的結尾到開頭迭代會更有意義:
char[] array = new char[4]; //Array looks like [A, A, B, C]
for(int i = array.length - 1; i > 0; i--) {
array[i] = array[i - 1];
}
array[0] = 'D';
如此小的尺寸使用數組是可以的。
只是指出另一種方法,您可以使用LinkedList
。
LinkedList list = new LinkedList<Character>(Arrays.asList('A', 'A', 'B', 'C'));
System.out.println(list); // prints "[A, A, B, C]"
list.removeLast();
list.addFirst('D');
System.out.println(list); // prints "[D, A, A, B]"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.