基本数据类型封装类

基本数据类型封装类

  • Java的基本数据类byte short int long char float double boolean
  • java给每一个基本数据类型都提供了一个对应的封装类 ,封装类可以对数据进行更多的处理。 封装除char是character和int是Integer
  • 其他是首字母大写就是类名
    在这里插入图片描述

一. 数值型 Integer

  1. static int
    MAX_VALUE 保持 int 类型的最大值的常量可取的值为(2的31次方-1)。
  2. static int
    MIN_VALUE 保持 int 类型的最小值的常量可取的值为 (-2的31次方)。
  3. static Class
    TYPE 表示基本类型 int 的 Class 实例。
@Test
	void test04() {
		//最大值和最小值
		System.out.println("最大值"+Integer.MAX_VALUE);//最大值2147483647
		System.out.println("最小值"+Integer.MIN_VALUE);//最小值-2147483648
		System.out.println(Integer.TYPE);//int
	}

补充:自动装箱,自动拆箱

  • 自动装箱:将int类型转为Integer(编译的时候 默认调valueOf)
    自动拆箱 :将Integer转为int类型(将封装类转为基本类型)直接赋值

    在这里插入图片描述
  • Integer integer=10;会在编译时变成Integer integer = integer.intValue(10);自动装箱
@Test
	void test03() {
		//自动装箱
		Integer i01=10;
		Integer i02=new Integer(20);//手动装
		Integer i03=Integer.valueOf(30);//手动装
		//拆箱
		int num01=i01;
		int num02=i01.intValue();//手动拆
	}

在这里插入图片描述

  • 在使用自动装箱时,注意 byte常量池
@Test
	void test() {
		Integer i01=new Integer(100);
		Integer i02=new Integer(100);
		System.out.println(i01.equals(i02));//true
		System.out.println(i01==i02);//false
		Integer i03=-128;
		Integer i04=-128;
		System.out.println(i03.equals(i04));//true
		System.out.println(i03==i04);//true
	}
  • byte常量池(-128-127),当数值在-128–127时,使用byte常量池的数字对象,当它大于127或小于-128就会离开byte常量池,进行实例化
    在这里插入图片描述

类型转换:int ----->其他类型的常用方法

  1. byte
    byteValue() 以 byte 类型返回该 Integer 的值。
  2. short
    shortValue() 以 short 类型返回该 Integer 的值。
  3. long
    longValue() 以 long 类型返回该 Integer 的值。
  4. float
    floatValue() 以 float 类型返回该 Integer 的值。
  5. double
    doubleValue() 以 double 类型返回该 Integer 的值。
  6. int
    intValue() 以 int 类型返回该 Integer 的值。
  7. static String
    toBinaryString(int i) 以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式。
//类型转换
	@Test
	void test06() {
		// 直接将 int类型的数值赋值给Integer类型的变量    
		Integer integer01=10;
		Integer integer = Integer.valueOf(10);
		int num=10;//不是对象
		System.out.println(integer instanceof Integer);//true
//	    System.out.println(integer instanceof int);//直接报错
		//转换 byte short long float double int
		byte  byteValue=integer01.byteValue();
		System.out.println(byteValue);//10
		short  shortValue01=integer01.shortValue();
		System.out.println(shortValue01);//10
		long  longValue02=integer01.longValue();
		System.out.println(longValue02);//10
		float  floatValue03=integer01.floatValue();
		System.out.println(floatValue03);//10.0
		double  doubleValue04=integer01.doubleValue();
		System.out.println(doubleValue04);//10.0
		int  intValue05=integer01.intValue();
		System.out.println(intValue05);//10
		//快速将int转为String,使用+" "的方式
		String string = integer01.toString();
		System.out.println(string);//10
		//toBinaryString得到String类型的结果
		String binaryString = Integer.toBinaryString(10);
		System.out.println(binaryString);//1010
	}

类型转换: 其他类型----->int

  1. static Integer
    valueOf(String s) 返回保持指定的 String 的值的 Integer 对象。
  2. static int
    parseInt(String s) 将字符串参数作为有符号的十进制整数进行分析。
  3. static int
    parseInt(String s, int radix) 使用第二个参数指定的基数,将字符串参数解析为有符号的整数。
  4. static int
    reverse(int i) 返回通过反转指定 int 值的二进制补码表示形式中位的顺序而获得的值。
//类型转换 其他类型转为int类型
		@Test
		void test07() {
			String num="200";
			System.out.println("转换前"+num+100);//转换前200100
			//valueOf(String s)  返回保持指定的 String 的值的 Integer 对象。
			Integer valueOf = Integer.valueOf(num);//得到一个Integer对象
			System.out.println("转换后"+(valueOf+100));//转换后300
			//parseInt(String s) 将字符串参数作为有符号的十进制整数进行分析。
			int parseInt = Integer.parseInt(num);//得到的是int类型
			System.out.println(parseInt+200);//400
			//parseInt(String s, int radix)  使用第二个参数指定的基数,将字符串参数解析为有符号的整数。
			//括号第一个为字符串,第二个为进制
			int parseInt2 = Integer.parseInt("1001",8);//513
			System.out.println(parseInt2);
			//reverse(int i) 返回通过反转指定 int 值的二进制补码表示形式中位的顺序而获得的值。
			//十进制:10变为二进制为1010---->00001010   补码11110101
			int reverse = Integer.reverse(10);
			System.out.println(reverse);//1342177280
		}
  1. int
    compareTo(Integer anotherInteger) 在数字上比较两个 Integer 对象。
@Test
		void test08() {
			Integer integer01=130;//是对象
			 //compareTo(Integer anotherInteger) 在数字上比较两个 Integer 对象。 
			//结果是1  0  -1
			int compareTo = integer01.compareTo(130);
			System.out.println(compareTo);//0
			int compareTo01 = integer01.compareTo(80);
			System.out.println(compareTo01);//1
			int compareTo02 = integer01.compareTo(800);
			System.out.println(compareTo02);//-1
		}

二.字符型 character

  1. static char
    toLowerCase(char ch) 使用来自 UnicodeData 文件的大小写映射信息将字符参数转换为小写。
  2. static char
    toUpperCase(char ch) 使用来自 UnicodeData 文件的大小写映射信息将字符参数转换为大写。
  3. String
    toString() 返回表示此 Character 值的 String 对象。
  4. static boolean
    isSpace(char ch) 已过时。 用 isWhitespace(char) 取代。
  5. static boolean
    isWhitespace(char ch) 确定指定字符依据 Java 标准是否为空白字符。
@Test
	void test() {
		//Character
		//进行字符串大小的判断
		Character ct='a';
		System.out.println(Character.isLowerCase('a'));//true
		System.out.println(Character.isUpperCase('a'));//flase
		Character.isSpace('d');//已经过时的方法,但是目前可以使用
		//转换
		String string = ct.toString();
		System.out.println(string);//a
		//判断输入的是一个小写字母 
		char c1='a';
		for(int i=97;i<=122;i++) {
			if(c1==i) {
				System.out.println("这个字母是小写的");
			}
		}

三.布尔型 Boolean

  1. boolean
    booleanValue() 将此 Boolean 对象的值作为基本布尔值返回。
  2. static boolean
    parseBoolean(String s) 将字符串参数分析为 boolean 值。
@Test
	void test01() {
		//自动拆箱
		boolean bool=Boolean.TRUE;
		//转换
		Boolean bool01=new Boolean("true");
		System.out.println(bool01);//true
		boolean parseBoolean = Boolean.parseBoolean("123");
		System.out.println(parseBoolean);
	}

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值