Java全面细致讲解Wrapper的使用
作者:小老师ir 发布时间:2023-02-14 00:49:24
标签:Java,Wrapper
一、概述
针对八种基本数据类型定义相应的引用类型—包装类(封装类)。
二、作用
有了类的特点,就可以调用类中的方法,Java才是真正的面向对象。
八种基本数据类型与其包装类的对应关系:
基本数据类型 | 包装类 |
---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
boolean | Boolean |
char | Character |
三、使用
1. 基本数据类型-包装类的实例(装箱)
⭕ 通过包装类的构造器实现:
int i = 500;
Integer t = new Integer(i);
⭕ 通过字符串参数构造包装类对象:
Float f = new Float(“4.56”);
//Long l = new Long(“asdf”); 报错:NumberFormatException
⭕ 错误举例:
Integer in3 = new Integer("123abc");
System.out.println(in3.toString());
/*
报错:
Exception in thread "main" java.lang.NumberFormatException: For input string: "123abc"
*/
2. 包装类-基本数据类型(拆箱)
⭕ 调用包装类的xxxValue()
方法:
boolean b = bObj.booleanValue();
注意:JDK1.5
之后,支持自动装箱,自动拆箱。但类型必须匹配
3. String-基本数据类型/包装类
⭕ 通过包装类的构造器实现:
int i = new Integer(“12”);
⭕ 通过包装类的parseXxx(String s)
静态方法:
Float f = Float.parseFloat(“12.1”);
⭕ 错误举例:
int num1 = (int)str1;
Integer in1 = (Integer)str1;
//可能会报NumberFormatException
4. 基本数据类型/包装类-String
⭕ 调用字符串重载的valueOf()
方法:
String fstr = String.valueOf(2.34f);
⭕ 更直接的方式:
String intStr = 5 + "";
5. 转换图
四、经典题目
//(1)
Object o1 = true ? new Integer(1) : new Double(2.0);
System.out.println(o1);//1.0
Object o2;
if (true)
o2 = new Integer(1);
else
o2 = new Double(2.0);
System.out.println(o2);//1
}
//(2)
//java
Integer i = new Integer(1);
Integer j = new Integer(1);
System.out.println(i == j);//false
Integer m = 1;
Integer n = 1;
System.out.println(m == n);//true
Integer x = 128;
Integer y = 128;
System.out.println(x == y);//false
来源:https://blog.csdn.net/weixin_52533007/article/details/124892342


猜你喜欢
- 前言:当工具类对多个模型类进行排序,比较等操作的时候,需要书写大量重复代码,因为懒人总要想怎么省事的,所以考虑使用泛型这个玩意简化代码案例:
- 一、百度百科Sentinel 是面向分布式服务架构的高可用流量防护组件,主要以流量为切入点,从限流、流量整形、熔断降级、系统负载保护、热点防
- 线性表是其组成元素间具有线性关系的一种数据结构,对线性表的基本操作主要有,获取元素,设置元素值,遍历,插入,删除,查找,替换,排序等。而线性
- 背景SpringBoot的应用监控方案比较多,SpringBoot+Prometheus+Grafana是目前比较常用的方案之一。它们三者之
- 本文实例为大家分享了java开发利用jacob将word转pdf的具体代码,供大家参考,具体内容如下jacob 缺点:需要 window 环
- 这篇文章主要介绍了Spring如何使用注解的方式创建bean,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需
- throw抛出异常的方式比较直接:if(age < 0){throw new MyException("年龄不能为负数!&q
- 本文实例为大家分享了Android自定义广播接收的具体代码,供大家参考,具体内容如下实现效果:MainActivity.java代码:pac
- 本文实例讲述了Android编程实现类似天气预报图文字幕垂直滚动效果的方法。分享给大家供大家参考,具体如下:在很多天气或者新闻的应用中,我们
- 前言EventBus框架EventBus是一个通用的叫法,例如Google出品的Guava,Guava是一个庞大的库,EventBus只是它
- 这是一次阿里面试里被问到的题目,在我的印象中,final修饰的方法是不能被子类重写的。如果在子类中重写final修饰的方法,在编译阶段就会提
- 本文实例为大家分享了AJAX二级联动效果的具体代码,供大家参考,具体内容如下Ajax.jsvar createAjax = function
- 一、Feign简介Feign是netflix开发的声明式、模板化的http客户端,在使用时就像调用本地(服务消费者自己)的方法一般,帮助我们
- 本文实例讲述了Android开发中MotionEvent坐标获取方法。分享给大家供大家参考,具体如下:Android MotionEvent
- 前言最近做项目的时候遇到一个卡劵的效果,由于自己觉得用图片来做的话可以会出现适配效果不好,再加上自己自定义view方面的知识比较薄弱,所以想
- 目录PdfSharp下载涉及知识点文档示例图核心代码PdfSharp一款开源的用于创建,操作PDF文档的.Net类库,本文以一个简单的小例子
- 本篇介绍了SpringBoot 缓存(EhCache 2.x 篇),分享给大家,具体如下:SpringBoot 缓存在 spring Boo
- 最近在公司,项目不是很忙了,偶尔看见一个兄台在CSDN求助,帮忙要一个自定义的渐变色进度条,我当时看了一下进度条,感觉挺漂亮的,就尝试的去自
- 服务器端代码:import java.io.BufferedReader; import java.io.InputStreamR
- 结论:HashMap对象的key、value值均可为null。HahTable对象的key、value值均不可为null。且两者的的key值