程序代码:
package homework09.homework0926;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
/**
* Collection:
* List:有序集合,并且数据可重复(通过对象的equals方法进行判断)
* Set:无序集合,数据不可重复(通过对象的equals方法进行判断)
* @author Administrator
*
*/
public class Demo004 {
public static void main(String[] args) {
List list = new ArrayList();
list.add("one");
list.add("two");
list.add("three");
list.add("four");
//增加,在指定位置处增加新的元素
list.add(1,"9");
System.out.println(list);
//修改,根据下标进行修改
list.set(2, "6");
System.out.println(list);
//删除,根据下标进行删除
//将删除对象进行返回
Object object = list.remove(2);
System.out.println(object);
System.out.println(list);
//查询,根据下标获取指定位置处的对象
Object obj = list.get(0);
System.out.println(obj);
//对集合进行排序 对象排序,给定排序规则Comparator
list.sort(new StringComparator());
System.out.println(list);
}
}
class StringComparator implements Comparator{
/**
* 排序规则的方法
* 如果返回值==0则表示两个对象相等
* 如果返回值>0则表示前面的对象比后面的对象大
* 如果返回值<0则表示前面的对象比后面的对象小
*
* 按照字符串的长度排序,长的在后,短的在前
*/
@Override
public int compare(Object o1, Object o2) {
if(o1 instanceof String && o2 instanceof String){
String str1 = (String)o1;
String str2 = (String)o2;
return str1.length()-str2.length();
}
return 0;
}
}
代码运行结果: