`

Java中基本数据类型和包装器类型的关系

    博客分类:
  • Java
 
阅读更多
转自
http://www.cnblogs.com/huajiezh/p/5225637.html


    在程序设计中经常用到一系列的数据类型,在Java中也一样包含八中数据类型,这八种数据类型又各自对应一种包装器类型。如下表:

    基本类型  包装器类型
    boolean Boolean
    char Character
    int         Integer
    byte Byte
    short Short
    long Long
    float Float
    double Double

    为什么存在这两种类型呢?
    我们都知道在Java语言中,new一个对象存储在堆里,我们通过堆栈中的引用来使用这些对象;但是对于经常用到的一系列类型如int,如果我们用new将其存储在堆里就不是很有效 ——特别是简单的小的变量。
    所以就出现了基本类型,同C++一样,Java采用了相似的做法,对于这些类型不是用new关键字来创建,而是直接将变量的值存储在堆栈中,因此更加高效。

    有了基本类型之后为什么还要有包装器类型呢?我们知道Java是一个面相对象的编程语言,基   本类型并不具有对象的性质,为了让基本类型也具有对象的特征,就出现了包装类型(如我们在使用集合类型Collection时就一定要使用包装类型而非基本类型),它相当于将基本类型“包装起来”,使得它具有了对象的性质,并且为其添加了属性和方法,丰富了基本类型的操作。

    另外当需要往ArrayList,HashMap中放东西时,像int,double这种基本类型是放不进去的,因为容器都是装object的,这是就需要这些基本类型的包装器类了。

    二者可以相互转换:
Character ch = new Character('x');
char c = ch;
char c = 'c';
Character ch = new Character(c);


    二者之间也存在一些区别:
    1.声明方式不同,基本类型不适用new关键字,而包装类型需要使用new关键字来在堆中分配存储空间;
    2.存储方式及位置不同,基本类型是直接将变量值存储在堆栈中,而包装类型是将对象放在堆中,然后通过引用来使用;
    3.初始值不同,基本类型的初始值如int为0,boolean为false,而包装类型的初始值为null
    4.使用方式不同,基本类型直接赋值直接使用就好,而包装类型在集合如Collection、Map时会使用到。
分享到:
评论

相关推荐

    Java的基本数据类型和包装类的关系

    但在Java中不能定义基本类型(primitive type),为了能将基本类型视为对象来处理,并能连接相关的方法,Java为每个基本类型都提供了包装类,这样,我们便可以把这些基本类型转化为对象来处理了。这些包装类有:Boolean...

    Java基本数据类型与对应的包装类(动力节点java学院整理)

    下面将详细介绍Java中的基本数据类型及其包装类,并探讨它们之间的异同。 一、Java的基本数据类型 1. 整数类型:包括`int`(32位)、`short`(16位)、`byte`(8位)和`long`(64位)。它们的初始值均为0。 2. ...

    Java基础教程之基本类型数据类型、包装类及自动拆装箱

    将包装类转为基本数据类型的过程叫“拆箱”。例如: ```java public static void main(String[] args) { Integer a = 0; for(int i = 0; i ; i++){ a += i; } } ``` 上面的代码将基本类型数据类型int转换为包装...

    java中数据类型转换.doc

    Java提供了六种基本数据类型的包装类,用于处理非原始类型的情况: - `Boolean` 对应 `boolean` - `Character` 对应 `char` - `Integer` 对应 `int` - `Long` 对应 `long` - `Float` 对应 `float` - `Double` 对应 `...

    Java基本数据类型包装类原理解析

    Java基本数据类型包装类原理解析 Java语言是一个面向对象的...Java基本数据类型包装类原理解析是Java语言中非常重要的一部分,了解包装类的用途和使用方法可以帮助开发者更好地使用Java语言,提高程序的效率和可靠性。

    JAVA程序员面试题-数据类型

    在Java编程语言中,数据类型是构建程序的基本单元,它们用于声明变量和函数的返回类型,以及对变量进行操作。Java的数据类型可以分为两大类:基础数据类型和引用数据类型。基础数据类型主要指可以直接存储在计算机...

    原始类型 包装类 原始类型所占的字节数

    原始类型(primitive type)是指 Java 中最基本的数据类型,它们是 Java 虚拟机(JVM)中所支持的基本类型。每种原始类型都对应着一个包装类(Wrapper Class),包装类是原始类型的对象表示形式。包装类提供了许多...

    Java包装类详解.pptx.pptx

    Java包装类是Java语言设计中的一个重要特性,它们是为了解决基本数据类型(如int、char、boolean等)无法直接参与面向对象编程的问题而引入的。包装类将基本数据类型转换为对象,使得我们可以在需要对象操作的场景下...

    Java实训教程 Java软件开发实战 Java类库 第3章 包装器类等 共40页.pptx

    通过本章的学习,我们了解到Java中的包装器类是如何将基本数据类型封装为对象的,并掌握了如何使用这些类来处理各种数据。此外,我们还学习了`Boolean`、`Character`等特定包装器类的应用场景,以及如何通过`valueOf...

    Java包装类

    装箱和拆箱是Java中非常重要的概念,它们使得基本数据类型与包装类之间的转换变得更加简便: - **装箱**: - **手动装箱**:显式地通过包装类的构造器或工厂方法创建包装类对象。 - **自动装箱**:编译器自动执行...

    java-数据类型转换、运算符、方法入门_java_

    1. 基本数据类型:Java有八种基本数据类型,分为整型(byte, short, int, long)、浮点型(float, double)、字符型(char)和布尔型(boolean)。理解这些类型以及它们之间的转换规则至关重要。 2. 运算符:Java...

    Java 自学宝典 第二章 数据类型

    基本数据类型是Java中最简单的数据类型,它们直接存储值而不是对象引用。Java中有八种基本数据类型: - `byte`:8位有符号整数。 - `short`:16位有符号整数。 - `int`:32位有符号整数。 - `long`:64位有符号整数...

    Java面向对象(高级)- 包装类(wrapper)的使用

    类型与包装类之间的关系:Java提供了八种基本数据类型,每种都有对应的包装类,分别是: - `Boolean` 对应 `boolean` - `Byte` 对应 `byte` - `Short` 对应 `short` - `Integer` 对应 `int` - `Long` 对应 `long` -...

    编程语言java类型转换.pdf

    Java有两种类型的数据:基本数据类型和引用数据类型。基本数据类型包括boolean、byte、char、short、int、long、float、double。引用数据类型包括类、接口、数组等。在进行类型转换时,需要注意不同数据类型之间的...

    java 包装类发给的发广告豆干

    Java中的包装类是针对基本数据类型(如int、float等)设计的一组类,它们使得基本数据类型能够参与面向对象的编程。包装类解决了Java语言中基本类型与对象之间转换的不便,使得基本类型的数据可以像对象一样进行操作...

    死磕Java之Java数据类型的来龙去脉

    (二)基本数据类型与包装类的对应关系(三)包装类的自动拆箱与装箱(四)包装类总结 一、数据类型分类 数据类型可以分为基本数据类型(8个)和引用数据类型(3个)。 具体可以参考如下图所示: 二、基本数据类型 ...

    java基本类型[定义].pdf

    Java中的基本类型是编程语言的核心组成部分,它们是不依赖于对象的原始数据类型。Java提供了九种基本类型,包括字符型(char),布尔型(boolean),以及五种数值类型(byte, short, int, long, float, double)。这些类型...

    Core Java Java的基本知识

    Java 提供了多种数据类型,包括但不限于: - **基本类型**:如 `int`、`double`、`char`、`boolean` 等。 - **引用类型**:如 `String`、`Object` 类及自定义的类等。 ##### 3. 流程控制 - **选择结构**:如 `if`、...

    Java补充知识点.pdf

    通过本文的介绍,我们深入了解了Java中的 `Scanner` 类以及基本数据类型与包装器类型之间的关系和区别。了解这些概念对于编写高质量的Java代码至关重要。希望本文能帮助读者更好地掌握Java编程的基础知识。

Global site tag (gtag.js) - Google Analytics