1. 程式人生 > 其它 >想把原來的小米的便籤內容轉到不是小米的新手機,怎麼操作

想把原來的小米的便籤內容轉到不是小米的新手機,怎麼操作

包裝類

包裝類概述

什麼是包裝類

  1. 基本資料型別所對應的引用資料型別
  2. Object可統一所有資料,包裝類的預設值是null

包裝類對應

基本資料型別 包裝型別
byte Byte
short Short
int Integer
long Long
float Float
double Double
boolean Boolean
char Character

型別轉換:裝箱、拆箱

型別轉換

  1. 八種包裝類提供不同型別間的轉換方法:

    • Number父類中提供的6個共性方法
    • parseXXX()靜態方法
    • valueOf()靜態方法
  2. 注意:需保證型別相容,否則丟擲NumberFormatException異常

裝箱

基本資料型別轉換為引用資料型別

//型別轉換:裝箱,基本型別轉換為引用型別
//基本型別
int num1=39;
//使用Integer類建立物件
Integer integer1=new Integer(num1);
Integer integer2=Integer.valueOf(num1);
System.out.println("裝箱");
System.out.println(integer2);
System.out.println(integer1);

 //jdk1.5之後,Java提供自動裝箱的功能
 int age=49;
 //自動裝箱
 Integer integer4=age;
 System.out.println("自動裝箱");
 System.out.println(age);

拆箱

引用型別轉換為基本型別

//型別轉換:拆箱,引用型別轉換為基本型別
Integer integer3=new Integer(100);
int num2=integer3.intValue();
System.out.println("拆箱");
System.out.println(num2);

 //jdk1.5之後,Java提供自動拆箱的功能
 int age=49;
 //自動拆箱
 int age2=integer4;
 System.out.println("自動拆箱");
 System.out.println(integer4);

基本型別和字串轉換

//基本型別和字串之間轉換
//1.基本型別轉換為字串
int n1=255;
//1.1使用"+"
String s1=n1+"";
//1.2使用Integer中的toString()方法
String s2=Integer.toString(n1);
System.out.println(s1);
System.out.println(s2);


//2.字串轉換成基本型別
String str="135";
//使用Integer提供的parseXXX()
int n2=Integer.parseInt(str);
System.out.println(n2);

//boolean字串形式轉成基本型別。"true"--->true   非"true"--->false
String str2="tru1";
boolean b1=Boolean.parseBoolean(str2);
System.out.println(b1);

整數緩衝區

  1. Java預先建立了256個常用的整數包裝型別物件

  2. 在實際應用中,對已建立的物件進行復用

    public class Integer{
         public static Integer valueOf(int i) {
            if (i >= IntegerCache.low && i <= IntegerCache.high)
                return IntegerCache.cache[i + (-IntegerCache.low)];
            return new Integer(i);
        }
    }
    
    
     private static class IntegerCache {
            static final int low = -128;
            static final int high;//127
            static final Integer cache[];
    }
    
    
    
    public class Demo02 {
        public static void main(String[] args) {
            //面試題
            Integer integer=new Integer(100);
            Integer integer2=new Integer(100);
            System.out.println(integer==integer2);//false
    
            Integer integer3=100;//自動裝箱
            Integer integer4=100;
            System.out.println(integer3==integer4);//true,因為100在-128~127之間,所以返回的就是Integer緩衝區裡的物件 
    
            Integer integer5=200;//自動裝箱
            Integer integer6=200;
            System.out.println(integer5==integer6);//fasle,因為200不在-128~127之間,所以返回的是在堆裡開出來的新的空間,new Integer(i)
        }
    }