java包装类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
package com.Lucky.OftenClass;
/*
      包装类:1.为了解决现实中将基本数据类型转换成对象,以便操作【java。lang】
             2.实现字符串与基本数据类型之间的转换
       包装类特征:1.将八大基本数据类型的首个字母大写即可【char与int除外】
                   例如: float -->Float
                       char --> Character
                       int --> Integer
                 2.除了Character以及Booleany以外,其他包装类都属于数字型【java.lang.Number】的子类
 
 
 
         自动装箱的代码:Integer实例    test是传递的值
                      1.Intger int1=Integer.valueOf(test);
                      在valueOf()方法里面会判断传递的值是否在基本数据类型的范围之内,
                          如果在范围之内,就值就valueOf
                          如果不在范围之内,就new Integer();
 
          自动拆箱的代码:Integer实例
                      Integer Ig=5;  //自动装箱【将基本数据类型int转换成Integer】
                      int res=Ig;    //调用intValue();
 
 */
public class packClass {
 
    public static void main(String[] args) {
       ///Integer
        System.out.println("-----Integer------");
        System.out.println(Integer.MAX_VALUE);  //Integer的最大值
        System.out.println(Integer.MIN_VALUE);  //Integer的最小值
        System.out.println(Integer.SIZE);     //Integer的字节【位数】
        System.out.println(Integer.TYPE);      //Integer的底层的基本数据类型
 
        //注意点:实现字符串与基本数据类型的转换
           String str="22";
           String strFloat="3.14";
         //  int IntType=(int) str;  //无法进行强制转换【强制转换是指在数字型的数据类型之间的转换】
            /*
            包装类登场
             */
           int testInt=Integer.parseInt(str);
           double testFloat=Float.parseFloat(strFloat);
           System.out.println(testInt);
           System.out.println(testFloat);
 
 
 
          //自动装箱和自动拆箱
           Integer Ig=5//自动装箱【将基本数据类型int转换成Integer】
           int res=Ig;    //自动拆箱【隐藏代码:int gun=Ig.intValue();】
 
 
          //比较Integer中的== 与 equals   【面试题】
 
            Integer int1=28;            //自动装箱  int的范围「-127 ~ 128」在int范围内
            Integer int2=28;
            Integer err1=999;            //自动装箱  int的范围「-127 ~ 128」超出了int的范围
                                         // 【 隐藏代码:Integer integer = Integer.valueOf(err1);】
            Integer err2=999;
            Integer int4=new Integer(22);
            Integer int5=new Integer(22);
            System.out.println(int1==int2);   //true     [== 比较栈帧值]
            System.out.println(int4==int5);  //false  在对象中,栈帧里面存储的是在堆中的内存地址【每个对象所对应的地址不一样】
            System.out.println(int1.equals(int2));  //true   [equals比较具体值]
            System.out.println(err1==err2);  //false
 
 
 
 
    }
 
}

  

posted @   唯易人生  阅读(15)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示