1、为什么需要包装器类?

Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便。例如,我们有时候需要将int这种基本类型转换为对象类型的,所有的基本类型都有一个与之对应的类,我们把它们叫包装器类。

2、Java中常见的包装器类?

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

注意:

  • String不属于包装类,在Java中,包装类是针对基本数据类型的,引用类型没有包装类。
  • 由于每个值分别包装在对象里,所以ArraysList的效率比使用数组进行操作要低很多。

3、自动装箱和自动拆箱

为了理解自动装箱,我们定义一个ArrayList:
ArraysList list = new ArraysList<>();

自动装箱:
如果调用 List.add(3); 语句,将自动转换为list.add(Integer.valueof(3));
也就是说,自动装箱将自动把int类型数据包装成Integer类型。

自动拆箱:
相反,将一个Integer类型的值赋给一个int类型的变量时,将会自动拆箱。
这种自动装箱和自动拆箱在运算符中也会存在。

注意:
可以将一个基本数据类型打包成不同的包装器类
例如,可以将int类型包装成Integer,也可以包装成Double,还可以打包成String类型。

Java包装器类及自动装箱(自动打包)相关推荐

  1. Java包装器类的作用好处及图解

    参考1:包装器类 参考二:自动装箱与拆箱 基本数据类型的包装类的作用是: 1.作为和基本数据类型对应的类类型存在,方便涉及到对象的操作. 2.包含每种基本数据类型的相关属性如最大值.最小值等,以及相关 ...

  2. java包装器类_Java中的基本类型和包装类

    Java中基本数据类型与包装类型有 基本类型 包装器类型 boolean Boolean char Character int Integer byte Byte short Short long L ...

  3. Java — 包装器类

    包装器类的概念 1.基本概念 为了能将基本类型视为对象来处理,并能连接相关的方法,提供了包装器类. 八种基本数据类型对应的包装器类分别为:Byte.Short.Character.Integer.Lo ...

  4. java类包装器有什么用_Java中的包装器类

    java类包装器有什么用 Wrapper class in java are the Object representation of eight primitive types in java. A ...

  5. java 自动装箱自动拆箱_自动装箱和自动拆箱

    自动装箱和自动拆箱 Java 提供了 8 种基本数据类型,每种数据类型都有其对应的包装类型,包装类是面向对象的类,是一种高级的数据类型,可以进行一些比较复杂的操作,它们是引用类型而不再基本类型了. 基 ...

  6. 包装类、自动装箱/自动拆箱

    1.包装类 1.1概念 基本类型是一个变量,只能保存值,没有其它的功能,所以对基本类型进行包装,包装成为包装类型,去提供更加丰富的功能. 1.2基本类型对应的包装类型 基本类型 ----- 对应的包装 ...

  7. java基础语法-day24-25进阶-Arrays工具类String自动装箱自动拆箱

    p576 Arrays工具类 p577 冒泡排序 import java.util.Arrays;public class BubbleSort {/*** 冒泡排序:*/public static ...

  8. java 自动装箱自动拆箱

    1.Java数据类型 在介绍Java的自动装箱和拆箱之前,我们先来了解一下Java的基本数据类型. 在Java中,数据类型可以分为两大种,Primitive Type(基本类型)和Reference ...

  9. java 自动装箱自动拆箱,java自动装箱、自动拆箱和正常情况性能比较

    自动装箱和自动拆箱是java5.0版本引入的,能自动将基本类型转换为对应的基本类型包装对象,那么我们比较一下他们的性能情况. package com.wmmad.test; import junit. ...

最新文章

  1. 全球比特币和区块链领域创业企业全景图
  2. java一定时间间隔的定时任务_Java 定时任务---Timer
  3. POJ-1201 Intervals---差分约束
  4. 如何测得存储空间大小
  5. 用python画皇冠_手把手教你用 Python 绘制酷炫的桑基图!
  6. 聊聊spring-boot-starter-data-redis的配置变更
  7. idea可以使用flash框架吗_可以使用 C# 的 Web 前端框架 Blazor
  8. sql server 高可用故障转移(6)
  9. 异常mongodb:Invalid BSON field name XXXXXX:YYYYY.zz
  10. Python关键点常识
  11. UI设计中的图标分为哪些类型?
  12. mysql备份 php_详解MYSQL的备份还原(PHP实现)
  13. java+junit百科_JUnit介绍
  14. html json加密 ajax请求问题
  15. 自备ACM模板 —— 数学篇
  16. 异常值(outlier)的判别与剔除
  17. Unity Panel 控件
  18. 医院计算机房相关制度,医院机房管理制度.docx
  19. [16]质量控制工具 因果图-帕累托图-直方图-趋势图等
  20. 计算机专业大二寒假还没入门,关于考研的入门问题我是一个大二的

热门文章

  1. 【简介】操作系统概念
  2. 转:Mysql explain
  3. C#学习笔记-ContextMenuStrip
  4. FPGA开发全攻略——ISE基本操作
  5. IOS 预览pdf,word文档的集中方式
  6. 设计模式07_建造者
  7. 数据库与Excel表格链接PHP,php读取Excel表格(Excel也可以做数据库)调用phpExcel类库...
  8. 避坑!用大数据告诉你,那些被淘汰的公司,都有哪些特征?
  9. 数据分析究竟有没有价值?看完这个案例你就明白了
  10. java中this,super,extends,implements相关继承概念讲解