java拆装箱——慎用

java拆装箱——慎用!

Exception in thread "main" java.lang.NullPointerException
at com.gs.test.AppTest.main(AppTest.java:34)

    public static void main(String[] args) {

        Map<String, Integer> map=new HashMap<String, Integer>();
        map.put("b",1);
        int i=map.get("a");
        System.err.println(i);
    }
时间: 2024-11-10 07:33:06

java拆装箱——慎用的相关文章

java拆装箱(转)

转载:http://www.cnblogs.com/dolphin0520/p/3780005.html 深入剖析Java中的装箱和拆箱 自动装箱和拆箱问题是Java中一个老生常谈的问题了,今天我们就来一些看一下装箱和拆箱中的若干问题.本文先讲述装箱和拆箱最基本的东西,再来看一下面试笔试中经常遇到的与装箱.拆箱相关的问题. 以下是本文的目录大纲: 一.什么是装箱?什么是拆箱? 二.装箱和拆箱是如何实现的 三.面试中相关的问题 若有不正之处,请谅解和批评指正,不胜感激. 请尊重作者劳动成果,转载请

新手学JAVA(五)----深入剖析JAVA拆装箱

先来看一段代码: public class Main{ public static void main(String[] args){ Integer num1 = 100; Integer num2 = 100; Integer num3 = 200; Integer num4 = 200; '''//输出结果''' System.out.println(num1==num2); System.out.println(num3==num4); } } 猜猜结果是什么? 很多人都会认为结果全为t

浅谈java中的自动拆装箱

Java在jdk1.5之后推出的一个新特性:自动拆装箱. 该特性不是jvm认可的,而是编译允许 public class Integerdemo03 {     public static void main(String[] args) {         /**          * 编译器在编译下列代码时补充了代码          * Integer n= Integer.valueOf(1);          * 自动装箱          */         int a=100;

java自动装箱与拆箱

基本数据(Primitive)类型的自动装箱(autoboxing).拆箱(unboxing)是J2SE 5.0提供的新功能,跟泛型.变长参数等一样,这也是一颗"语法糖",之前介绍jvm早期优化的时候说过,语法糖对运行期的代码没有任何影响,其目的仅仅是方便程序员使用,所有语法糖编译后都将会还原成基础语法.这次介绍的自动装箱和拆箱也不例外.看下头的例子: public class Demo { public static void main(String[] args) { Intege

Java 自动装箱和拆箱

JDK1.5之后的功能 自动装箱:指的是开发人员可以把一个基本数据类型直接赋给对应的包装类 自动拆箱:指开发人员可以把一个包装类对象直接赋给对应的基本数据类型 public static void main(String[] args) { Integer i = 1; //装箱 int j = i ; //拆箱 } public static void main(String[] args) { List list = new ArrayList(); list.add(1); int j=

Java自动装箱和自动拆箱操作

1.Java数据类型 在介绍Java的自动装箱和拆箱之前,我们先来了解一下Java的基本数据类型. 在Java中,数据类型可以分为两大种,Primitive Type(基本类型)和Reference Type(引用类型).基本类型的数值不是对象,不能调用对象的toString().hashCode().getClass().equals()等方法.所以Java提供了针对每种基本类型的包装类型.如下: Java基本数据类型 INDEX 基本类型  大小 数值范围 默认值 包装类型 1 boolea

java自动装箱拆箱总结

对于java1.5引入的自动装箱拆箱,之前只是知道一点点,最近在看一篇博客时发现自己对自动装箱拆箱这个特性了解的太少了,所以今天研究了下这个特性.以下是结合测试代码进行的总结. 测试代码: int a = 1; Integer b = 1; Integer c = 1; Integer d = 2; Integer e = 3; Integer f = 128; Integer g = 128; Long h = 3L; Double m = 4.0; Double n = 4.0; Float

Java自动拆装箱理解

首先,java中的基本数据类型其实只是为了方便程序员编程,java本身作为一门面向对象的语言恨不得不用基本数据类型,但是这样做会对广大程序员不友好,所以这也可以看作是原则向方便的一次妥协^^.好,扯远了,进入正题. 我们知道,java中的基本数据类型(int, float, double...)其实都对应一种包装类型(Integer, Float, Double...),为什么会有包装类型呢?其实还是那句话,基本数据类型本不应该存在于纯面向对象语言java中,只是为了方便,包装类型是基本数据类型

java 自动装箱自动拆箱

1.Java数据类型 在介绍Java的自动装箱和拆箱之前,我们先来了解一下Java的基本数据类型. 在Java中,数据类型可以分为两大种,Primitive Type(基本类型)和Reference Type(引用类型).基本类型的数值不是对象,不能调用对象的toString().hashCode().getClass().equals()等方法.所以Java提供了针对每种基本类型的包装类型.如下: Java基本数据类型 INDEX 基本类型  大小 数值范围 默认值 包装类型 1 boolea