博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
10. 基本类型对应的包装类
阅读量:6149 次
发布时间:2019-06-21

本文共 1484 字,大约阅读时间需要 4 分钟。

一、通过包装类,可以将基本类型的值包装成对象

1. Java提供的8种基本数据类型不支持面向对象的编程机制,主要是为了照顾程序员的传统习惯

2. 基本数据类型的方便性:可以进行简单、有效的常规数据处理

3. 基本数据类型的制约:所有引用类型的变量都继承了Object类,都可当成Object类型变量使用,但基本数据类型的变量就不可以,如果有个方法需要Object类型的参数,但实际需要的值却是2、3.14等数值,这就比较难以处理

4. 包装类的提出,成功解决了8种基本数据类型的变量不能当成Object类型变量使用的问题

基本数据类型和包装类的对应关系
基本数据类型 包装类
byte Byte
short Short
int Integer
long Long
char Character
float Float
double Double
boolean Boolean

 

二、自动装箱 & 自动拆箱

1. 在JDK1.5之前,并没有这两项功能,所以只能通过以下途径实现

  • 基本数据类型变量变成包装类实例:使用对应包装类的valueOf()静态方法
  • 获得包装类实例中包装的基本类型变量:使用包装类提供的xxxValue()实例方法

2. 自动装箱:可以把一个基本类型变量直接赋给对应的包装类变量,或者赋给Object变量

3. 自动拆箱:可以把包装类变量直接赋给一个对应的基本类型变量

// ex1:直接把一个基本类型变量赋给Integer对象		Integer inObj = 5;		// ex2:直接把一个boolean类型变量赋给一个Object类型的变量		Object boolObj = true;		// ex3:直接把一个Integer对象赋给int类型的变量		int it = inObj;

补:有了自动装箱、自动拆箱和包装类的帮助,开发者便可以把基本类型的变量“近似”地当成对象使用,也可以把包装类实例“近似”地当成基本类型的变量使用。

 

三、基本类型变量和字符串之间的转换

1. 字符串类型 → 基本类型

  • 使用包装类提供的parseXxx(String s)静态方法,除Character之外的所有包装类都提供了该方法
  • 使用包装类提供的valueOf(String s)静态方法

2. 基本类型 → 字符串类型

  • 使用String类提供的valueOf(要转换的基本类型 形参名)静态方法
  • 将基本类型变量和""进行连接运算
// ex1:把字符串转换成int变量		String str1 = "123";		int it1 = Integer.parseInt(str1);		int it2 = Integer.valueOf(str1);				// ex2:把字符串转换成double变量		String str2 = "3.14";		double db1 = Double.parseDouble(str2);		double db2 = Double.valueOf(str2);		// ex3:把double变量转换成字符串		String str3 = String.valueOf(3.14);		String str4 = 3.14 + "";		// ex4:把boolean变量转换成字符串		String str5 = String.valueOf(true);		String str6 = true + "";

 

转载于:https://www.cnblogs.com/xzxl/p/10996441.html

你可能感兴趣的文章
Windows DHCP Server基于MAC地址过滤客户端请求实现IP地址的分配
查看>>
命令查询每个文件文件数
查看>>
《跟阿铭学Linux》第8章 文档的压缩与打包:课后习题与答案
查看>>
RAC表决磁盘管理和维护
查看>>
Apache通过mod_php5支持PHP
查看>>
发布一个TCP 吞吐性能测试小工具
查看>>
java学习:jdbc连接示例
查看>>
PHP执行批量mysql语句
查看>>
Extjs4.1.x 框架搭建 采用Application动态按需加载MVC各模块
查看>>
Silverlight 如何手动打包xap
查看>>
建筑电气暖通给排水协作流程
查看>>
JavaScript面向对象编程深入分析(2)
查看>>
linux 编码转换
查看>>
POJ-2287 Tian Ji -- The Horse Racing 贪心规则在动态规划中的应用 Or 纯贪心
查看>>
Windows8/Silverlight/WPF/WP7/HTML5周学习导读(1月7日-1月14日)
查看>>
关于C#导出 文本文件
查看>>
使用native 查询时,对特殊字符的处理。
查看>>
maclean liu的oracle学习经历--长篇连载
查看>>
ECSHOP调用指定分类的文章列表
查看>>
分享:动态库的链接和链接选项-L,-rpath-link,-rpath
查看>>