Java 使用for循环移动字符数组
我创建了一个Java 使用for循环移动字符数组,java,for-loop,iteration,Java,For Loop,Iteration,我创建了一个char[],看起来像 [A, A, B, C] 我想删除最后一个字符,然后将其他字符上移一个,并在第一个索引处存储一个新的char。所以看起来是这样的: [D, A, A, B] 我将如何使用一个或两个for循环。我有正确的想法,只是没有正确地实施 char[] array = new char[4]; //Array looks like [A, A, B, C] for(int i = 0; i <= array.length - 2; i++) { arr
char[]
,看起来像
[A, A, B, C]
我想删除最后一个字符,然后将其他字符上移一个,并在第一个索引处存储一个新的char
。所以看起来是这样的:
[D, A, A, B]
我将如何使用一个或两个for循环
。我有正确的想法,只是没有正确地实施
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[]数组=新字符[4]//数组看起来像[A,A,B,C]
对于(int i=0;i而言,从数组的末尾到开头进行迭代更有意义:
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(Arrays.asList('A','A','B','C');
System.out.println(list);//打印“[A,A,B,C]”
list.removeLast();
list.addFirst('D');
System.out.println(list);//打印“[D,A,A,B]”
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]"