一、日期格式化操作類:SimpleDateFormat
● 構(gòu)造方法:public SimpleDateFormat(String pattern)
● 將日期格式化為字符串:public final String format(Date date)
● 將字符串格式化為日期:public Date parse(String source)
//將日期變?yōu)樽址憾郑袷交@示
Date date = new Date(); // 當(dāng)前日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
String str = sdf.format(date); // 將日期格式化為字符串
//將字符串變?yōu)槿掌?String str = "1980-09-19 12:12:12.122";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
Date date = sdf.parse(str);
二把敢、比較器
● comparator 是一個(gè)外比較器,適用于對(duì)象不支持自身比較的類谅辣,定義一個(gè)類實(shí)現(xiàn)comparator接口修赞,覆寫compara方法,對(duì)象比較的話可以使用comparaTo()方法桑阶。
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
class Person {
private String name ;
private int age ;
//省略set,get方法
public Person(String name,int age) {
this.name = name ;
this.age = age ;
}
@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + "]\n";
}
}
class testComparatorMethod implements Comparator<Person>{
@Override
public int compare(Person o1, Person o2) {
int num = o1.getName().compareTo(o2.getName());
if (num != 0){
return num;
}
int numage = o1.getAge() - o2.getAge();
return numage;
}
}
public class testComparator {
public static void main(String[] args) throws Exception {
ArrayList<Person> list = new ArrayList<Person>();
Person per1 = new Person("aaa",25);
Person per2 = new Person("bbb",21);
Person per3 = new Person("ccc",27);
Person per4 = new Person("ddd",23);
list.add(per3);
list.add(per2);
list.add(per4);
list.add(per1);
Collections.sort(list, new testComparatorMethod());
Iterator<Person> iter = list.iterator();
while(iter.hasNext()){
System.out.println(iter.next());
}
}
}
● comparable:內(nèi)比較器柏副,用于在類內(nèi)部進(jìn)行比較
實(shí)例:
public class TestComparable {
public static void main(String[] args) {
Person2 per = new Person2("aaa");
Person2 per1 = new Person2("bbb");
System.out.println(per.compareTo(per1));
}
}
class Person2 implements Comparable<Person2> {
private String name;
public String getName() {
return name;
}
public Person2(String name) {
this.name = name;
}
@Override
public int compareTo(Person2 per) {
if (this.name.compareTo(per.name) > 0)
return 1;
else if (this.name.compareTo(per.name) == 0)
return 0;
else
return -1;
}
}