14.Java包装类
来源:互联网 发布:新路由器有信号没网络 编辑:程序博客网 时间:2024/04/30 05:04
14.Java包装类
转载请保留原文链接: http://dashidan.com/article/java/basic/Java包装类.html① 包装类对应表— 包装类对应表 基本数据类型 包装类 byte Byte boolean Boolean boolean Boolean short Short char Character int Integer long Long float Float double Double ② 包装类的使用—对于包装类说,这些类的用途主要包含两种:* 作为和基本数据类型对应的类类型存在,方便涉及到对象的操作.* 包含每种基本数据类型的相关属性如最大值、最小值等,以及相关的操作方法.###1.实现int和Integer类之间的转换使用`Integer`类的构造方法和`intValue()`方法实现这些基本类型和包装类之间的相互转换.代码示例:
转载请保留原文链接: http://dashidan.com/article/java/basic/Java包装类.html
Java语言是一个面向对象的语言,但Java中的基本数据类型却是不面向对象的. 这在实际使用时存在很多的不便.
为了解决这个不足(例如:集合类中只能存放对象, 不能存放基本类型数据), 在设计类时为每个基本数据类型设计了一个对应的类进行代表, 这样八个和基本数据类型对应的类统称为包装类(Wrapper Class), 也翻译为外覆类或数据类型类.
在这八个类名中,除了Integer和Character类, 其它六个类的类名和基本数据类型相比, 只是类名的第一个字母大写.
由于八个包装类的使用比较类似,以最常用的`Integer`类为例, 介绍包装类的应用.
/** 将int类型转换为Integer类型*/int intNum = 10;Integer integer = new Integer(intNum);/** 将Integer类型转换为int类型*/int intValue = integer.intValue();
###2.`Integer`类常用方法* parseInt方法该方法的作用是将字符串转换为对应的数值. 代码示例:String s = "123";int n = Integer.parseInt(s);//将字符串"120"按照十进制转换为int,则结果为120int n = Integer.parseInt("120",10);//将字符串"12"按照十六进制转换为int,则结果为18int n = Integer.parseInt("12",16);//将字符串"ff"按照十六进制转换为int,则结果为255int n = Integer.parseInt("ff",16);
如果字符串都包含的不是都是数字字符,则程序执行将出现异常报错.
- toString方法
该方法的作用是将int类型转换为对应的String类型.
代码示例:
int m = 1000;String s = Integer.toString(m);//将int值转换为特定进制的字符串:
* 整数转化为字符串有2种方式:`Integer.toString()`方法和`整数 + “”`方式, 应该用那种呢? 先放结论: 用`整数 + “”`方式实现.![真相只有1个](http://localhost/img/common/truth.jpg)附带真像的代码:package com.dashidan.lesson13;/** * 大屎蛋教程网-dashidan.com * <p> * Java教程基础篇: 13. Java包装类 * 整数转化为字符串 */public class Demo2 { public static void main(String[] args) { int count = 100000; long t1 = System.currentTimeMillis(); System.out.println(""); for (int i = 0; i < count; i++) { Integer in = new Integer(100); String s1 = in.toString(); } long t2 = System.currentTimeMillis(); System.out.println(" t2 - t1 " + (t2 - t1)); for (int i = 0; i < count; i++) { String s2 = 100 + ""; } long t3 = System.currentTimeMillis(); System.out.println(" t3 - t2 " + (t3 - t2)); }}
输出: t2 - t1 12 t3 - t2 1`整数 + “”`方式比Integer.toString()的方式快了10倍左右.
③ 自动装包/拆包
JDK自1.5(5.0)版本引入了自动拆装箱(Autoboxing/unboxing)的语法, 也就是在进行基本数据类型和对应的包装类转换时, 系统将自动进行,大大方便了代码的书写.
/** int类型会自动转换为Integer类型*/int n = 12;/** Integer类型会自动转换为int类型*/Integer m = n;
代码示例:
package com.dashidan.lesson13;/** * 大屎蛋教程网-dashidan.com * <p> * Java教程基础篇: 13. Java包装类 */public class Demo1 { public static void main(String[] args) { /** 将int类型转换为Integer类型*/ int intNum = 10; Integer integer = new Integer(intNum); /** 将Integer类型转换为int类型*/ int intValue = integer.intValue(); System.out.println(" intNum " + intNum + " intValue " + intValue); /** 将字符串"666"按照十进制转换为int,则结果为666*/ int n0 = Integer.parseInt("666"); int n1 = Integer.parseInt("666", 10); /** 将字符串"12"按照十六进制转换为int,则结果为18*/ int n2 = Integer.parseInt("12", 16); /** 将字符串"FF"按照十六进制转换为int,则结果为255*/ int n3 = Integer.parseInt("FF", 16); System.out.println("n0 : " + n0 + " n1: " + n1 + " n2: " + n2 + " n3: " + n3); /** int类型会自动转换为Integer类型*/ int n = 12; /** Integer类型会自动转换为int类型*/ Integer m = n; if (m == n) { System.out.println(m == n); } }}
输出:
intNum 10 intValue 10n0 : 666 n1: 666 n2: 18 n3: 255true
④ 相关文章
Java集成开发环境
阅读全文
0 0
- 14.Java包装类
- java包装类
- Java包装类学习
- Java 包装类
- java包装类
- JAVA 包装类
- Java包装类
- JAVA 包装类
- java包装类笔记
- java 包装类
- java包装类
- JAVA笔记:包装类
- java的包装类
- 包装类--java
- java包装类
- java包装类
- java 包装类
- java包装类
- jsp日期插件My97DatePicker 强大的日期控件 使用方便简单
- node.js升级后npm工作报错
- 调研文档格式
- 前端学习Tips
- list,arraylist和linkedlist的区别
- 14.Java包装类
- imx6ul之ddr初始化
- echart折线图
- Android Studio如何创建assets目录
- 字符串计数-字典排序
- 华展云-让展览更高效 2017第十八届中国国际机床装备展览会会刊(参展商名录)
- springmvc 复习知识图
- IntelliJ IDEA 2017 破解
- Global Context-Aware Attention LSTM