基本数据类型包装类
来源:互联网 发布:高级数据恢复工程师 编辑:程序博客网 时间:2024/04/29 20:59
1.包装类介绍
在java中有一个设计原则“一切皆对象”,java中的基本数据类型就完全不符合这种设计思想,因为八种基本数据类型并不是引用数据类型,所以java中为了解决这样的问题,JDK1.5以后引入了八种基本数据类型的包装类 。
2.基本数据类型包装类
基本数据类型包装类intIntegercharCharacterfloatFloatdoubleDoublebooleanBooleanbyteByteshortShortlongLong八种包装类分为两大类型:
Number:Integer、Short、Long、Double、Float、Byte都是Number的子类表示一个数字。
Object:Character、Boolean、都是Object的直接子类
3.装箱及拆箱操作
将一个基本数据类型转换为包装类,那么这样的操作称为装箱操作。将一个包装类转换为一个基本数据类型,这样的操作称为拆箱操作。
方法 描述byteValue()Byte->bytedoubleValueDouble->doublefloatValue()Float->floatintValue()Integer->intlongValue()Long->longshortValue() Short->short4.转型操作
在包装类中,可以将一个字符串变为指定的基本数据类型,一般在输入数据时会使用较多。
在Integer类中将String变为int型数据:public static int parseInt(String s)
在Float类中将String变为float型数据:public static float parseFloat(String s)
注意:转型操作时,字符串必须由数字组成,否则会出现错误哦
5.享元设计模式
享元模式(Flyweight Pattern) 它使用共享对象,用来尽可能减少内存使用量以及分享资讯给尽可能多的相似对象:它适合用于当大量对象只是重复因而导致无法令人接受的使用大量内存。通常对象中的部分状态是可以分享。常见做法是把它们放在外部数据结构,当需要使用时在将他们传递给享元。
运用共享技术有效的支持大量细粒度的对象。
/**jdk1.5新特性:包装类一、包装类的赋值方式(1)使用new关键字创建对象(2)直接给包装类赋值*/public class WrapperClassDemo{public static void main(String[] args){Long x1 = new Long(100);//创建包装类对象long x2 = 100L;Long x3 = 100L;//直接给包装类赋值(自动装箱)long x4 = x3;//(自动拆箱)long x5 = x3.longValue();//手动拆箱//字符串转基本数据类型必须为数字型的字符串String s1 = "12345";int x6 = Integer.parseInt(s1);//把一个字符串转换为int基本数据类型System.out.println(x6);Integer x7 = Integer.valueOf(s1);System.out.println("x7="+x7);System.out.println("------------------------------");Integer x8 = new Integer(10);Integer x9 = new Integer(10);//Integer直接赋值时,当值为1个字节内的数时,将使用同一个对象//Byte Short Long Integer 享元设计模式Integer x10 = 127;Integer x11 = 127;System.out.println(x8==x9);System.out.println(x8==x10);System.out.println(x10==x11);}}
0 0
- 基本数据类型包装类
- 基本数据类型包装类
- 基本数据类型包装类
- 基本数据类型包装类
- 基本数据类型包装类
- 基本数据类型包装类
- 基本数据类型包装类
- 基本数据类型包装类
- 基本数据类型包装类
- 基本数据类型对象包装类
- 基本数据类型对象包装类
- 基本数据类型包装l类
- java基本数据类型包装类
- 基本数据类型对象包装类
- 基本数据类型对象包装类
- 基本数据类型对象包装类
- 基本数据类型包装类(手记)
- 基本数据类型和包装类
- 分水岭算法(Watershed Algorithm)
- 黑马程序员 JAVA学习笔记 —— 正则表达式
- 梦中的白莲
- liferay6.1.1之使用jsf
- CentOS 6.2 安装教程
- 基本数据类型包装类
- mysql ibdata1释放空间处理
- 【问卷调查】社团对海大学生成长的影响研究(及部分调查结果)
- Lua 简介
- 黑马程序员 JAVA学习笔记 ——反射
- apache的版本选择问题,bianry与src的区别,和安装问题。
- Java递归和非递归遍历目录
- Hadoop 稀疏矩阵乘法的MapReduce计算
- SQL server中将一个表中一列数据更新到另一个表中,该如何解决