SummerVocation_Learning--java的自动打包与解包

 Auto Boxing: 自动将基础类型转换成对象(JDK1.5之后支持)

    Auto UnBoxing:自动将对象转换成基础类型

    如 Map中的put方法,如果要传入键值对<a,1>,<b,2>,要写成 m.put("a", new Integer(1)); m.put("b", new Integer(2));

但有了自动打包机制,则可以写成  m.put("a", 1 ); m.put("b", 2 );

import java.util.*;
public class TestDuoTai {
    //private static final int i = 1;
    public static void main(String[] args) {
        Map c = new HashMap();
        for (int j = 0; j<args.length; ++j) {
            int falg = (Integer)c.get(args[j]) == null ?
            0:(Integer)c.get(args[j]); //Integer会被自动解包成int类型
                                      //不能直接写成int falg = c.get(args[j])
                                      //因为get到的对象不一定能转换成int类型,s
                                      //所以要先强制转换为Integer,Integer自动转换成int
 
            c.put(args[j],falg == 0 ? 1 : falg+1); //1 会被自动打包成对象
        }
        System.out. println(c.size() + " args detect: ");
        System.out. println(c);
    }
}

编译结果:

posted @ 2018-07-16 10:28  落花人独立微雨燕双飞  阅读(210)  评论(0编辑  收藏  举报
欢迎访问我的CSDN博客