【Java基础】--05.java基本类型与包装类型
java中基本类型和包装类型的区别
1、包装类是对象,拥有方法和字段,对象的调用都是通过引用对象的地址,基本类型不是
2、包装类型是引用的传递,基本类型是值的传递
3、声明方式不同,基本数据类型不需要new关键字,而包装类型需要new在堆内存中进行new来分配内存空间
4、存储位置不同,基本数据类型直接将值保存在值栈中,而包装类型是把对象放在堆中,然后通过对象的引用来调用他们
5、初始值不同,eg: int的初始值为 0 、 boolean的初始值为false 而包装类型的初始值为null
6、使用方式不同,基本数据类型直接赋值使用就好 ,而包装类型是在集合如 coolection Map时会使用
Java 中包装类
相信各位小伙伴们对基本数据类型都非常熟悉,例如 int、float、double、boolean、char 等。基本数据类型是不具备对象的特性的,比如基本类型不能调用方法、功能简单。。。,为了让基本数据类型也具备对象的特性, Java 为每个基本数据类型都提供了一个包装类,这样我们就可以像操作对象那样来操作基本数据类型。
###基本类型和包装类之间的对应关系:
包装类主要提供了两大类方法:
- 将本类型和其他基本类型进行转换的方法
- 将字符串和本类型及包装类互相转换的方法
任务
我们以 Integer 包装类为例,来看下包装类的特性。
Integer 包装类的构造方法:
如下代码所示:
Integer包装类的常用方法:
Demo
public class HelloWorld {public static void main(String[] args) {// 定义int类型变量,值为86int score1 = 86; // 创建Integer包装类对象,表示变量score1的值Integer score2=new Integer(score1);// 将Integer包装类转换为double类型double score3=score2.doubleValue();// 将Integer包装类转换为float类型float score4=score2.floatValue();// 将Integer包装类转换为int类型int score5 =score2.intValue();System.out.println("Integer包装类:" + score2);System.out.println("double类型:" + score3);System.out.println("float类型:" + score4);System.out.println("int类型:" + score5);}
}
Java 中基本类型和包装类之间的转换
基本类型和包装类之间经常需要互相转换,以 Integer 为例(其他几个包装类的操作雷同哦):
在 JDK1.5 引入自动装箱和拆箱的机制后,包装类和基本类型之间的转换就更加轻松便利了。
那什么是装箱和拆箱呢?我们分别来看下
装箱:把基本类型转换成包装类,使其具有对象的性质,又可分为手动装箱和自动装箱
拆箱:和装箱相反,把包装类对象转换成基本类型的值,又可分为手动拆箱和自动拆箱
Demo
完成了基本类型和包装类之间的转换,即装箱和拆箱的操作。
public class HelloWorld {public static void main(String[] args) {// 定义double类型变量double a = 91.5;// 手动装箱Double b = new Double(a); // 自动装箱Double c = a; System.out.println("装箱后的结果为:" + b + "和" + c);// 定义一个Double包装类对象,值为8Double d = new Double(87.0);// 手动拆箱double e = d.doubleValue();// 自动拆箱double f = d;System.out.println("拆箱后的结果为:" + e + "和" + f);
【Java基础】--05.java基本类型与包装类型相关推荐
- 【重难点】【Java基础 05】说一说你平时遇到的异常、什么情景下会用到反射、反射的底层原理
[重难点][Java基础 05]说一说你平时遇到的异常.什么情景下会用到反射.反射的底层原理 文章目录 [重难点][Java基础 05]说一说你平时遇到的异常.什么情景下会用到反射.反射的底层原理 一 ...
- java基础之java类型
系列文章目录 java基础之java类型 文章目录 系列文章目录 基本类型 自动类型提升 引用类型 基本类型 整型 Byte 8位 -2^7~2^7-1 默认值0 Short 16位 -2^15~2^ ...
- Java中,String类型和包装类型作为参数传递时,是属于值传递还是引用传递呢?...
<Java中,String类型和包装类型作为参数传递时,是属于值传递还是引用传递呢?> <Java中的值传递和引用传递> 原理知识: 如果参数类型是原始类型,那么传过来的就是这 ...
- Java为什么要有基本数据类型和包装类型
作为面向对象语言为代表的Java, 在很多任务场景中经常看到它的身影.那么,Java为什么要有基本数据类型和包装类型? 这个问题看似简单,其实也不好回答.毕竟这个问题不仅你我感觉到困惑,许多大佬也感觉 ...
- java基础总结-java技术栈快速复习
java基础 java基础概念 java概述和语言背景 java语言是没有sun公司(Stanford University Network:斯坦福大学网络)在1995年推出的计算机语言 java之父 ...
- Java 基础-01 Java语言入门
文章目录 Java 基础-01 Java语言入门 1.计算机基本概念 1.1 计算机概述 1.2 计算机组成 1.3 CPU.内存与硬盘 2.软件基本概念 2.1 软件概述 2.2 人机交互方式 2. ...
- java基础之java中的基本数据类型
java基础之java中的基本数据类型 学习java一段时间了,使用java也差不多一年多了,可是对于后续的java的学习真的是后劲不足,或者是说懒惰吧,回想一下这一年多,用java最多的就是Andr ...
- 【Java基础】· Java基本语法:程序流程控制习题总结
写在前面 Hello大家好, 我是[麟-小白],一位软件工程专业的学生,喜好计算机知识.希望大家能够一起学习进步呀!本人是一名在读大学生,专业水平有限,如发现错误或不足之处,请多多指正!谢谢大家!!! ...
- 黑马程序员:Java基础总结----Java语言编程规范
黑马程序员:Java基础总结 Java语言编程规范:参考自SUN公司文档 ASP.Net+Android+IO开发..Net培训.期待与您交流! I. 排版规范 A. 规 ...
- JAVA基础之java语法
JAVA基础之java语法 第一个java程序 // HelloWorld类名和文件名相同 public class HelloWorld {// 公开的 static 静态的 void 没有返回值 ...
最新文章
- 用 TS + Vue 写了一个在 Chrome 中运行 Prettier 格式化的扩展程序
- 构建轻量级的Table View注意事项[UIKit]
- 2017-2018-1 20155332实验三 实时系统报告
- ASCII码对应表chr(9)、chr(10)、chr(13)、chr(32)、chr(34)、chr(39)、chr(..
- flink sql udf jar包_Flink 生态:一个案例快速上手 PyFlink
- ARM的7种工作模式、37个通用寄存器、CPSR程序状态寄存器
- K8s 集群搭建过程中遇到的问题的解决方法
- 树形数据深度排序处理示例(模拟单编号法).sql
- Improving Opencv11 Extract horizontal and vertical lines by using morphological operations
- html转换成avi,HTML_视频转换大师WinMPG Video Convert 6.63,支持格式丰富,可快速完成AVI(RM - phpStudy...
- 轻松访问Google Chrome浏览器中的浏览历史记录
- Intel处理器概述
- 单字母密码密码分析(上)
- 解决苹果电脑OS X 10.8.5 安装双系统,遇到的各种坑
- linux虚拟主机用织梦,织梦程序用什么虚拟主机好
- CMake的安装及其简单使用
- cocos2dx 字体外发光_cocos2d-x位图字体生成工具bmfont使用图文教程 美术字使用
- CUDA:在NPP中直方图均衡化实例
- 平安云:在群雄逐鹿的云市场中野蛮生长
- java 围棋算法_求java围棋提子算法