原创作品,可以转载,但是请标注出处地址http://www.cnblogs.com/V1haoge/p/5462489.html

1、8种基本数据类型都有各自的包装类,其对应关系为:

    基本————————————包装类
    byte————————————Byte
    short———————————Short
    char————————————Char
    int————————————Integer
    long————————————Long
    float————————————Float
    double———————————Double
    boolean——————————Boolean

2、自动装拆箱与手动装拆箱

  1)自动拆装箱:

    (1)自动装箱:Integer in = 123;

    (2)自动拆箱:int t = in;

  2)手动拆装箱:

    (1)手动装箱:Integer in1 = new Integer(123);

    (2)手动拆箱:int t1 = in1.intValue();

  3)Integer in1 = new Integer(123);与Integer in = 123;的区别:

    (1)前者不会触发自动装箱,后者会触发自动装箱;

    (2)一般情况下,在执行效率和资源占用上后者要优于第一种,但不是绝对。

3、将基本数据类型的数据包装成为包装类后,就可以利用包装类的各种方法,这里面最常用的就是对数据类型的转换,而其中最常用的还是整型与字符串型之间的转换:

  1)整型转换成为字符串型:假如定义:int i = 123;

    (1)String s1 = i + "";    //第一种方法

    (2)String s2 = Integer.toString(i);    //第二种方法

    (3)String s3 = String.valueOf(i);    //第三种方法

  2)字符串型转换成为整型:假如定义:String s = "456";

    (1)int i1 = Integer.valueOf(s);    //第一种方法

    (2)int i2 = Integer.parseInt(s);    //第二种方法

3、Integer类型的方法:toString()、toString(int i)、valueOf(int i)、valueOf(String str)

    (1)toString()方法:返回一个表示该Integer值得String对象,这是一个非静态方法,需要用对象名引用。

    (2)toString(int i)方法:返回一个表示指定整数(i)的String对象,这是一个静态方法,使用类名Integer点用。

    (3)valueOf(int i)方法:返回一个表示指定int值的Integer对象,这是一个静态方法,使用类名Integer点用。

    (4)valueOf(String str)方法:返回一个表示指定String的值的Integer对象,此为静态方法,使用类名Integer点用。

下面是测试代码:

 package lianxi;

 /**
* @author V1haoge
*/
public class Test183 { public static void main(String[] args) { int a = 1;
String str = "123";
Integer b = a; //自动装箱
int c = b;//自动拆箱
Integer d = new Integer(a); //手动装箱
int e = d.intValue();//手动拆箱 /*
* 实验int类型与String类型之间的互转
*/
//int转换String
int i = 123;
//转换开始
String s1 = i+"";//第一种方法
String s2 = String.valueOf(i);//第二种方法
String s3 = Integer.toString(i);//第三种方法
//下面用于输出转换结果
System.out.println(s1);
System.out.println(s2);
System.out.println(s3);
//String转换int
String s = "456";
//开始转换
int i1 = Integer.valueOf(s);//第一种方法
int i2 = Integer.parseInt(s);//第二种方法
//下面输出转换结果
System.out.println(i1);
System.out.println(i2); } }

显示结果为:

123
123
123
456
456

Java基础系列--包装类的更多相关文章

  1. 夯实Java基础系列1:Java面向对象三大特性(基础篇)

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 [https://github.com/h2pl/Java-Tutorial](https: ...

  2. 2015年12月28日 Java基础系列(六)流

    2015年12月28日 Java基础系列(六)流2015年12月28日 Java基础系列(六)流2015年12月28日 Java基础系列(六)流

  3. Java基础系列--static关键字

    原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/8477914.html 一.概述 static关键字是Java诸多关键字中较常使用的一个,从 ...

  4. Java基础系列-ArrayList

    原创文章,转载请标注出处:<Java基础系列-ArrayList> 一.概述 ArrayList底层使用的是数组.是List的可变数组实现,这里的可变是针对List而言,而不是底层数组. ...

  5. Java基础系列-Collector和Collectors

    原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10748925.html 一.概述 Collector是专门用来作为Stream的coll ...

  6. Java基础系列-二进制操作

    原创文章,转载请标注出处:<Java基础系列-二进制操作> 概述 Java源码中涉及到大量的二进制操作,非常的复杂,但非常的快速. Java二进制表示法 首先了解下二进制,二进制是相对十进 ...

  7. Java基础系列-equals方法和hashCode方法

    原创文章,转载请标注出处:<Java基础系列-equals方法和hashCode方法> 概述         equals方法和hashCode方法都是有Object类定义的. publi ...

  8. Java基础系列-Comparable和Comparator

    原创文章,转载请标注出处:<Java基础系列-Comparable和Comparator> 一.概述         Java中的排序是由Comparable和Comparator这两个接 ...

  9. Java基础系列--HashMap(JDK1.8)

    原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10022092.html Java基础系列-HashMap 1.8 概述 HashMap是 ...

随机推荐

  1. spring深入学习(一)-----IOC容器

    spring对于java程序员来说,重要性不可言喻,可以想象下如果没有他,我们要多做多少工作,下面一个系列来介绍下spring(5.x版本). spring模块 IOC概念 spring中最重要的两个 ...

  2. 学以致用三十一-----IPAddressField has been removed

    python 和 django版本 在进行makemigrations的时候报错 设置的字段 class Servers(models.Model): '''服务器信息''' hostname = m ...

  3. GXB动态重配置

    可选择重配置逻辑(Optional Reconfiguration Logic) 使能选项: • Capability registers • Control and status registers ...

  4. spring filter lister servlet

    https://blog.csdn.net/nacey5201/article/details/8547772 https://blog.csdn.net/xwl617756974/article/d ...

  5. c++中二级指针的使用场景

    二级指针的使用场景如下: 1.主要用来为指针变量分配内存空间: void GetMemory(char **p) { *p = ]; } 函数调用方式: char *str = NULL; GetMe ...

  6. 可遇不可求的Question之MySqlClient的Guid 类型的映射篇

    关于 Guid 类型的映射 MySql 没有原生的 Guid 类型,一般使用 binary(16) 或者 char(36) 这两个类型.早期版本的 Connector/Net 将 binary(16) ...

  7. jquery向Django后台发送数组

    在$.ajax中加入 traditional:true, //加上此项可以传数组 后端用 array = request.POST.getlist('ids') #django接收数组 来接收数组

  8. IDEA添加项目为library

    1.如果要作为library的项目没有被IDEA编译就先把项目放在IDEA里面编译一下,因为这样后面导入module会方便一点.下面直接附上步骤 2.假设你已经用IDEA编译好了作为library的项 ...

  9. Mybatis的JDBC提交设置/关闭mysql自动提交------关于mysql自动提交引发的惨剧

    学习Mybatis时提到了JDBC方式需要自己手动提交事务,如果不加session.commit会导致数据库的数据无法正常插入(程序本身又不给你报错,还装出一副我已经插入成功的样子) SqlSessi ...

  10. SQL数据库约束、默认和规则

    数据的完整性 实体完整性 又称为行完整性,即数据库中的所有行都具有一个非空且没有重复的主键值 MSSQL中通过唯一索引.PRIMARY KEY约束.UNIQUE约束.INDENTITY属性等来强制主键 ...