在Set集合中contains()方法是判断Set集合是否包含指定的元素,
如果包含返回true,否则返回false。
先创建一个类
package com.test;
public class Student {
public String m_name;
public int m_id;
public Student(int id,String name){
this.m_name= name;
this.m_id = id;
}
public Student(){
}
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((m_name == null) ? 0 : m_name.hashCode());
return result;
}
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (!(obj instanceof Student))
return false;
Student other = (Student) obj;
if (m_name == null) {
if (other.m_name != null)
return false;
} else if (!m_name.equals(other.m_name))
return false;
return true;
}
}
contains(Object obj)
判断Set集合中是否包含指定的元素
public void TestContains(){
Scanner input = new Scanner(System.in);
System.out.println("please input the student name");
String name = input.next();
Student student = new Student();
student.m_name = name;
System.out.println("Students need to judge the name is:"+name);
System.out.println("whether in the student list"+student.m_name+":"+set_student.contains(student));<span style="white-space:pre"> </span>//call contains method
}
containsAll(Collection<?> c)判断Set集合中是否包含指定的的多个元素
public void TestContainsAll(){
Scanner input = new Scanner(System.in);
System.out.println("please input students name:");
String name1 = input.next();
String name2 = input.next();
Student[] student1 = {new Student(),new Student()};
student1[0].m_name = name1;
student1[1].m_name = name2;
System.out.println("Students need to judge the name is:"+name1+" and "+name2);
System.out.println("whether in students list:"+student1[0].m_name+" and "
<span style="white-space:pre"> </span> +student1[1].m_name+": "+set_student.containsAll(Arrays.asList(student1)));
}在main()方法中调用
public class Test {
public Set<Student> set_student;
public Test(){
this.set_student= new HashSet<Student>();
}
public void TestAdd(){
Student stu = new Student(1,"小明");
set_student.add(stu);
Student stu1= new Student(2,"小李");
set_student.add(stu1);
Student[] stu2= {new Student(3,"小陈"),new Student(4,"小周")};
set_student.addAll(Arrays.asList(stu2));
Student[] stu3= {new Student(5,"小吴"),new Student(6,"小张")};
set_student.addAll(Arrays.asList(stu3));
}
public void TestContains(){
Scanner input = new Scanner(System.in);
System.out.println("please input the student name");
String name = input.next();
Student student = new Student();
student.m_name = name;
System.out.println("Students need to judge the name is:"+name);
System.out.println("whether in the student list"+student.m_name+":"+set_student.contains(student));
}
public void TestContainsAll(){
Scanner input = new Scanner(System.in);
System.out.println("please input students name:");
String name1 = input.next();
String name2 = input.next();
Student[] student1 = {new Student(),new Student()};
student1[0].m_name = name1;
student1[1].m_name = name2;
System.out.println("Students need to judge the name is:"+name1+" and "+name2);
System.out.println("whether in students list:"+student1[0].m_name+" and "
+student1[1].m_name+": "+set_student.containsAll(Arrays.asList(student1)));
}
public void TestIterator(){
Iterator<Student> it = set_student.iterator();
while(it.hasNext()){
Student stu = it.next();
System.out.println("student: "+stu.m_id+":"+stu.m_name);
}
System.out.println();
}
public static void main(String[] args) {
Test test = new Test();
test.TestAdd();
test.TestIterator();
test.TestContains();
test.TestContainsAll();
}
}

614

被折叠的 条评论
为什么被折叠?



