import java.util.ArrayList;
import java.util.Arrays;
/*LinkedList
* List
* Set/HashSet
* Map/HashMap
*
* ArrayList;可以保存任意的对象,不用指定保存元素的数量,对象保存的ArrayList会自动转化为Object类型
* 取出时会强制类型转化,并有一些常用方法,Set(index,obj),add(obj),size(),get(index)*/
public class TestLinkedList {
public static void main(String []args){
ArrayList list=new ArrayList();
list.add(new Person("小乔"));
list.add(new Person("大乔"));
//Person person=new Person("小乔");
Person person=new Person("西施");
//contains(obj)该list中是否包含obj对象,会自动调用obj中的equals方法
System.out.println(list.contains(person));
/*删除集合中的元素
//System.out.println(list.contains(person));
//System.out.println("删除是否成功"+list.remove(person));
//Person person2=(Person)list.remove(1);
//System.out.println(person2.name);
System.out.println(list);
//清空集合中的所有元素
list.clear();
System.out.println(list);
//System.out.println(Arrays.deepToString(list));
//判断list中元素是否为空
System.out.println(list.isEmpty());
ArrayList list2=null;
System.out.println(list2.isEmpty());
*/
Person person2=new Person("杨幂");
list.add(person2);
System.out.println(list);
System.out.println(list.indexOf(person2));
Object[] objs=list.toArray();
System.out.println(Arrays.toString(objs));
}
}
class Person{
String name;
public Person(String name){
this.name=name;
}
public boolean equals(Object obj) {
if(obj==null){
return false;
}
if(this==obj){
return true;
}
if(obj instanceof Person){
Person person=(Person)obj;
return this.name.equals(person.name);
}
return false;
}
public int hashCode() {
return this.name.charAt(0);
}
public String toString() {
return name;
}
}