ArrayList使用
ArrayList的构造
public static void main(String[] args) {
// 构造一个空的列表
List<Integer> list1 = new ArrayList<>();
// 构造一个具有10个容量的列表
List<Integer> list2 = new ArrayList<>(10);
list2.add(1);
list2.add(2);
list2.add(3);
// list2.add("hello"); // 编译失败,List<Integer>已经限定了,list2中只能存储整形元素
// list3构造好之后,与list中的元素一致
ArrayList<Integer> list3 = new ArrayList<>(list2);
// 避免省略类型
List list4 = new ArrayList();
list4.add("111");
list4.add(100);
}
示例如图所示。
ArrayList常见操作
方法
|
解释
|
boolean
add
(E e)
|
尾插
e
|
void
add
(int index, E element)
|
将
e
插入到
index
位置
|
boolean
addAll
(Collection<? extends E> c)
|
尾插
c
中的元素
|
E
remove
(int index)
|
删除
index
位置元素
|
boolean
remove
(Object o)
|
删除遇到的第一个
o
|
E
get
(int index)
|
获取下标
index
位置元素
|
E
set
(int index, E element)
|
将下标
index
位置元素设置为
element
|
void
clear
()
|
清空
|
boolean
contains
(Object o)
|
判断
o
是否在线性表中
|
int
indexOf
(Object o)
| 返回第一个o所在下标 |
int
lastIndexOf
(Object o)
| 返回最后一个o所在下标 |
List<E>
subList
(int fromIndex, int toIndex)
| 截取部分list |
mport java.util.ArrayList;
import java.util.List;
/*import java.util.List;*/
/*class Person{
}
class Students extends Person{
}*/
public class Demo {
public static void main(String[] args) {
ArrayList<Integer> arrayList = new ArrayList<>();
arrayList.add(23);
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(322);
list.add(3,10);
list.addAll(arrayList);
list.get(1);
list.remove(1);
list.set(2,543434);
Integer v = list.indexOf(1);
boolean a = list.contains(322);
List<Integer> c = list.subList(0,2);
System.out.println(c);
System.out.println(v);
System.out.println(a);
System.out.println(list);
}
/*public static void main(String[] args) {
ArrayList<Integer> ArrayList = new ArrayList<>();
ArrayList.add(1);
ArrayList.add(222);
List<Integer> list = new ArrayList<>(ArrayList);
System.out.println(list);
*/
}
这是我自己在使用其操作时的代码,可供参考学习。
ArrayList的遍历
ArrayList
可以使用三方方式遍历:
for
循环
+
下标、
foreach
、使用迭代器
示例如图:
public class Demo {
public static void main(String[] args) {
ArrayList<Integer> arrayList = new ArrayList<>();
arrayList.add(23);
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(322);
/* list.add(3,10);
list.addAll(arrayList);
list.get(1);
list.remove(1);
list.set(2,543434);*/
for (int i = 0;i < list.size();i++){
System.out.println(list.get(i));
}
for (Integer a:list){
System.out.println(a);
}
Iterator<Integer> b = list.iterator();
while(b.hasNext()){
System.out.println(b.next());
}
运行结果如图: