Java EnumMap put()

put() 往EnumMap设置key和value值。

1 语法

public int size()  

2 参数

key:设置的key。

value:设置的value。

3 返回值

返回该key的旧值。

  • 如果EnumMap已经包含该key的值,则返回旧值。
  • 如果指定key没有value值,则此方法返回null。

4 EnumMap put()示例1

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java EnumMap.put的例子
 */
import java.util.*;

public class Demo {

    //创建枚举
    public enum Tutorial {
        Java, Python, PHP, Android, Javascript
    };
    public static void main(String[] args) {
        EnumMap< Tutorial, String> map =
                new EnumMap< Tutorial, String>( Tutorial.class);

        map.put(Tutorial.Java, "1");
        map.put(Tutorial.Python, "2");
        map.put(Tutorial.PHP, "3");
        map.put(Tutorial.Android, "4");
        //输出Map
        System.out.println("Map: "+map);
        String oldValue1 = map.put(Tutorial.Javascript, "5");
        String oldValue2 = map.put(Tutorial.Java, "20");
        //输出更新后的Map
        System.out.println("更新后的Map: " + map);
        System.out.println("第1次更新的返回值: "+oldValue1);
        System.out.println("第2次更新的返回值: "+oldValue2);
    }
}

输出结果为:

Map: {Java=1, Python=2, PHP=3, Android=4}
更新后的Map: {Java=20, Python=2, PHP=3, Android=4, Javascript=5}
第1次更新的返回值: null
第2次更新的返回值: 1

5 EnumMap put()示例2

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java EnumMap.put的例子
 */
import java.util.*;

public class Demo {

    // create an enum
    public enum Months {
        January, February, March, April, May
    };
    public static void main(String[] args) {
        //创建EnumMap
        EnumMap< Months, String> map =
                new EnumMap< Months, String> (Months.class);

        map.put(Months.January,"1");
        map.put(Months.February,"2");
        map.put(Months.March,"3");
        map.put(Months.April,"4");
        //输出Map
        System.out.println("Map: "+map);
        String oldValue1 = map.put(Months.May, "5");
        String oldValue2 = map.put(Months.March, "15");
        //print the updated map
        System.out.println("更新后的Map: "+map);
        System.out.println("第1次更新的返回值: "+oldValue1);
        System.out.println("第2次更新的返回值: "+oldValue2);
    }
}

输出结果为:

Map: {January=1, February=2, March=3, April=4}
更新后的Map: {January=1, February=2, March=15, April=4, May=5}
第1次更新的返回值: null
第2次更新的返回值: 3

6 EnumMap put()示例3 

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * Java EnumMap.put的例子
 */
import java.util.*;

public class Demo {

    //创建枚举
    public enum Days {
        Monday,Tuesday, Wednesday, Thursday
    };
    public static void main(String[] args) {
        EnumMap<Days, String>  map = new EnumMap<Days, String> (Days.class);

        map.put(Days.Monday, "1");
        map.put(Days.Tuesday, "2");
        map.put(Days.Wednesday, "3");
        //输出Map
        System.out.println("Map: "+map);
        String oldValue1 = map.put(Days.Thursday, "4");
        String oldValue2 = map.put(null, "9");
        //输出更新的Map
        System.out.println("更新后的Map: " + map);
        System.out.println("第1次更新的返回值: "+oldValue1);
        System.out.println("第2次更新的返回值: "+oldValue2);
    }
}

输出结果为:

Map: {Monday=1, Tuesday=2, Wednesday=3}
Exception in thread "main" java.lang.NullPointerException
	at java.util.EnumMap.typeCheck(EnumMap.java:741)
	at java.util.EnumMap.put(EnumMap.java:267)
	at com.yiidian.Demo.main(Demo.java:26)

 

热门文章

优秀文章