文章目录

  • 1.为什么我们需要包装类?
  • 2. 包装类都有哪些呢?
  • 3.装箱与拆箱
  • 4. 基本类型、包装类与String之间的转换
  • 5.代码测试
  • 6.面试题

本文已同步到: https://www.bithachi.cn/posts/a852be86.html

1.为什么我们需要包装类?

因为Java是面向对象编程的,那么我们想让基本数据类型可以有对象的特征,调用一些方法,那么Java就提供了包装类,实现基本数据类型转换成包装类,进而使得基本数据类型有了类的特点,可以调用类中的方法。

2. 包装类都有哪些呢?

话不多说,直接上图

3.装箱与拆箱

在我们正式使用包装类之前,我们先了解一下什么是装箱与拆箱。

  1. 装箱:将基本数据类型包装成对应的包装类,比如 int->Integer
  2. 拆箱:将包装类拆解成对应的基本数据类型,比如 Character->char

4. 基本类型、包装类与String之间的转换

现在我们先看看基本类型、包装类与String之间的转换,然后依次代码测试这些转换

5.代码测试

我们以上图的序号依次测试这些转换方式,1->2->3->4->5->6

/*** @Program: JavaSE* @ClassName: TestMain* @Author: Mr.BitHachi* @CreateTime: 2020-07-31 20:12* @Version: V1.0* @Description: 测试基本数据类型、包装类与String之间的转换**/public class TestMain {public static void main(String[] args) {/************  1:基本数据类型->包装类 ************/System.out.println("------- 1 -------");int i1=100;Integer t1=new Integer(i1);//通过构造器Float f1=new Float("32.1F");//通过字符串参数Character ch1='A';//自动装箱System.out.println(t1+","+f1+",ch1");/************  2.包装类->基本数据类型  ************/System.out.println("------- 2 ------");int i2=t1.intValue();//调用包装类的方法char ch2=ch1;//自动拆箱System.out.println(i2+","+ch2);/************  3.String类->基本数据类型  ************/System.out.println("------- 3 ----------");String s3="123";int i3=Integer.parseInt(s3);//调用相应的包装类的parseXxx(String)静态方法boolean b3=new Boolean("true");//通过包装类的构造器System.out.println(i3+","+b3);/************  4. 基本数据类型->String类 ************/System.out.println("------- 4 ----------");String s4=String.valueOf(3.4F);//String的valueOf(x);String d4=5.2D+3.4d+"";//String + 自动转换System.out.println(s4+","+d4);/************  5.String类->包装类  ************/System.out.println("------- 5 ----------");String s5="142.35D";Double d5=new Double (s5);//通过字符串参数System.out.println(s5);/************  6.包装类->String类  ************/System.out.println("------- 6 ----------");Float f6=123.456f;String s6=f6.toString();//对应包装类对象的toString()方法String sf=Float.toString(f6);//调用对应包装类的toString(x)方法System.out.println(s6+","+sf);}
}

运行结果:

------- 1 -------
100,32.1,ch1
------- 2 ------
100,A
------- 3 ----------
123,true
------- 4 ----------
3.4,8.6
------- 5 ----------
142.35D
------- 6 ----------
123.456,123.456

6.面试题

public class FaceTest {public static void main(String[] args) {/************  1  ************///比较情况下,编译时将Integer统一编译成Double,与位数多的单位保持一致Object o1 = true ? new Integer(1) : new Double(2.0);System.out.println(o1);//1.0/************  2  ************///这里没有比较,只有条件判断Object o2;if (true)o2 = new Integer(1);elseo2 = new Double(2.0);System.out.println(o2);//1/************  3  ************///Integer内部定义了IntegerCache类结构,IntegerCache中定义了 Integer[],//保存了从-128~127范围的整数。如果我们使用自动装箱的方式,给Integer赋值的范围在//- 128~127范围内时,可以直接使用数组中的元素,不用再去new了.目的:提高效率Integer i = new Integer(1);Integer j = new Integer(1);System.out.println(i == j);//falseInteger m = 1;Integer n = 1;System.out.println(m == n);//trueInteger x = 128;Integer y = 128;System.out.println(x == y);//false}
}

运行结果:

1.0
1
false
true
false

八大基本数据类型对应的八大包装类(含对应面试题解析)相关推荐

  1. 八大基本数据类型、数组和包装类默认值

    八大基本数据类型.数组和包装类默认值 1.八大基本数据类型 Java八种基本数据类型总结 序号 数据类型 大小/字节 封装类 默认值 可表示数据范围 1 byte 1 Byte 0 -128~127 ...

  2. 八大基本数据类型对应的包装类

      以我个人屈指可数的面试面试经历来看,当然我这里主要说的是Java开发相关岗位的面试,面试的内容对于int 和Integer的区别 这类问题讨论的比较多,下面我们就开展开说明一下这类问题吧. int ...

  3. 八大基本数据类型以及对应包装类

    八大基本数据类型以及对应包装类 八大基本数据类型 byte/8 char/16 short/16 int/32 float/32 long/64 double/64 boolean/~ 注:具体大小没 ...

  4. java八大基本数据类型基本用法(含数据输入输出)

    文章内容 1.java八大基本数据类型 2.基本用法 3.获取键盘输入Scanner 4.数据类型之间的转换 2020年2月25日 第二周星期二 1.java八大基本数据类型 //整形(属于整型的4个 ...

  5. 八大基本数据类型之基本类型与包装类型的区别

    八大基本数据类型: 四个整数类型:byte(1个字节,8位).short(2个字节,16位).int(4个字节,32位).long(8个字节,64位). 二个浮点数类型:float(4个字节,32位) ...

  6. java八大数据类型_java的八大基本数据类型分别是什么?

    java的八大基本数据类型分别是:1.整型的byte.short.int.long:2.字符型的char:3.浮点型的float.double:4.布尔型的boolean. 自从Java发布以来,基本 ...

  7. java的八大基本数据类型

    java的八大基本数据类型分别是:1.整型的byte.short.int.long:2.字符型的char:3.浮点型的float.double:4.布尔型的boolean. 一. 整型 Java中整型 ...

  8. 2021-03-13 java八大基本数据类型

    java八大基本数据类型(primitive type) 1:整数 int 占1字节 bute 占2字节 short 占4字节 long 占8字节 2:小数(浮点数) float 占4字节 /*flo ...

  9. java的基本数据类型有什么特点,java八大基本数据类型

    本文收集整理关于java八大基本数据类型的相关议题,使用内容导航快速到达. 内容导航: Q1:java中八大基本数据类型有hasdcode值么 byte(字节) 1(8位) (bit是比特位,一个字节 ...

最新文章

  1. python django mysql安装_Django+Nginx+uWSGI+Mysql搭建Python Web服务器
  2. 1.7 Python基础知识 - 模块初识
  3. 为何苦命干活的人成不了专家?
  4. java中write方法报错_Java中管道报错:Write end dead
  5. 项目管理十大知识领域,为何不含
  6. jQuery(一)、核心
  7. rhel6.3-64 yum问题
  8. redis批量删除键的操作
  9. Windows下安装JDK,配置环境变量
  10. linux打开终端的快捷键是什么?
  11. db mysql导入_db mysql导入数据库
  12. 教你微星电脑按f几重装系统
  13. 安全专业委员会发言_护理专业委员会发言稿
  14. 浅谈大数据风控平台的功能需求
  15. 【前端项目问题】draw抽屉的实现(Vue3)
  16. 《电脑报2014年》更新至第51期
  17. 【华为云CCE】 k8s部署nacos集群
  18. [多校 NOIP 联合模拟 11.30 T4] ZZH 的旅行(李超树合并) | 错题本
  19. 有铅喷锡和无铅喷锡的选择
  20. Python基本图形绘制----正方形,六边形,叠边形,风轮,八边形,八角图形

热门文章

  1. 【JavaScript】正则表达式
  2. 网络分流器-网络分流器的应用领域
  3. 实验2(第二章课后习题)
  4. Linux Signals 进程信号简介
  5. rsync 常用命令及格式
  6. ORA-12545: Connect failed because target host or object does not exist
  7. cmake--gccxml
  8. python很简单。。。。
  9. python——selenium框架实现无头浏览器访问 + 规避检测配置
  10. 第一章 TensorFlow基础——python语法(二)