題目描述
輸入一個鏈表,按鏈表從尾到頭的順序返回一個ArrayList。
// 輸入一個鏈表,按鏈表從尾到頭的順序返回一個ArrayList。
public ArrayList<Integer> printListFromTailToHead(ListNode listNode) {
ArrayList<Integer> resultList = new ArrayList<>();// 沒有考慮空鏈表
if(listNode==null) return resultList;
while(listNode.next!=null){// 邊界情況的考慮:最後一個的時候,無下一個節點
resultList.add(0,listNode.val);
listNode = listNode.next;
}
resultList.add(0,listNode.val);
return resultList;
}
ArrayList<Object> arrayList = new ArrayList<>();
//1.大小
arrayList.size();
//2.添加
arrayList.add(new Object());
//3.指定位置添加
arrayList.add(0, new Object());
//4.判斷對象是否在容器內(引用判斷) 返回 boolean 值
arrayList.contains(new Object());
//5.獲取指定位置的對象(範圍內)
arrayList.get(index);
//6.獲取對象位置(有相同引用的對象 返回最前的下標)
arrayList.indexOf(new Object());
//7.刪除指定下標的對象
arrayList.remove(index);
//8.刪除指定對象(有相同引用刪除 最前面的)
arrayList.remove(new Object());
//9.刪除全部
arrayList.clear();
arrayList.removeAll(arrayList);
//10.替換 指定下標的對象
arrayList.set(index, new Object());
//11.轉換爲指定泛型的數組
Object []object = arrayList.toArray(new Object []{});
//12.添加另一個容器的所有對象
arrayList.addAll(new ArrayList());//添加到最後
arrayList.addAll(index,new ArrayList());//在指定位置添加