包装类存在的意义:

1、对于有些情况,我们不能使用基本数据类型,只能使用引用数据类型。这个时候使用包装类对基本数据类型进行类话来实现。

在jdk1.5前,我们必须手动将基本数据类型数据包装,1.5版本后,当需要包装类时会自动将基本数据类型包装。

2、使用包装类的各种方法+常量,可以实现对基本数据类型的数据的各种操作,方便使用。

*、包装类的类型

 基本数据类型         包装类
* byte java.lang.Byte
* short java.lang.Short
* int java.lang.Integer
* long java.lang.Long
*
* float java.lang.Float
* double java.lang.Double
*
* boolean java.lang.Boolean
*
* char java.lang.Character

*、包装类的创建方法

public class Test01
{ public static void main(String[] args) { int a = 123;
//方法1,包装类调用基本类型变量
Integer a1 = new Integer(a);
//方法2
Integer a2 = new Integer(123);
}
}

*、对于有些情况,我们不能使用基本数据类型,只能使用引用数据类型。这个时候使用包装类对基本数据类型进行类话来实现。

public class Test02
{
public static void main(String[] args) { int a = 123;
boolean b = true;
//jdk1.5版本之前,八中基本数据类型是不同直接赋值给Object类,需要进行包装类进行包装
Integer a1 = new Integer(a);
Boolean b1 = new Boolean(b); d1(a1);
d1(b1); //知道jdk1.5后,才可以直接将八中基本数据类型赋值给Object类,因为系统自动进行了包装
d1(a);
d1(b); } //方法d1,入参可以是多有的数据类型,包括所有的引用数据类型+基本数据类型
public static void d1(Object o) {
System.out.println(o);
}
}

*、使用包装类的各种方法+常量,可以实现对基本数据类型的数据的各种操作,方便使用。--包装类的常用方法

public class Test02
{
public static void main(String[] args) { //1、包装类Integer的常量MAX_VALUE、MIN_VALUE
System.out.println(Integer.MAX_VALUE);//获取int类型的最大值
System.out.println(Integer.MIN_VALUE);//获取int类型的最小值 //2、intValue()包装类转化为基本数据类型的数据
Integer a = new Integer(123);
int a1 = a.intValue(); //123 //、看来高版本的jdk,可以自动在包装类转和基本数据类型转换,其实是自动添加了intValue()方法
int a2 = a;
Integer b = 124; //3、‘重要 ’ parseInt()方法,将String类型的数字转换为int类型数字
//通过前台输入年龄,此时这个年龄是字符串类型,需要转换为int类型后台处理
int age = Integer.parseInt("26");//结果就是26 //int age1 = Integer.parseInt("abc"); //这样是不行的,字符串中需要保存的是数字 //4、toBinaryString(x)转换为二进制,toOctalString(x)转换为八进制 ,toHexString(x)转换为16进制
String s1 = Integer.toBinaryString(11);
String s2 = Integer.toOctalString(11);
String s3 = Integer.toHexString(11); System.out.println(s1);//
System.out.println(s2);//
System.out.println(s3);//b //5、valueOf()方法,将String类型的数字或者int类型的数字转换为Integer
Integer a4 = Integer.valueOf(123);//
Integer a5 = Integer.valueOf("123");//
}
}

接下来下一篇文章总结Interger  int  String三种类型之间的相互转换方式

