一、日期类Date
大部分方法已过期,但仍可以使用,主要是用get方法获取年、月、日、时、分、秒、毫秒、日期等;使用set方法设置时间
Date date = new Date(); //实例化时便获取当前的时间
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
System.out.println(sdf.format(date));
注:SimpleDateFormat是java.text包下的类
二、日历类Calendar
此类不用实例化,通过
Calendar cal = Calendar.getInstance();
获取对象。
三、数据列表(顺序表)ArrayList<E>
1、实例化时可以使用泛型设置类型,若没有使用泛型默认为Object类型
2、逻辑结构与物理结构一致
3、方法包括增加、删除、改变、插入、替换、查找等
四、(双向)链表LinkedList<E>
1、逻辑结构与物理结构不一致,每个对象都能指向前后对象的位置
五、HashMap<k,v>
1、以键值对形式存储数据,没有顺序,通过键值查找
2、数据类型有泛型决定,也可不设置泛型,但返回为对象类型,处理数据时许强转
3、可通过keyset()方法转换成Set类型
六、Set-HashSet、TreeSet
1、HashSet与HashMap类似,但其只有数值;
2、存储同样没有顺序;
3、TreeSet数据结构是二叉树类型,可以使用比较器Comparator进行排序;
4、存储的数据不能重复;
七、迭代器、比较器
1、迭代器可以遍历ArrayList、LinkedList、HashMap、HashSet、TreeSet等集合类中的数据,如下:
treeSet.add(student4);
Iterator iterator = treeSet.iterator();
while (iterator.hasNext()) {
Student student = (Student) iterator.next();
System.out.println(student.getName() + ":" + student.getAge());
}
2、比较器Comparator是一个接口,使用方法有三种:
(1)创建一个类实现该接口,如下:
public class MyCompator implements Comparator{
@Override
public int compare(Object o1, Object o2) {
//
Student student1=(Student)o1;
Student student2=(Student)o2;
if(student1.getAge()>student2.getAge()){
return -1;
}else if(student1.getAge()<student2.getAge()){
return 1;
}else{
return 0;
}
}
}
(2)创建一个内部类,如下:
//内部类
private class MyCom implements Comparator {
@Override
public int compare(Object o1, Object o2) {
//
Student student1 = (Student) o1;
Student student2 = (Student) o2;
if (student1.getAge() > student2.getAge()) {
return -1;
} else if (student1.getAge() < student2.getAge()) {
return 1;
} else {
return 0;
}
}
}
(3)使用匿名类,如下:
TreeSet treeSet = new TreeSet(new Comparator() {
@Override
public int compare(Object o1, Object o2) {
//
Student student1 = (Student) o1;
Student student2 = (Student) o2;
if (student1.getAge() > student2.getAge()) {
return -1;
} else if (student1.getAge() < student2.getAge()) {
return 1;
} else {
return 0;
}
}
});