集合框架浅谈

   所有集合类都位于java.util包中,集合中只能保存对象。Java中的集合类主要由  Collection和Map派生而出。Collection和Map

是Java集合框架的根接口。这两个接口又包含了一些接口类或实现类。
   集合数组中的set 和 list  存放数据有区别,set 存储无重复,无下标,无序的对象,而 list 存储可重复,有下标,有序的

对象。
     set 拥有hashset 和 treeset 。
package z.lianxi;

import java.util.HashSet;
import java.util.Iterator;
import java.util.NavigableSet;
import java.util.TreeSet;

public class SetDemo {
public static void main(String[] args)
{
// hashSetDemo();
treeSetDemo();
}
public static void hashSetDemo()
{
HashSet<String> set = new HashSet<String>();

for(int i = 0;i<10;i++){
String str = "数据"+i;
set.add(str);
}

// Iterator<String> iterator = set.iterator();
// while(iterator.hasNext())
// {
// String s = iterator.next();
// System.out.println(s);
// }
for(String s:set)
{
System.out.println(s);
}
}
public static void treeSetDemo()
{
TreeSet<Integer> tree = new TreeSet<Integer>();

for(int i = 0;i<10;i++){
tree.add(i);
}

NavigableSet<Integer> set = tree.descendingSet();

// for(int t:set)
// {
// System.out.println(t);
// }
while(!tree.isEmpty())
{
int t = tree.pollFirst();
System.out.println(t);
}

}

}
list      动态数组

package z.lianxi;

import java.util.ArrayList;

public class ListDemo {

public static void main(String[] args) {

ArrayList<String> list = new ArrayList<String>();

for(int i=0;i<10;i++){
String s="元素"+i;
list.add(s);
}

list.add("元素0");

for(int i=0;i<list.size();i++){
String s = list.get(i);
System.out.println(s);
}

}


}

  Map有两个属性,一个是映射,一个是键值对。键值对就如一个set ,不可重复,无序。映射可以重复,每一个键值对

仅与一个映射相互对应。
  如果传入一个相同的key,那么就会替换当前的value。
  Map也有HashMap和TreeMap两种。
  HashMap 的实例有两个参数影响其性能:初始容量 和加载因子。初始值分别为16和0.75。也可以在构造函数中自定义

两个参数。
package z.lianxi;

import java.util.HashMap;
import java.util.Map;
import java.util.Set;

public class MapDemo {
public static void main(String[] args){
HashMap<Integer,String> map = new HashMap<Integer,String>();

map.put(101," 01");
map.put(102," 02");
map.put(103," 03");
map.put(111," 04");

//遍历方法一
Set<Map.Entry<Integer,String>> set = map.entrySet();

for(Map.Entry<Integer, String> entry:set)
{
int key = entry.getKey();
String value = entry.getValue();
System.out.println(key+"   "+value);

}
//遍历方法二
Set<Integer> s = map.keySet();

for(int key: s)
{
String value = map.get(key);
System.out.println(key+"   "+value);
}
}

}


猜你喜欢

转载自2548540761.iteye.com/blog/2156586
今日推荐