java Set Map使用例子

package com.zhiru;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.Map.Entry;
import java.util.Set;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
public class MyCollection {

	/**
	 * @param args
	 */
	/*
	 * 一个关于HashSet的简单应用.
	 * 从输出结果可以看出HashSet中元素是无序的,至少是不是恒久不变的。
	 * 而LinkedHashSet中的元素是有序的。
	 * 两者元素都不可以重复.
	 * HashMap中key是不允许重复的,但值允许重复。
	 * 从HashMap的输出可以看出,它也是输出无序的.
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		/*
		 * 定义上转型Set对象
		 */
		Set<Integer> intSet=new HashSet<Integer>();
		Set<String>  strHashSet=new HashSet<String>();
		Set<String>  strSet=new LinkedHashSet<String>();
		//定义上转型Map对象。
		Map<String,Integer> map=new HashMap<String ,Integer>();
		
		for(int i=0;i<50;i++){
			intSet.add(i);//添加元素
			strSet.add(String.valueOf(i));
			strHashSet.add(String.valueOf(i));
			//put方法设置键值对
			map.put(String.valueOf(i), i+1);
		}
		/*
		 * 集合中使用迭代器遍历集合.
		 */
		Iterator<Integer> it1=intSet.iterator();
		Iterator<String> it2=strSet.iterator();
		Iterator<String> it3=strHashSet.iterator();
		Iterator hashMapIt=map.entrySet().iterator();
		while(it1.hasNext()){
			System.out.print(it1.next());
		}
		System.out.print("\n");
		while(it2.hasNext()){
			System.out.print(it2.next());
		}
		System.out.print("\n下面是String类型的HashSet的输出\n");
		while(it3.hasNext()){
			System.out.print(it3.next());
		}
		System.out.print("\n"+map+"\n");
		System.out.print(map.get("1"));
		System.out.print("\n使用高效率的遍历方式遍历HashMap\n");
		/*
		 *高效的遍历HashMap方法。
		 */
		while(hashMapIt.hasNext()){
			Map.Entry<String, Integer> e=(Map.Entry<String, Integer>) hashMapIt.next();
			String key=e.getKey();
			Integer val=e.getValue();
			System.out.print("\n"+key+"---"+val+"\n");
		}
	}

}

012345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
012345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
下面是String类型的HashSet的输出
444546474849101112131415161718190123456789202122232425262728293031323334353637383940414243
{44=45, 45=46, 46=47, 47=48, 48=49, 49=50, 10=11, 11=12, 12=13, 13=14, 14=15, 15=16, 16=17, 17=18, 18=19, 19=20, 0=1, 1=2, 2=3, 3=4, 4=5, 5=6, 6=7, 7=8, 8=9, 9=10, 20=21, 21=22, 22=23, 23=24, 24=25, 25=26, 26=27, 27=28, 28=29, 29=30, 30=31, 31=32, 32=33, 33=34, 34=35, 35=36, 36=37, 37=38, 38=39, 39=40, 40=41, 41=42, 42=43, 43=44}
2
使用高效率的遍历方式遍历HashMap


44---45


45---46


46---47


47---48


48---49


49---50


10---11


11---12


12---13


13---14


14---15


15---16


16---17


17---18


18---19


19---20


0---1


1---2


2---3


3---4


4---5


5---6


6---7


7---8


8---9


9---10


20---21


21---22


22---23


23---24


24---25


25---26


26---27


27---28


28---29


29---30


30---31


31---32


32---33


33---34


34---35


35---36


36---37


37---38


38---39


39---40


40---41


41---42


42---43


43---44
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值