package shuju;import java.util.ArrayList;public class CArrayList { private static Object length; private ArrayList notes= new ArrayList(); private int value=0; private int curLen; public int length(){ return (Integer) CArrayList.length; } public int add(Integer b){ notes.add(b); return b; } int getNote(int index){ return notes.get(index); } public void reverse() { Integer temp;//定义交换变量 for (int i = 0; i < curLen/2; i++) { Object[] notes = null; //将a[0]与a[n]进行交换 然后是a[1]与a[n-1]交换,以此类推,进行顺序表的长度的一半次运算 temp = (Integer) notes[i]; notes[i] = notes[curLen-i-1]; notes[curLen-i-1] = temp; } } public static void main(String[] args) { // TODO Auto-generated method stub CArrayList ch=new CArrayList(); ch.add(32); ch.add(42); ch.reverse(); System.out.println(ch.getNote(1)); }}
public class CArrayList {
private ArrayList<Integer> notes = new ArrayList();
public void add(Integer b) {
notes.add(b);
}
List<Integer> getNotes() {
return notes;
}
int[] reverse(int[] notes) {
//定义交换变量
for (int i = 0; i < notes.length/ 2; i++) {
//将a[0]与a[n]进行交换 然后是a[1]与a[n-1]交换,以此类推,进行顺序表的长度的一半次运算
int temp = (Integer) notes[i];
notes[i] = notes[notes.length - i - 1];
notes[notes.length - i - 1] = temp;
}
return notes;
}
public static void main(String[] args) {
CArrayList ch = new CArrayList();
int[] arr = new int[4];
ch.add(32);
ch.add(42);
ch.add(65);
ch.add(2);
for (int i = 0; i < ch.getNotes().size(); i++) {
arr[i] = ch.getNotes().get(i);
System.out.print(arr[i]+" ");
}
System.out.println();
System.out.println("反轉數組之後的結果是:");
int[] reverse = ch.reverse(arr);
for (int number :reverse) {
System.out.print(number + " ");
}
}
}
看了你寫的邏輯上是沒有問題的 小建議:可以在練習的時候稍微明確一下對於變量的使用(防止程式雜亂冗餘,也可以在編寫的的時候更清晰)
这个代码贴出来你自己看着不晕么