常用集合类型: List<列表> Set<集> Map<映射> Iterator(迭代器):对集合进行遍历
List和Set都是继承Collection接口的
关于Collection接口的代码:
package JiHe;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class jihe {
public static void main(String[] args) {
Collection <String>list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
//创建迭代器
Iterator<String> is = list.iterator();
while(is.hasNext()){//判断是否有下个元素
String s = (String)is.next();
System.out.println("迭代器遍历如下:"+s);
}
}
}
List:有序可重复的
(1)arrayList
List<String>list = new ArrayList<String>();
(2)LinkedList
List<String>list = new LinkedList<String>();
Set:无序不可重复的
(1)hashSet
Set<String>string = new HashSet<String>();
(2)TreeSet
实际操作要继承一个Comparable接口,该接口中的compareTo(Object o)方法比较此对象的顺序
也可以有序的对数据进行操作
我们如果使用Set的话,可以利用HashSet来实例化接口,再用TreeSet来对数据进行处理。
Map(键值对):
Map接口中提供了集合的常用方法:put(K key,V value) 赋值
containsKey(Object key)
containsValue(Object value)
get(Object key)
keySet()返回该集合中的所有集合key对象形成的Set集合
values()返回该集合中所有值对象形成的Collection接口
示例代码:
package JiHe;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class UpdateStu1 {
public static void main(String[] args) {
Map<String,String> map = new HashMap<>();
map.put("01", "李同学");
map.put("02", "魏同学");
Set<String> set = map.keySet();
Iterator<String> it = set.iterator();
System.out.println("key集合中的元素:");
while(it.hasNext()){
System.out.println(it.next());
}
Collection<String> coll = map.values();
it = coll.iterator();
System.out.println("values集合中的元素:");
while(it.hasNext()){
System.out.println(it.next());
}
}
}
(1)HashMap:是基于哈希表的Map接口的实现,HashMap通过哈希码对其内部映射关系进行快速查找,HashMap类实现的的Map集合添加和删除映射关系效率更高
(2)TreeMap:不仅实现了Map接口,还实现了java.util.SortedMap接口,因此,集合中的映射关系具有一定的顺序,但在添加,删除和定位映射关系时,TreeMap类比HashMap类性别稍差