List接口下的实现方法ArrayList的增删改查和其它方法的实例。
Java ArrayList API 文档:http://tool.oschina.net/apidocs/apidoc?api=jdk_7u4
大纲图:
1. 增:add( ) addAll( ) 返回值:boolean 丨 clone() 返回值Object
public static void main(String[] args) {
// String类型集合1
ArrayList<String> ay = new ArrayList<String>();
// String类型集合2
ArrayList<String> ay2 = new ArrayList<String>();
// 直接添加,方法返回值为boolean类型
boolean bl=ay.add("A");
ay2.add("C+");
// 指定位置添加
ay.add(1, "B");
// 集合1后面追加集合2
ay.addAll(ay2);
// 集合1指定位置添加集合2
ay2.addAll(0, ay);
// 克隆,返回的String值,用Object接收
Object aa=ay.clone
//打印克隆的值
System.out.println("添加成功");
if(bl){
System.out.println("添加成功");
}
// 遍历集合1元素
System.out.println("集合1");
for (String st : ay) {
System.out.print(st + " ");
}
System.out.println("------");
System.out.println("集合2");
// 编辑集合2元素
for (String st : ay2) {
System.out.print(st + " ");
}
}
2.删:remove( )丨clear() 返回值:boolean、void、void
public static void main(String[] args) {
// String类型集合1
ArrayList<String> ay = new ArrayList<String>();
// 增加元素
ay.add("C");ay.add("B");ay.add("A");
// 遍历集合1元素
System.out.println("原始元素:");
for (String st : ay) {
System.out.print(st + " ");
}
boolean bl=ay.remove("C");//指定元素删除 boolean
ay.remove(1);//指定下标删除
if(bl){
System.out.print("\n删除成功");
}
System.out.print("\nremove删除后:");
for (String st : ay) {
System.out.print(st + " ");
}
ay.add(0, "C");ay.add(1, "B");//恢复
ay.clear();//清空void
System.out.println("\nclear清空后:");
for (String st : ay) {
System.out.print(st + " ");
}
}
3. 改:set( )
public static void main(String[] args) {
// String类型集合1
ArrayList<String> ay = new ArrayList<String>();
// 增加元素
ay.add("C");
ay.add("B");
ay.add("A");
// 遍历集合1元素
System.out.print("原始元素:");
for (String st : ay) {
System.out.print(st + " ");
}
ay.set(0, "A");// 0下标元素改为A
// 遍历集合1元素
System.out.print("\n改后元素:");
for (String st : ay) {
System.out.print(st + " ");
}
}
4. 查找 :(int )ay.indexOf( Object o) 丨 ay.lastIndexOf( Object o)丨(boolean)contains(Object O);
public static void main(String[] args) {
// String类型集合1
ArrayList<String> ay = new ArrayList<String>();
// 增加元素
ay.add("A");
ay.add("B");
ay.add("A");
// 遍历集合1元素
System.out.print("原始元素:");
for (String st : ay) {
System.out.print(st + " ");
}
boolean s=ay.contains("B")// 返回真假
int x=ay.indexOf("A");// 首次出现位置
int x1=ay.lastIndexOf("A");// 逆序首次出现位置
System.out.println("\n首次出现:"+x+" 倒序首次出现位置:"+x1);
}
其它 (int).size() 元素个数 丨(Object).toArray() 转换成数组
public static void main(String[] args) {
ArrayList<Object> ay = new ArrayList<Object>();
ay.add("B");
ay.add(0, "A");
Object[] st = ay.toArray();
// 强转接收
for (int i = 0; i < st.length; i++) {
String str = (String) st[i];
System.out.println(str);
}
// 集合大小和集合非强转接收
String[] st2 = ay.toArray(new String[ay.size()]);
for (String sst : st2) {
System.out.println(sst);
}
}