package text;
import java.util.*;
import javax.swing.text.html.HTMLDocument.Iterator;
public class t20151016s {
public static void main(String[] args) {
//ArrayList 内容不是事先设定好的,可以随时向里面添加内容
List<String> al = new ArrayList<>(); //将ArrayList向上转换给List
al.add("abc");
System.out.println("集合大小 = "+ al.size());
al.add("def");
System.out.println("集合大小 = "+ al.size());
System.out.println("集合内容 = "+ al.get(1));
for(int i = 0;i < 10;i++)
{
al.add(String.format("%s", (Math.random() * 1000))); //String.format 格式化 %s 字符串类型 Math.random 0-1的随机数
}
System.out.println();
for(int i = 0;i < al.size();i++)
{
System.out.println("集合内容是:" + al.get(i));
}
al.clear(); //清除所有
System.out.println("是否为空:"+ al.isEmpty()); // .isEmpty 判断是否为空 返回一个布尔值 所有的 .is 都是返回布尔值
/*
al.size(); //size 容量
al.get(0); //get 传输的是索引值
al.remove(0); //移除索引为0的项
al.set(0, "新的值"); //替换 将索引为0的量替换为 "新的值" 这个值
al.clear(); //清除所有
al.add(8,"add"); //从索引值为8的位置开始插入一个量,原来的量依次后移
*/
}
}
package text;
import java.util.*;
public class t20151016x {
public static void main(String[] args) {
//LinkedList
LinkedList<String> ll = new LinkedList<>();
for(int i = 10;i > 0;i--)
{
ll.add("" + i);
//ll.add(String.format("%s", (Math.random() * 1000))); //String.format 格式化 %s 字符串类型 Math.random 0-1的随机数
}
ll.add("10"); //List 中数值可以重复。 Set 中不可重复
for(int i = 0;i < ll.size();i++)
{
System.out.println("集合内容是:" + ll.get(i));
}
//Set
HashSet<String> hs = new HashSet<>();
hs.add("abc");
hs.add("");
for(int i = 20; i > 0;i--)
{
hs.add("" + i);
//ll.add(String.format("%s", (Math.random() * 1000)));
}
//迭代器
Iterator<String> ls = hs.iterator();
while(ls.hasNext())
{
System.out.println("迭代 = "+ls.next());
}
TreeSet<String> ts = new TreeSet<>();
for(int i = 0;i < 20;i++)
{
ts.add("" + i);
//ll.add(String.format("%s", (Math.random() * 1000))); //String.format 格式化 %s 字符串类型 Math.random 0-1的随机数
}
System.out.println("first = "+ ts.first()+" last = "+ ts.last());
Iterator<String> is = ts.iterator();
while(is.hasNext())
{
System.out.println("treeSet = "+is.next());
}
for(String s : ts)
{
System.out.println("foreach = " + s);
}
//哈希Map
HashMap<String,String> hm = new HashMap<>();//<String,String> <键 , 值>
//键必须不同,值可以相同!
hm.put("255000", "淄博");
hm.put("234000", "济南");
hm.put("11000", "北京");
hm.put(null, null); //空值也是可以存储的
System.out.println("size = "+hm.size());//检测放入的数值的长度
//hm.remove("11000");//移除键值对
System.out.println("255000对应城市为:"+hm.get("255000"));//取出对应键值对
System.out.println("是否包含 :"+hm.containsKey("23232"));//自动查找是否有23232 这个键
System.out.println("是否包含 :"+hm.containsValue("北京"));//自动查找是否有 北京 这个值
//先取出key的集合,通过遍历key的集合来遍历map
Set<String> ss = hm.keySet();
for(String s: ss)
{
System.out.println("key = "+s+",value ="+hm.get(s));
}
Collection<String> c = hm.values();
for(String s:c)
{
System.out.println("value =" + s);
}
//此时不能使用foreach,只能使用迭代器
TreeMap<String,String> tm = new TreeMap<>();
tm.put("255000", "淄博");
tm.put("234000", "济南");
tm.put("110000", "北京");
//tm.put(null, null);//空值不可以存储,会直接报错
System.out.println("firstkey = " + tm.firstKey());//取最小键
System.out.println("firstEntry = " + tm.firstEntry());//取最小键值对
System.out.println("ceilingKey = " + tm.ceilingKey(""));//没有找到,返回空, 如果匹配,返回一个最相近的上限的值
//按键排序后,输出值
Set<String> ks = tm.keySet();
for(String s : ks)
{
System.out.println("key = "+s+",value = "+tm.get(s));
}
}
}
![]()