有关集合类和泛型结合-
ArrayList 和 Iterator
package cn.edu.bupt;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class ArrayListTest {
public static void main(String[] args) {
//List和ArrayList是泛型
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
for(String e: list) {
System.out.println(e);
}
//Iterator变成泛型
for(Iterator<String> itr = list.iterator();itr.hasNext();) {
String value = itr.next();
System.out.println(value);
}
}
}
HashSet和Iterator
package cn.edu.bupt1;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class SetTest {
public static void main(String[] args) {
Set<String> set = new HashSet<String>();
set.add("aa");
set.add("bb");
set.add("cc");
for(Iterator<String> itr = set.iterator(); itr.hasNext();) {
String value = itr.next();
System.out.println(value);
}
System.out.println("----------------------");
Set<Person> set1 = new HashSet<Person>();
set1.add(new Person("zhangsan", 20, "beijing"));
set1.add(new Person("lisi", 30, "shanghai"));
set1.add(new Person("wangwu", 40, "nanjing"));
for(Person p: set1) {
System.out.println(p.getName());
System.out.println(p.getAge());
System.out.println(p.getAddress());
}
}
}
class Person {
private String name;
private int age;
private String address;
public Person(String name, int age, String address) {
super();
this.name = name;
this.age = age;
this.address = address;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((address == null) ? 0 : address.hashCode());
result = prime * result + age;
result = prime * result + ((name == null) ? 0 : name.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Person other = (Person) obj;
if (address == null) {
if (other.address != null)
return false;
} else if (!address.equals(other.address))
return false;
if (age != other.age)
return false;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
return true;
}
//setter and getter
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
Map与Iterator
package cn.edu.bupt;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
public class MapTest {
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("a", "aa");
map.put("b", "bb");
map.put("c", "cc");
//first method of getting the value in map using Set
Set<String> keys = map.keySet();
for(String str: keys) {
System.out.println(map.get(str));
}
//second method of getting the value in map using Map.Entry<K, V>
Set<Map.Entry<String, String>> entrySet = map.entrySet();
for(Map.Entry<String, String> entry: entrySet) {
System.out.println(entry.getKey() + "=>" + entry.getValue());
}
}
}
浙公网安备 33010602011771号