• Java核心知识:包装类


    包装类类型

    在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情形。为了解决这个问题,Java 语言为每一个内置数据类型提供了对应的包装类。

    所有包装类(如:Integer,Long,Byte,Double,Float,Short)都是抽象类Number的子类。

    基本数据类型包装类
    byteByte
    shortShort
    intInteger
    longLong
    floatFloat
    doubleDouble
    charCharacter
    booleanBoolean

    在这里插入图片描述

    装箱与拆包

    装箱就是把基本类型转为包装类对象,拆箱就是把包装类还原为基本类型。
    从JDk1.5开始,实现了自动装箱,自动拆箱。也就是基本类型和包装类自动转换。

    如直接把int类型的整数赋值给包装类,可以实现自动装箱;进行数学运算时,包装类会自动拆箱为基本类型再计算。

    手动转换可使用以下方法:

    基本数据类型包装类基本类型转包装类包装类转基本类型
    byteByteByte.valueOf(byte)byteInstance.byteValue()
    shortShortShort.valueOf(short)shortInstance.shortValue()
    intIntegerInteger.valueOf(int)integerInstance.intValue()
    longLongLong.valueOf(long)longInstance.longValue()
    floatFloatFloat.valueOf(float)floatInstance.floatValue()
    doubleDoubleDouble.valueOf(double)doubleInstance.doubleValue()
    charCharacterCharacter.valueOf(char)charInstance.charValue()
    booleanBooleanBoolean.valueOf(booleann)booleanInstance.booleanValue()

    基本类型与字符串相互转换

    1.基本类型转字符串

    方法1:基本数据 + “”

    方法2:包装类的静态方法 static String toString(int i),返回一个标识指定整数的String类型

    方法3:使用String类的静态方法:static String valueOf(int i)

    2.字符串转基本数据类型

    使用包装类的静态方法parseXX(字符串)

    示例:

    package base17_wrapper_class;
    
    
    public class StringParse {
        public static void main(String[] args) {
            // 基本类型转字符串
            String s1 = 66 + "";
            System.out.println(s1 + 100);  // 66100
            String s2 = Integer.toString(66);
            System.out.println(s2 + 100); // 66100
            String s3 = String.valueOf(66);
            System.out.println(s3 + 100);
    
            // 字符串转基本类型
            int i = Integer.parseInt(s1);
            System.out.println(i + 1);  // 67
    
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
  • 相关阅读:
    企业架构LNMP学习笔记29
    记一次从redis获取值后转换问题
    FFmpeg编译支持x264/openH264/dash
    12 Python正则表达式
    layui 表格(table)合计 取整数
    别再用 System.currentTimeMillis 统计耗时了,太 Low,试试 Spring Boot 源码在用的 StopWatch吧,够优雅
    SpringBoot3.2更新声明!
    调整网络时需要注意的事项
    人工智能和大数据:跨境电商如何实现定制化营销?
    Rust 从入门到精通12-集合
  • 原文地址:https://blog.csdn.net/qq_43745578/article/details/125570160