您的位置:首页 > 其它

List的使用方法

2015-08-16 07:59 267 查看
List 的基本概述(非原创):

      有序的collection (也称为序列)。此接口的用户可以对列表中每个元素的插入位置进行精确的控制。

      用户可以更具元素的整数索引(在列表中的位置) 访问元素,并搜索列表中的元素。

       与set不同,列表通常允许重复的元素



(图片来自网络)

List 的基本功能

   boolean  
add(E e)                  向列表的尾部添加指定的元素


 
void add(int index, E elemnt)                   向指定位置插入指定元素

  void clear()                                             从列表中移除所有元素

 boolean contains(object o )                        如果列表包含指定元素,返回ture

  E get(int index)                            返回列表中指定位置的元素

 boolean isEmpty()                       如果列表不包含元素,则返回 true。

 Iterator iterator()                        返回按适当顺序在列表的元素上进行迭代的迭代器。

 E remove(int index)                     移除列表中指定位置的元素(可选操作)。

 boolean remove(Object o)                        从此列表中移除第一次出现的指定元素(如果存在)(可选操作)。

 E set(int index, E element)                       用指定元素替换列表中指定位置的元素(可选操作)。

 int size()                              返回列表中的元素个数

 Object toArray()                          返回按适当顺序包含列表中的所有元素的数组(从第一个元素到最后一个元素)。

样例一:  存储字符串并遍历

package com.hs.ArrayListText;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

// 字符串操作
public class ArrayListText01 {

public static void main(String[] args) {

Collection c = new ArrayList(); //cllection 是个接口
ArrayList a = new ArrayList();
c.add("hellow");
c.add("world");

a.add("hellow"); // 在直接add加入一个字符串时, 隐形 创建了一个Object类 (Object obj = "hellow")
a.add("JAVA");

System.out.println(c); //打印C集合的元素

c.remove("hellow"); //移除元素“hellow”
a.addAll(c); //添加一个集合的元素
// a.removeAll(c); //移除一个集合的元素

System.out.println(c); //打印C集合的元素
System.out.println(a); //打印a集合的元素

System.out.println();

Object[] o =a.toArray(); //将ArrayList集合转换为 数组类
for (Object object : o) {
String s = (String) object; //若想打印数组元素的长度, 需转换成字符串类型
System.out.println(s+"-----"+s.length());
}

System.out.println();
System.out.println();

Iterator it = a.iterator();
while(it.hasNext()){
String s = (String)it.next();
System.out.println(s+"-----"+s.length());
}

}

}

      样例二: 自定义对象存储并遍历
自定义类:

package com.hs.ArrayListText;

public class Student {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}

public Student(String name, int age) {
super();
this.name = name;
this.age = age;
}
public Student() {
super();
this.name = name;
this.age = age;
}
}


操作部分:
package com.hs.ArrayListText;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;

//自定义对象
public class ArrayListTest02 {

public static void main(String[] args) {
// TODO Auto-generated method stub
Collection c = new ArrayList();
//List list = new ArrayList();

Student s1 = new Student("张三",18);
Student s2 = new Student("李四",19);
Student s3 = new Student("王麻子",20);

c.add(s1);
c.add(s2);
c.add(s3);

// ArrayList的遍历
Object obj[] = c.toArray();
for (Object object : obj) {
Student s = (Student)object;
System.out.println(s.getName()+"--------"+s.getAge());
}
System.out.println();
System.out.println();
System.out.println();

Iterator it = c.iterator();

while(it.hasNext()){ // boolean hasNext() 的作用是判断是否还有下一个元素
Student s = (Student)it.next(); // 每使用一次 it.next(), 就访问一次对象,自增加一
System.out.println(s.getName()+"--------"+s.getAge());
}

// for循环写法的好处: 循环结束后自动释放 it
// for(Iterator it = c.iterator();it.hasNext();){
// Student s = (Student)it.next();
// System.out.println(s.getName()+"--------"+s.getAge());
// }

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: