Java 包装类

  1. 包装类就是把基本类型的数据包装成对象。

|---------|-----------------------------|
| 基本类型 | 包装类(引用类型,包装类都位于java.Lang包下) |
| byte | Byte |
| short | Short |
| int | Integer 【特殊】 |
| long | Long |
| float | Float |
| double | Double |
| char | Character 【特殊】 |
| boolean | Boolean |

  1. 基本类型的数据包装成对象方法(以int为例) 其他的同理(valueOf 方法 )

public static Integer valueOf(int i)

java 复制代码
public static void main(String[] args) {
        //Integer
        Integer i =  Integer.valueOf(5);
        System.out.println(i);

        //自动装箱 可以自动把基本数据类型的数据转换成包装类对象
        Integer i2 = 5;
        System.out.println(i2);

        //自动拆箱 可以自动把包装类对象基本数据类型
        int i3 = i2;

        //泛型和集合不支持基本数据类型 只能支持引用数据类型(包装类对象)
        ArrayList<Integer> list = new ArrayList<>();
        list.add(7);
        list.add(8);
        list.add(9);

        int i4 = list.get(0);//自动拆箱

}
  1. 包装类的常见方法

(1) 可以把基本数据类型的数据转换成字符串类型

public static String toString(double d)

public String toString()

(2) 可以把字符串类型的数值转换成数值本身的数据类型

public static int parseInt(String s)

public static Integer valueOf(String s)

java 复制代码
public static void main(String[] args) {

        // 1. 可以把基本数据类型的数据转换成字符串类型
        Integer a = 15;
        String s1 = Integer.toString(a);
        System.out.println(s1 + 1);//151

        String s2 = a.toString();
        System.out.println(s2 + 1);//151

        //常用
        String s3 = a + "";
        System.out.println(s3 + 1);//151

        //2. 可以把字符串类型的数值转换成数值本身的数据类型
        String s4 = "18";
        //int i5 = Integer.parseInt(s4) + 1;
        int i5 = Integer.valueOf(s4) + 1;//建议使用
        System.out.println(i5);//19

        String s5 = "18.8";
        //double d = Double.parseDouble(s5);
        double d = Double.valueOf(s5);//建议使用
        System.out.println(d+1.0);//19.8


}
相关推荐
唐青枫6 分钟前
Java Future 与 CompletableFuture 实战指南:从异步结果到任务编排
java
长孙豪翔14 分钟前
在.net中读写config文件的各种方法
java·数据库·.net
tachibana215 分钟前
hot100 回文链表(234)
java·网络·数据结构·leetcode·链表
可乐ea21 分钟前
【Java八股|第10篇】Java 中的包装类和自动拆装箱
java·面试题·包装类·java八股
zfoo-framework32 分钟前
mongo最佳实战(from mongo中文社区)
java
大气的小蜜蜂42 分钟前
基于Python+Django的健身房管理系统实现:核心亮点全流程解析
开发语言·python·django
天空'之城44 分钟前
Linux 系统编程 04:进程基础
linux·开发语言·进程基础
2zcode1 小时前
免费开源项目文档:基于MATLAB图像处理的药片检测与计数系统设计与实现
开发语言·图像处理·matlab
深盾科技_Virbox1 小时前
加密狗授权能力选型:从授权模型到全生命周期管理
java·网络·数据库
charlie1145141911 小时前
Cinux: 加载第一个内核:从 bootloader 跳进 C++
linux·开发语言·c++·嵌入式