- 1.Collection接口 遍历元素
- 2.重写equals方法,实现按内容判断相等性
- 3.创建list集合
- 4. 判断相等性
- 5.链表:1.查询效率低 2.添加删除效率高
package com.yzh7.test2;
import com.sun.corba.se.impl.ior.OldJIDLObjectKeyTemplate;
import java.util.ArrayList;
import java.util.Collection;
public class Test {
public static void main(String[] args) {
//创建Collection接口
Collection col = new ArrayList();
//存储数据
col.add("abc");
col.add(100);
col.add(1.7);
col.add(true);
System.out.println(col);
//遍历元素
for (Object obj : col){
System.out.println(obj);
}
col.remove("abc");
System.out.println(col);
}
}
2.重写equals方法,实现按内容判断相等性
package com.yzh7.test2;
import java.util.Objects;
public class Student {
private String name;
private String sex;
private int age;
public Student() {
}
public Student(String name, String sex, int age) {
this.name = name;
this.sex = sex;
this.age = age;
}
//重写equals方法,实现按内容判断相等性
@Override //s1.equals(s2)
public boolean equals(Object obj) {
System.out.println("=======调用了 student equals========:"+obj);
//1.判断地址是否相等
if(this==obj){
return true;
}
//2.判断目标类型和当前对象的类型是否一致
if (!(obj instanceof Student)){
//类型不一致,直接返回false
return false;
}
//3.做类型转换,比较内容
Student s = (Student) obj;
if(this.name.equals(s.name) && this.sex.equals(s.sex) && this.age==s.age){
return true;
}
return false;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + ''' +
", sex='" + sex + ''' +
", age=" + age +
'}';
}
}
3.创建list集合
1.数据有序 2.可以重复 3.有索引
package com.yzh7.test2;
import java.util.ArrayList;
import java.util.List;
public class Test2 {
public static void main(String[] args) {
//创建list集合
//1.数据有序 2.可以重复 3.有索引
List list = new ArrayList();
list.add("bbb");
list.add("aaa");
list.add("aaa");
list.add(123);
list.add(234.234);
list.add(true);
list.add(new Student("张三","男",20));
//打印输出
System.out.println(list);
//输出长度
System.out.println(list.size());
//输出下标为2的元素
System.out.println(list.get(2));
//根据数值删除数据
//list.remove("bbb");
//System.out.println(list);
//list.remove(234.234);
//System.out.println(list);
//传入整数时,默认按索引删除
//list.remove(new Integer(123));
//list.remove(Integer.valueOf(123));
//System.out.println(list);
//list.remove(new Student("张三","男",20));
//System.out.println(list);
//批量删除
// List list2 = new ArrayList();
// list2.add("bbb");
// list2.add("aaa");
// list2.add(Integer.valueOf(123));
// list.removeAll(list2);
// System.out.println(list);
//System.out.println(list.contains("xxx"));
//集合遍历
//方式1:索引遍历
for (int i=0;i
Object o = list.get(i);
System.out.println(o);
}
System.out.println("======================");
//方式2:for each
for(Object o : list){
System.out.println(o);
}
}
}
4. 判断相等性
package com.yzh7.test2;
public class Test3 {
public static void main(String[] args) {
String s1 = "abc";
String s2 = new String("abc");
//System.out.println(s1==s2);
//System.out.println(s1.equals(s2));
System.out.println("====================");
Student stu1 = new Student("张三","男",20);
Student stu2 = new Student("张三","男",21);
System.out.println(stu1==stu2);
System.out.println(stu1.equals(stu2));
}
}
5.链表:1.查询效率低 2.添加删除效率高
package com.yzh7.test3;
import java.util.LinkedList;
import java.util.List;
import java.util.Vector;
public class Test {
public static void main(String[] args) {
//链表:1.查询效率低 2.添加删除效率高
LinkedList list = new LinkedList();
list.add("aaa");
list.add("ccc");
list.add("ddd");
list.add(100);
list.add(300);
list.add(200);
System.out.println(list);
list.addFirst("xxxx"); //头部添加
list.addLast("yyyy"); //尾部添加
System.out.println(list);
list.add(3,"qqq");
System.out.println(list);
list.removeLast(); //删除尾部
list.removeFirst();//删除头部
System.out.println(list);
System.out.println("=================");
//Vector:多线程环境下安全,性能低。
//ArrayList:多线程环境下不安全,性能高
Vector vector = new Vector();
vector.add("sdfs");
vector.add("asdf");
vector.add(2423);
vector.add(true);
vector.add(null);
System.out.println(vector);
}
}
// An highlighted block var foo = 'bar';
// An highlighted block var foo = 'bar';
// An highlighted block var foo = 'bar';
// An highlighted block var foo = 'bar';
// An highlighted block var foo = 'bar';



