包装類、Object類――Javaノート(八)

6560 ワード

パッケージ:
基本データ型のパッケージクラス
基本データ型
パッケージクラス
byte
Byte
short
Short
int
Integer
long
Long
char
Character
float
Float
double
Double
boolean
Boolean
 
 
 
 
 
 
 
 
 
基本データ型パッケージクラスはCharacterクラスを除き,他の7つに2つの構成方法がある.
1つの構造方法は、基本データ型自体を伝達する.
もう1つの構造方法はStringタイプを伝達し、Characterが少ないのはpublic Character(String c){}である.
 
包装類Boolean操作時
        Boolean b =  new boolean("TRUe");//内部パラメータはTRUE以外で大文字と小文字を区別せず、その他はデフォルトでFALSEである.
 
包装類の基本タイプ:
基本データ型value()メソッドの呼び出し
例:
   
Integer   a  =  new Integer();
//Integerパッケージクラスをintvalue()に呼び出すとintデータ型への移行に成功
    int  b  = a.intvalue();  
 
基本タイプの梱包クラス:
直接newその包装類は
例:
  
Integer   a  =  new Integer(16);
Java 5は、パッケージクラスの基本タイプ、基本タイプのパッケージクラスへの移行機能を提供し始めました
基本タイプの梱包クラス
基本データ型の値をパッケージクラスオブジェクトに直接割り当てることができます.
例:
     
  Integer  a  = 16;
包装類転基本タイプ
パッケージクラスオブジェクトを基本データ型の変数に直接割り当てることができます.
        int b = a;
Integerの値は等しいですか?
  1.次のように割り当てられます.
         Integer   a  =  new Integer(16);
         Integer   a2   =  new Integer(16);
        System.out.println("a1 == a2 "+ (a1 == a2));//false
このようなオブジェクトを作成するモードを使用すると、integerの値は2つのオブジェクトであるため待ちたくありません.
  2.Java 5の新しいプロパティを使用する場合:
          Integer   a  =  16;
          Integer   a2   =  16;
          System.out.println("a1 == a2 "+ (a1 == a2));//true
このモードを用いるとそれらは等しいだけであるが,それらの値はこの[−128127]区間でのみ等しい
byte,short,int,longのキャッシュ区間は同じである[-128127].
タイプ変換:
    String --------->  int   
    static int parseInt(String s); 
   
文字列パラメータを10進数整数として解析するparseInt(String s)メソッドを使用できます.
 1  //string ------> int

 2   int i = Integer.parseInt("0012");

 3   System.out.println("string ------> int"+"\t"+i);

 4  

 5   //int ------> string    Integer    static String toString(int i); 

 6   //String  public static String valueOf(int i)

 7   // toString(int i),valueOf(int i) int ------> string

 8  

 9 

10   String s = Integer.toString(i);

11   System.out.println("int ------> string"+"\t"+s);

12 

13     int i1 = 123;

14   System.out.println("int ------> string"+"\t"+String.valueOf(i1));

Objectクラス
すべての親の共通の親クラスは、1つのクラスが表示されずに1つのクラスを継承すると、その直接の親クラスはobjectに違いなく、すべてのオブジェクト(配列を含む)がこのクラスを実現する方法です.
すべてのデータ型はobjectで受信できます
一般的な方法:
boolean equals(Object obj)は、オブジェクトがこのオブジェクトと等しいかどうかを示します.
         
equalsのデフォルトの比較はスタック内のアドレスであり,==と同様に比較アドレスである.
==2つの変数が等しいかどうかを判断する
TRUEは同じオブジェクトを指す必要があります.親子または平レベルの関係を持つ2つのオブジェクトしか比較できません.
 1   System.out.println(new Integer(1).equals(new Integer(1))); //true

 2           //  integer ,integer object equals 

 3             //integer equals 

 4               public boolean equals(Object obj){

 5    if(obj instanceof Integer){

 6     return value == ((Integer)obj).intValue();

 7    }

 8    return false;

 9                   }

10             System.out.println(new Object().equals(new Object())); //false            

11         // String equals() 

12         int hashCode() //  , hashCode 

13      

14         System.out.println(new Object().hashCode());//1599065238

15        System.out.println(new Object().hashCode()); //1879096508

String toString()は、オブジェクトの文字列表示を返します.
オブジェクトのステータスを文字列で記述
オブジェクトを直接印刷するとデフォルトでtoString()メソッドが呼び出されます