Java中的包装类

news2024/11/29 0:34:20

基本数据类型的豪华版---包装类

  • 基本数据类型
  • 包装类

基本数据类型

在我们刚开始学习Java的时候,我们学习的应该就是Java中的八种基本数据类型:
byte short int long float double char boolean
当时我们还说过Java是面向对象编程的语言,一切皆对象,但是受到当时知识的限制,我们还是没有办法把一个数据当成一个对象来操作,当时我就跟兄弟们说了,不要着急,Java中八种基本数据类型都会有其对应的包装类,今天我就来给兄弟们盘一盘包装类!

包装类

首先我们要知道,包装类是八种基本数据类型的升级版,也只有这八种数据类型才有其对应的包装类,我们只要记住int的包装类是Integer以及char的包装类是Character就行,其他的直接是首字母大写!

        int a=10;
        Integer A=a;(自动装箱/)隐式的
        int b=A;

这里编译器是可以运行的,因为Integerint的包装类,所以这两者之间才可以相互转化的,在底层我们可以看到的是Java会自动给你调用一个valueOf( )方法,也就是说自动装箱的原理实际上就是调用了这个方法:

        Integer A=Integer.valueOf(a);
        int b=A.intValue()

看到此情此景,兄弟们心中是否有一点感受?
为什么我们要这个包装类呢?
是不是当我们把基本数据类型给包装成一个类之后,我们势必可以在这个类中写一些成员变量,更可以写一些成员方法,就比如这个Integer.valueOf 我们可以明显感觉到,这一定是一个静态方法,不然不可能可以直接通过类名进行调用:
在这里插入图片描述
果不其然!
而且通过一些猜想加实践,我们可以知道的是每一个包装类都有类似的性质,里面都会有valueOf方法,而且用哪个包装类.出来的valueOf最终就会变成哪个类型的.
小题目:

Integer a = 1;
Integer b = 1;
Integer c = 555;
Integer d = 555;
System.out.println(a == b);
System.out.println(c == d);

请问a和b c和d相等吗?
在这里插入图片描述
为什么这里一个相等一个不等呢?
知其然,知其所以然!我们在这个程序中,只执行了一个操作:装箱,那我们就去看看装箱的过程中发生了什么呗!
在这里插入图片描述
看到这个源码我们就不难理解为什么会有刚才的现象了,如果我们要装箱的这个数字在一个范围之内,那我们里外里返回的都将是数组里面的,也就是现成的东西,但是如果,如果超过了这个限制,那不好意思,我们就要重新new一个对象了,而我们知道,引用类型比较比较的向来都是地址,两个不同的对象地址当然不同啦!!

这就是关于包装类我目前能够分享给大家的知识,希望能够帮助到大家.
百年大道,你我共勉!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/166346.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PHP MySQL 创建数据库

