第十四天
1,集合
2,框架
Collection(接口) Map(接口)
List(接口) Set(接口) TreeMap HashTable HashMap
ArrayList LinkedList TreeSet HashSet
Stack Queue
3,ArrayList应用与底层实现
4,排序(3)
MyADT |
public class MyADT { private int[] arr; private int size;
public MyADT(){ arr = new int[10]; size = 0; } public MyADT(int len){ arr = new int[len]; size = 0; }
public void add(int i){ if(size == arr.length){ int[] temp = arr; arr = new int[arr.length+10]; for(int k = 0;k<temp.length;k++){ arr[k] = temp[k]; } temp = null; } arr[size++] = i;
} public void delete(int index){ for(int i=index+1;i<size;i++){ arr[i-1] = arr[i]; } size--; } public void update(int index,int a){ arr[index] = a; }
public int size(){ return size; } public void showArr(){ for(int i=0;i<size;i++){ System.out.print(arr[i]+" "); } }
}
|
Person |
public class Person { }
|
|
Student |
public class Student{ private String name; private int score; private int age;
public Student(String name, int score, int age) { this.name = name; this.score = score; this.age = age; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public int getScore() { return score; }
public void setScore(int score) { this.score = score; }
public int getAge() { return age; }
public void setAge(int age) { this.age = age; }
/* @Override public int compareTo(Object o) { Student s = (Student)o; if(this.age>s.age){ return -1; }else if(this.score<s.score){ return 1; } return 0; } */ @Override public String toString() { return "Student{" + "name='" + name + '\'' + ", score=" + score + ", age=" + age + '}'; } }
|
|
MySort implements Comparator |
import java.util.Comparator;
public class MySort implements Comparator { @Override public int compare(Object o1, Object o2) { Student s1 = (Student)o1; Student s2 = (Student)o2; if(s1.getScore()>s2.getScore()){ return -1; }else if(s1.getScore()<s2.getScore()){ return 1; } return 0; } }
|
|
Test |
import java.util.*;
public class Test { public static void main(String[] args){ /*MyADT mt = new MyADT(3); mt.add(1); mt.add(2); mt.add(3); mt.add(4); mt.showArr(); System.out.println(); System.out.println(mt.size());*/ // ArrayList a = new ArrayList(10); // a.add(1); // a.add(2); // a.add(3); // a.add(4); // a.trimToSize(); // System.out.println(a.size()); // System.out.println(a.isEmpty()); // System.out.println(a.contains(5)); // System.out.println(a.indexOf(3)); // System.out.println(a.get(2)); // a.add(2,5); // System.out.println(a.get(2)); // System.out.println(a.get(3)); // a.remove(2); // System.out.println(a.get(2)); // a.remove(new Integer(2)); // System.out.println(a.get(2)); // a.set(1,89); // System.out.println(a.get(1));
/* List a = new ArrayList(); a.add("aqwe"); a.add("b"); a.add("c"); a.add("d"); List b = new ArrayList(a); System.out.println(a.get(0).hashCode()); System.out.println(b.get(0).hashCode()); a.addAll(b); System.out.println(a.size());*/
/* List a = new ArrayList(); a.add(5); a.add(8); a.add(2); a.add(6); a.add(1); Collections.sort(a); for (Object i:a) { System.out.print(i+" "); }*/ List a = new ArrayList(); a.add(new Student("aqiu",98,30)); a.add(new Student("zhangsan",62,65)); a.add(new Student("lisi",85,24)); a.add(new Student("wangwu",73,18));
// Collections.sort(a); Collections.sort(a,new MySort()); for (Object i:a) { System.out.print(i+" "); } } }
|