java-包装类的更多相关文章

  1. Java 包装类笔记

    @(JDK)[包装类] Java 包装类笔记 当需要使用到集合的时候,如果是基础数据类型,需要转换为包装类,再使用,在JDK1.5之前,每次使用的时候,都需要手动转换为包装类(称为装箱),然后在使用的 ...

  2. Java包装类及其拆箱装箱

    Java包装类,Wrapper~由于在java中,数据类型总共可分为两大种,基本数据类型(值类型)和类类型(引用数据类型).基本类型的数据不是对象,所以对于要将数据类型作为对象来使用的情况,java提 ...

  3. Java包装类的常量池

     Integer a=Integer.valueOf(100); Integer b=Integer.valueOf(100); System.out.println(a==b); Double d1 ...

  4. JAVA包装类的缓存范围

    JAVA包装类的缓存范围 前两天面试遇到两个关于JAVA源码的问题,记录下来提醒自己. 1.写出下面的输出结果 System.out.println(Integer.valueOf("100 ...

  5. java包装类和值类型的关系

    java包装类总是让人疑惑 它与值类型到底是怎么样一种关系? 本文将以int和Integer为例来探讨它们的关系 java值类型有int short char boolean byte long fl ...

  6. java包装类的缓存机制(转)

    出处: java包装类的缓存机制 java 包装类的缓存机制,是在Java 5中引入的一个有助于节省内存.提高性能的功能,只有在自动装箱时有效 Integer包装类 举个栗子: Integer a = ...

  7. java : 包装类 缓冲机制的使用(转载)

    摘要: 八种基本数据类型和其包装类中 Integer valueOf(int i).Byte valueOf(byte b).Short valueOf(short s).Long valueOf(l ...

  8. Java 包装类 自动装箱和拆箱

    包装类(Wrapper Class) 包装类是针对于原生数据类型的包装. 因为有8个原生数据类型,所以对应有8个包装类. 所有的包装类(8个)都位于java.lang下. Java中的8个包装类分别是 ...

  9. Java包装类缓存

    1.基本概念 在jdk1.5及之后的版本中,Java在5大包装类中(Byte,Charactor,Short,Integer,Long)增加了相应的私有静态成员内部类为相应包装类对象提供缓存机制,In ...

  10. 学习笔记——Java包装类

    由于Java不能定义基本类型的对象,所以通过包装类提供了各种可用方法的封装. 这一部分的知识,需要能够通过查看Integer.Boolean.Byte.Character.Double.Number类 ...

随机推荐

  1. wcf_first

    WCF包括3部分:client(需要连接到哪里,需要调用什么),service(宿主,及其消息的公开,地址的公开),wcf服务库(提供契约名称,及其怎么干) 步骤: 1.新建wcf库,其中提供一个契约 ...

  2. Ontology理论研究和应用建模

    转自:https://www.cnblogs.com/yes-V-can/p/8151275.html 目录 1 关于Ontology 1.1 Ontology的定义 1.2 Ontology的建模元 ...

  3. Linux chattr和lsattr命令使用方法

    你是否遇到过文件或目录具有可读写权限,但是使用root用户删除.修改时提示"Operation not permitted"的情况.可能是由于chattr设置了文件的隐藏保护权限导 ...

  4. MySQL 登陆

    #==========================登陆mysql ============================================ # 登陆用户名:-u,登陆IP: -h, ...

  5. ajax、json、jsonp

    这章分享下ajax.json.jsonp的学习记录,不得不说这真是些令人激动的技术. 推荐文章: https://segmentfault.com/a/1190000012469713 http:// ...

  6. 2019 年 React 学习路线图(转)

    转自:https://www.infoq.cn/article/AEkiVAiJf25LZmoUe_yc 之前我们已经介绍了2019 年 Vue 学习路线图,而 React 作为当前应用最广泛的前端框 ...

  7. X1226 和 AT24C16 地址冲突问题

    这几天开发eeprom功能的时候,利用单片机的I2C接口访问AT24C16.遇到一个问题: 发现AT24C16的最后一页写不进去.表现为写任何值后,再读取都是0. 经过几天的排查,发现是应为在I2C总 ...

  8. C语言之标准头文件模板

    /*======================================================================================* * 版权 : xxx ...

  9. SpringMVC的执行流程

    解析SpringMVC执行流程 SpringMVC的执行图大概如下所示 1.首先它是由客户端发起请求,到DispatcherServlet,被拦截后到HandlerMapping这里充当一个路由器,通 ...

  10. CentOS7编译安装mysql-5.6.43

    Step 1:安装编译需要的软件和工具 [root@node-1 ~]# yum install gcc gcc-c++ cmake ncurses-devel bison Step 2:创建mysq ...