数据库存有一个或多个表。 你需要 CREATE 权限来创建或删除 MySQL 数据库。 使用 MySQLi 和 PDO 创建 MySQL 数据库 CREATE DATABASE 语句用于在 MySQL 中创建数据库。 在下面的实例中,创建了一个名为 "myDB" 的数据库: 实例 (MySQLi - 面…

系分 - 案例分析 - 架构设计(Web架构)

个人总结,仅供参考,欢迎加好友一起讨论 文章目录案例分析 - 系统设计(Web架构)Web架构知识点单台机器 到 数据库与Web服务器分离应用服务器集群负载均衡负载均衡技术静态与动态算法Session共享机制有状态与无状态持久化技术ORM数据…

22.Isaac教程--使用 Isaac Sight可视化

使用 Isaac Sight可视化 本节介绍如何使用 Isaac Sight 检查导航堆栈,机器人上当前发生的情况。 Sight 使用 Isaac 节点,该节点运行可在设备上连接的 Web 服务。 通过在 Chrome 网络浏览器中导航到 http://localhost:3000 来启动 Isaac Sight。 &#x…

(详解)java:无效的目标发行版: 11

目录 背景 解决方法 1.打开文件下的Project Structure 如下图: 2. 3. 4.完毕 背景 其实出现问题的真正原因是你下载别人的代码,但是别人的JDK属于java11 或者java9,但是你的为java8 或者更低 解决方法 1.打开文件下的Project Structure 如下图&a…

微信小程序——视图与逻辑,页面导航(导航到 tabBar 页面,导航到非 tabBar 页面)

一.页面导航1.什么是页面导航页面导航指的是页面之间的相互跳转。例如&#xff0c;浏览器中实现页面导航的方式有如下两种&#xff1a;a.< a &#xff1e;链接b.location . href2&#xff0e;小程序中实现页面导航的两种方式声明式导航在页面上声明一个&#xff1c; navigat…

nodejs框架koa,egg以及es6一起学

文章目录前言问题关于ES6-Generatoregg中的处理Promisenode的fsWorksheet Object参考文档前言 大家知道&#xff0c;eggjs框架是基于Koa开发的。关于koa&#xff0c;有一张经典的洋葱图&#xff1a; 这张图比较形象地展示了koa对于request和response的处理。每一层都留下扩展…

【RabbitMQ】高级篇,学习纪录+笔记

目录 一.高级特性 1.1消息的可靠投递 2.1Consumer Ack 3.1消费端限流 4.1TTL 5.1死信队列 6.1延迟队列 7.1日志与监控 7.1.1日志 7.1.2监控 8.1消息追踪 8.1.1Firehose 8.1.2rabbitmq_tracing 9.1消息可靠性保障&#xff08;思路&#xff09; 9.2消息幂等性保障&…

Hash算法,插入排序,希尔排序,选择排序,冒泡排序,归并排序,快速排序,堆排序,基数排序

Hash算法hash就是散列表&#xff0c;就是把任意长度的输入通过散列算法变换成固定长度的输出&#xff0c;该输出就是散列值。实质就是压缩映射&#xff0c;散列值的空间通常远小于输入的空间。常利用hash算法&#xff0c;将输入的一千万个检索串转化为题目中所说大约三百万个不…

《Linux Shell脚本攻略》学习笔记-第七章

7.1 简介 随着磁盘存储技术的发展&#xff0c;最简单地备份方法是添加新的磁盘设备或是使用云存储&#xff0c;而不再是依赖磁盘。 但是也需要压缩备份数据&#xff0c;降低存储空间需求以及传输时间。把数据存放在云端之前应该对其加密。数据在加密之前通常都要先进行归档和压…

2.2总线的性能指标

文章目录一、总线传输周期二、总线时钟周期三、总线工作频率四、总线时钟频率五、总线宽度六、总线带宽1.概念2.注意点3.案例分析4.总结补充七、总线复用八、信号线数九、总结这一节我们一起学习评价 总线性能的指标&#xff0c;这些指标很可能在选择题或者大题第一小题出现。一…

Git团队协作及分支策略

目录 分布式版本控制系统 访问模型 分支策略-Git flow feature 分支策略-Github flow 分支策略-Gitlab flow 主干开发模式 总结 分布式版本控制系统 分布式相比于集中式的最大区别在于开发者可以提交到本地&#xff0c;每个开发者通过克隆&#xff08;git clone&#…

Pytest参数化-下篇

&#x1f60e;&#x1f60e;原文出自&#xff1a;测个der&#xff0c;博主的公众号&#xff0c;格式美观一些。 关于参数化的其他案例 数据嵌套及多参数传参 import pytestpwd_datas [["QINGAN",{"user":"SHIER","pwd":"1234…

5个关键词回顾2022年个推技术实践

作为一家数据智能服务商&#xff0c;2022年每日互动&#xff08;个推&#xff09;在为开发者和行业客户提供优质服务的同时&#xff0c;不断砥砺创新&#xff0c;追逐技术前沿。个推还持续参与开发者生态建设&#xff0c;积极总结、分享自身技术实战经验&#xff0c;面向行业输…

该如何测客户端专项测试?

整个行业现在越来越重视客户端的专项测试了。像接口的性能测试、webview 测试、H5性能分析等&#xff0c;每一项都需要测试。而对于卡顿的分析、系统资源分析、耗电量测试及弱网测试这块&#xff0c;也变得越来越重要了&#xff01;后面也会有相关的文章更新。大家可以戳此关注…

快解析远程访问解决方案——安全稳定,部署简单

我们说的远程办公通常指狭义上的远程办公&#xff0c;是指通过远程技术&#xff0c;或远程控制软件&#xff0c;对远程电脑进行操作办公&#xff0c;实现非本地办公&#xff0c;如在家办公、异地办公、移动办公等远程办公模式。这种技术的关键在于:穿透内网和远程控制的安全性。…

Wisej.NET 3.1.6 Crack

新功能 Wisej.NET 3.1 通过添加几个新的独特功能和简化的安装过程增强了里程碑 3.0 版本。 除了大量错误修复和对我们库的显着性能增强之外&#xff0c;3.1 还包括以下值得注意的新功能&#xff1a; 视觉工作室市场 Wisej.NET 现在比以往任何时候都更容易使用。或 Visual Studi…

联合证券|五大国际巨鳄集体爆雷,美股期指大跳水!

商场现已进入到雷雨季&#xff01; 周五晚间&#xff0c;花旗、摩根大通、高盛、富国和贝莱德团体爆雷。 花旗集团上一年第四季度每股收益低于预期&#xff0c;尽管营收好于预期。花旗集团Q4每股收益1.16美元&#xff0c;预期为1.17美元。财报发布之后一度暴降超3%&#xff1b;…

【机器学习之模型融合】Stacking堆叠法

目录 1、Stacking的基本思想&#x1f48d; 2、思考&#x1f48e; 3、在sklearn中实现Stacking&#x1f3af; 3.1、导入工具库和数据&#x1f455; 3.2、定义交叉验证评估函数&#x1f457; 3.3、个体学习器与元学习器的定义&#x1f357; 3.4、模型构建&#x1f36a; 4…

【Linux】创建新用户 sudo配置,添加信任

目录 一、创建新用户 二、sudo不被允许 三、添加信任用户 一、创建新用户 相关指令&#xff1a; adduser [用户名]&#xff1a;创建新用户 passwd [用户名]&#xff1a;修改用户密码 su [用户名]&#xff1a;切换到该用户 设置密码&#xff0c;重复输入两遍之后&#xff0…

大数据技术架构(组件)——Hive:环境准备1

1.0.1、环境准备1.0.1.0、maven安装1.0.1.0.1、下载软件包1.0.1.0.2、配置环境变量1.0.1.0.3、调整maven仓库打开$MAVEN_HOME/conf/settings.xml文件&#xff0c;调整maven仓库地址以及镜像地址<settings xmIns"http://maven.apache.org/SETTINGS/1.0.0"xmIns:xsi…