包装类用法
一.包装类:
-
包装类(Wrapper Class):
Java语言是一个面向对象的语言,但是Java中的八大基本数据类型却是不面向对象的。基本类型的数据不具备"对象"的特性(没有成员变量和成员方法可以调用),因此,java为每种数据类型分别设计了对应的类,即包装类。
基本数据类型: | 对应的包装类 |
---|---|
byte | Byte |
int | Integer |
float | Float |
double | Double |
char | Char |
boolean | Boolean |
long | Long |
short | Short |
其中Char和Boolean的父类是继承Java.lang.Object
其余全部继承的父类是Java.lang.Number
(1)所有包装类都是final类型,因此不能创建他们的子类。
(2)包装类是不可变类,一个包装类的对象自创建后,他所包含的基本类型数据就不能被改变。
举例Integer的装箱和拆箱其他的包装类同理
装箱和拆箱
装箱:将基本数据类型变为包装类
拆箱:将包装类变为基本数据类型
int到integer类:
三种方法:
(1)使用Integer类的构造方法
(2)使用Integer类内部的valueOf( )方法
(3)自动装箱
(1)方法1:使用Integer类的构造方法
- public Integer(int value):将int类型转换为Integer类。
- public Integer(String s):将String类型转换为Integer类。
注意:使用此构造方法时,字符串内的字符必须由数字组成,不可以是字母或者其他形式,否则抛出NumberFormatException。
public static void main(String[] args)
{
Integer integer=new Integer(a); //利用构造方法装箱
Integer integer1=new Integer(b);
System.out.println(integer);
System.out.println(integer1); //需要注意如果b的字符串赋值不是纯数字无法转换称Integer类
}
方法2.使用内部类valueOf( )方法
- public static Integer valueOf(int i):将int类型转换为Integer类。
Integer.valueOf(a);
Integer.valueOf(b);
// Integer.valueOf(c); //boolean定义的变量无法包装成Integer类型
方法3.自动装箱
char d='a';
Integer s = Integer.valueOf(d);
System.out.println(d); //char定义的变量包装成Integer类,其值会转换成相应的ASCII值
Integer f=100; //第三种装箱方式,自动装箱,但并不是很自动
//Integer g='d'; 无法直接将字符串自动装箱
Integer类到 int:
(1)调用包装类的intValue()方法
(2)通过调用自身的valueOf()方法
( 3 )通过自动拆箱:
方法一:
Integer a=new Integer(12);
int b=a.intValue();//调用Integer的intValue将Integer转换为int
方法二:
Integer a=new Integer(12);
int d=Integer.valueOf(a);//通过调用自身的valueOf实现拆箱的操作
方法三:
Integer a=new Integer(12);
System.out.println(a);//自动拆箱,实现也是通过valueOf的操作
int到Integer | Integer到int |
---|---|
使用Integer类的构造方法 | 调用Integer类的intValue()方法 |
使用Integer类内部的valueOf( )方法 | 自动拆箱 |
自动装箱 |
包装类 装箱 拆箱
Byte valueOf() byteValue()
Short valueOf() shortValue()
Integer valueOf() intValue()
Long valueOf() longValue()
Float valueOf() floatValue()
Double valueOf() doubleValue()
Character valueOf() charValue()
Boolean valueOf() booleanValue()
4.int类型数据和String形式之间的相互转换:
intl到String | String到int |
---|---|
intl到String | String–>Integer–>int |
String类的valueOf()方法 | int parseInt(String s) |
int --> Integer -->String (所用方法:valueOf()+toString()) | |
toString(int i) |
三.Character类
1.Character类概述:
Character类在对象中包装了一个char的值,用于对单个字符进行操作。
该类提供了几种方法来操纵字符,以确定字符的类别(小写字母,数字,等等),并将字符从大写转换成小写等。
2.Character类的构造方法:
public Character(char value):将char类型转换为Character类。
Character ch1 = new Character('a');
System.out.println("ch1:"+ch1); //ch1:97
————————————————
版权声明:本文为CSDN博主「我一直在流浪」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
1:"+ch1); //ch1:97
[外链图片转存中...(img-slUwV0Ir-1679913380290)]
————————————————
版权声明:本文为CSDN博主「我一直在流浪」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42764468/article/details/87898191