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


}
相关推荐
matlab代码17 分钟前
基于matlab数字图像处理的指纹识别系统【源码68期】
开发语言·matlab
新时代牛马20 分钟前
PCI与PCIe 硬件原理、配置空间/BAR 与 Linux 驱动完整篇:从 LTSSM、TLP 到 ECAM 与probe
java·linux·服务器
Bs_MoneyMagnet27 分钟前
基于springboot+vue的医疗健康便民服务平台的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring
matlab代码36 分钟前
基于matlab的水果识别系统(苹果香蕉菠萝梨桃子)【源码65期】
开发语言·matlab
wuyk5551 小时前
从零吃透 MQTT 通信|第 8 章 FreeRTOS 多任务架构下 MQTT 工程架构,任务拆分、队列解耦、临界区保护
c语言·开发语言·stm32·学习·架构
weixin199701080161 小时前
[特殊字符]《跨境二手ERP对接Back Market:标准化API + 7~10工作日技术合规审核实录》(附Python源码)
开发语言·python·pandas
sunshine22 girl1 小时前
Java学习一 环境配置2 Idea的入门使用和maven配置,项目启动脚本配置
java·maven
尘客-追梦1 小时前
Day 01:插件化之前,先看清 ABI 这堵墙
开发语言·c++·qt
持敬chijing2 小时前
Python-数据类型-列表
开发语言·python·青少年编程
有点。2 小时前
*C++哈夫曼树与哈夫曼编码
java·c++·servlet