java构造函数以及遍历地图的4种方法
java构造函数以及遍历map的4种方法
以下代码记录了java的构造函数的使用,以及遍历map的4种方法,本人通常使用第四种方法。
package map; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; public class ErgodicMap { Map<String,Integer> map = new HashMap<String, Integer>(); /** * 定义构造方法,构造方法的特点如下: (1)构造方法的方法名必须与类名相同。 (2)构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。 (3)构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。 (4)构造方法不能由编程人员调用,而要系统调用。 (5)一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行任何代码。 (6)构造方法可以重载,以参数的个数,类型,或排列顺序区分。 */ public ErgodicMap(){ map.put("a", 1); map.put("b", 2); map.put("c", 3); map.put("d", 4); } /** * 遍历方法1 */ public void method1(){ System.out.println("遍历Map的方法一:HashMap的entrySet()方法遍历"); Iterator<Entry<String, Integer>> iterator = map.entrySet().iterator(); while(iterator.hasNext()){ Map.Entry<String, Integer> entry = (Entry<String, Integer>) iterator.next(); String key = entry.getKey(); int value = entry.getValue(); System.out.println("========Key======"+key + "========Value====="+value); } } /** * 遍历方法2 */ public void method2(){ System.out.println("遍历Map的方法二:利用foreach循环遍历"); for(Map.Entry<String, Integer> entry:map.entrySet()){ String key = entry.getKey(); int value = entry.getValue(); System.out.println("========Key======"+key + "========Value====="+value); } } /** * 遍历方法3 */ public void method3(){ System.out.println("遍历Map的方法三:使用HashMap的keySet()方法遍历"); //遍历Map中的key for(Iterator<String> i = map.keySet().iterator(); i.hasNext();){ String key = i.next(); //循环输出key System.out.println("========Key======"+key); //输出key和value System.out.println("========Key======"+key + "=======Value======="+map.get(key)); } //遍历Map中的value for(Iterator<Integer> i = map.values().iterator(); i.hasNext();){ int value = i.next(); //循环输出value System.out.println("=======Value======="+value); } } /** * 遍历方法4(通常使用的方法) */ public void method4(){ System.out.println("遍历Map的方法四:使用Tree的keySet()方法遍历"); for(String key:map.keySet()){ System.out.println("========Key======"+key + "=======Value======="+map.get(key)); } } public static void main(String[] args) { ErgodicMap ergodicMap = new ErgodicMap(); //ergodicMap.method1(); //ergodicMap.method2(); //ergodicMap.method3(); ergodicMap.method4(); } }