testhashset.java

来自「该文件在eclipse环境上运行」· Java 代码 · 共 68 行

JAVA
68
字号
package test.collection;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class TestHashSet {

	public static void main(String[] args) {
		Set set = new HashSet();
		set.add("tarena");
		set.add("beijing");
		set.add("china");
		System.out.println("集合大小:" 
				+ set.size());
		Iterator it = set.iterator();
		while(it.hasNext()){
			System.out.println(it.next());
		}
		
		set.clear();
		set.add(new Student("zhangsan", 21));
		set.add(new Student("lisi", 20));
		set.add(new Student("zhangsan", 21));
		set.add(new Student("wangwu", 21));
		set.add(new Student("zhaoliu", 22));
		System.out.println("集合大小:" 
				+ set.size());
		it = set.iterator();
		while(it.hasNext()){
			System.out.println(it.next());
		}
	}
}
class Student{
	String name;
	int age;
	public Student(String name, int age){
		this.age = age;
		this.name = name;
	}
	
	@Override
	public int hashCode() {
		System.out.print("hashCode()");
		return name.hashCode()+age;
	}

	@Override
	public boolean equals(Object obj) {
		System.out.print("equals()");
		if(obj==null) return false;
		if(this==obj) return true;
		if(!(obj instanceof Student)) return false;
		Student stu = (Student) obj;
		if(this.name.equals(stu.name)&& this.age==stu.age)
			return true;
		return false;
	}

	@Override
	public String toString() {
		return name + ", " + age;
	}
	
	
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?