在封装中有一种特殊的类,能够把基本的数据类型进行转换来方便实际的使用。我们在之前提到的一些数据类型,最明显的特征是所有字母为小写状态,那么经过Wrapper的包装后,首字母就变成了大写。下面我们就这种特殊的封装类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
到此这篇关于Java全面细致讲解Wrapper的使用的文章就介绍到这了,更多相关Java Wrapper内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
沃梦达教程
本文标题为:Java全面细致讲解Wrapper的使用


猜你喜欢
- Java中的日期时间处理及格式化处理 2023-04-18
- Springboot整合minio实现文件服务的教程详解 2022-12-03
- SpringBoot使用thymeleaf实现一个前端表格方法详解 2023-06-06
- 深入了解Spring的事务传播机制 2023-06-02
- ExecutorService Callable Future多线程返回结果原理解析 2023-06-01
- 基于Java Agent的premain方式实现方法耗时监控问题 2023-06-17
- JSP 制作验证码的实例详解 2023-07-30
- Spring Security权限想要细化到按钮实现示例 2023-03-07
- Java实现顺序表的操作详解 2023-05-19
- JSP页面间传值问题实例简析 2023-08-03