JAVA基础04-包装类对象

一、为什么要有包装类对象?有什么作用?
1、基本数据类型之间的相互转换不是都可以制动转换的,而你强制转换又会出问题,比如String类型的转换为int类型的,那么jdk为了方便用户就提供了相应的包装类。
2、有时候一个函数需要传递一个Object的变量 而你想传递int类型的进去显然不行,怎么办呢,用到了包装类。

二、包装类对象
基本类型 包装类型

byte         Byte

int Integer

short Short

long Long

float Float

double Double

boolean Boolean

char Character

三、包装类对象的常用方法
1、Integer

		//1、将字符创转换成int类型
		String str = "12433";
		int num = Integer.parseInt(str);
		System.out.println(num);
		
		//2、将int类型转换成Integer类型
		Integer in = Integer.valueOf(12);

四、equals和==区别
1、“= =”
“= =” 比较的是变量(栈)内存中存放的对象的(堆)内存地址,用来判断两个对象的地址是否相同,即是否是指相同一个对象。比较的是真正意义上的指针操作。
2、equals
equals用来比较的是两个对象的内容是否相等,由于所有的类都是继承自java.lang.Object类的,所以适用于所有对象,如果没有对该方法进行覆盖的话,调用的仍然是Object类中的方法,而Object中的equals方法返回的却是"= ="的判断。

public class equals {
	public static void main(String[] args) {
        String a = new String("ab"); // a 为一个引用
        String b = new String("ab"); // b为另一个引用,对象的内容一样
        String aa = "ab"; // 放在常量池中
        String bb = "ab"; // 从常量池中查找
        
        if (aa == bb) {
        	System.out.println("aa==bb");
        }// true
            
        
        if (a == b){
        	System.out.println("a==b");
        } // false,非同一对象
            
        
        if (a.equals(b)){
        	System.out.println("true");
        } // true
            
        
        if (42 == 42.0) { 
            System.out.println("true");
        }// true
        
	}
}

猜你喜欢

转载自blog.csdn.net/qq_36675851/article/details/83932414
今日推荐