import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
@SuppressWarnings("all")
/*ArrayList:插入花费时间为424毫秒
ArrayList:查询花费时间为1毫秒
LinkedList:插入花费时间为17毫秒
LinkedList:查询花费时间为13713毫秒*/
public class ArrayListAndLinkedList {
public static void main(String[] args) {
//多少个数据
final int NUM = 100000;
List list;
//list = new ArrayList();
list = new LinkedList();
long start = System.currentTimeMillis();
for (int i = 0; i < NUM; i++) {
list.add(0,"hello"+ i);
}
long end = System.currentTimeMillis();
System.out.println(list.getClass().getSimpleName()+":"
+"插入花费时间为"+ (end-start)+"毫秒");
System.out.println("------------------");
long start1 = System.currentTimeMillis();
for (int i = 0; i < list.size(); i++) {
list.get(i);
}
long end1 = System.currentTimeMillis();
System.out.println(list.getClass().getSimpleName()+":"
+"查询花费时间为"+ (end1-start1)+"毫秒");
}
}
hashSet
import java.util.HashSet;
import java.util.Set;
@SuppressWarnings("all")
public class HashSetTest {
public static void main(String[] args) {
Set set = new HashSet();
Student student1 = new Student("wzh",18);
Student student2 = new Student("wzh",16);
Student student3 = new Student("wwd",20);
Student student4 = new Student("lhy",19);
set.add(student1);
set.add(student2);
set.add(student3);
set.add(student4);
for (Object object : set) {
System.out.println(object);
System.out.println(object.hashCode());
}
}
}
ArrayList遍历
import java.util.List;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
@SuppressWarnings("all")
public class ListTest {
public static void main(String[] args) {
List list = new ArrayList();
//添加元素
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
//遍历集合的方式1:foreach循环
for (Object o:list) {
System.out.println(o);
}
System.out.println();
//遍历集合的方式2:迭代器:tor----抽象工具(判断有没有下一个值)
//拿到下一个值
//able--能够产生 迭代器对象 iterator();
//Collection extends able--- 每一个collection对应的子接口
//实现类都拥有自己的迭代器对象 ArrayList
//HashSet
Iterator iterator = list.iterator();
while(iterator.hasNext()) {
System.out.println(iterator.next());
}
System.out.println();
//遍历集合的方式3:Arrays
System.out.println(Arrays.toString(list.toArray()));
System.out.println();
//遍历集合的方式4:for循环
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}
}
hashSet
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
@SuppressWarnings("all")
public class SetList {
public static void main(String[] args) {
//添加元素
Set set = new HashSet();
set.add("hello1");
set.add("hello2");
set.add("hello3");
set.add("hello4");
for(Object o:set) {
System.out.println(o);
}
Iterator iterator = set.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
System.out.println(Arrays.toString(set.toArray()));
}
}
equals和comparaTo重写
import java.util.Objects;
//implements Comparable
public class Student implements Comparable{
String name;
int age;
public Student(String name,int age) {
this.name = name;
this.age = age;
}
public Student() {
}
@Override
public String toString() {
// TODO Auto-generated method stub
return "Student [name=" + name + ",age ="+ age +"]";
}
@Override
public int hashCode() {
// TODO Auto-generated method stub
return Objects.hash(name,age);
}
@Override
public boolean equals(Object obj) {
// TODO Auto-generated method stub
if (obj == null) {
return false;
}
Student student = (Student)obj;
if (obj instanceof Student) {
if (this.name.equals(student.name)&& this.age==student.age) {
return true;
}
return true;
}
return false;
}
@Override
public int compareTo(Object o) {
Student s =(Student)o;
return this.age - s.age;
}
}
comparator重写
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
@SuppressWarnings("all")
public class TreeSetTest {
public static void main(String[] args) {
/*Comparator comparator = new Comparator() {
@Override
public int compare(Object o1, Object o2) {
// TODO Auto-generated method stub
return (((Student)o1).age - ((Student)o2).age);
}
};*/
//(comparator)
Set set = new TreeSet();
/*set.add(1);//Integer进行了排序
set.add(8);
set.add(5);
for (Object object : set) {
System.out.println(object);
}*/
Student student1 = new Student("wzh",18);
Student student2 = new Student("wzh",22);
Student student3 = new Student("wwd",28);
Student student4 = new Student("lhy",30);
set.add(student1);
set.add(student2);
set.add(student3);
set.add(student4);
for (Object object : set) {
System.out.println(object);
//System.out.println(object.hashCode());
}
}
}