Integer クラス

Revised: Jan./2nd/2002: Since: Jan./1st/2002

32 ビット整数を表す基本データ型である int 型のラップクラスです。

クラス階層

java.lang.Object
  |
  +--java.lang.Number
        |
        +--java.lang.Integer

概要

API 仕様では次のように説明されています:

Integer クラスは、プリミティブ型 int の値をオブジェクト内にラップします。Integer 型のオブジェクトには、型が int の単一のフィールドが入ります。

さらにこのクラスは、intString に、Stringint に変換する各種メソッドや、int の処理時に役立つ定数およびメソッドも提供します。

コンストラクタ

Integer(int value) プリミティブな int の引数を表す、新しく割り当てられた Integer オブジェクトを構築します。
Integer(String s) 文字列で表現される数値を表す、新しく割り当てられた Integer オブジェクトを生成します。

つまり、 Integer クラスは int 型か文字列型の変数/値を受け取って、オブジェクトを作ります。

メソッド

メソッド、メンバ変数については、沢山あるので全ては紹介しません。詳細は API 仕様を直接ご確認ください。

ここに挙げたのは、次のサンプルで利用するメソッドのみです。

修飾子戻り値型メソッド概要
booleanequals(Object obj) このオブジェクトを指定されたオブジェクトと比較します。
intintValue() この Integer の値を int 値として返します。
doubledoubleValue() この Integer の値を double 値として返します。
staticStringtoBinaryString(int i) 整数の引数の文字列表現を、基数 2 の符号なし整数として作成します。
staticStringtoHexString(int i) 整数型の引数の文字列表現を、基数 16 の符号なし整数として作成します。
staticStringtoOctalString(int i) 整数の引数の文字列表現を、基数 8 の符号なし整数として作成します。
staticintparseInt(String s) 文字列の引数を符号付き 10 進数の整数型として解析します。
staticintparseInt(String s, int radix) 2 番目の引数に指定された基数を元にして、文字列の引数を符号付き整数として解析します。
StringtoString() この Integer の値を表す String オブジェクトを返します。
staticStringtoString(int i) 指定された整数を表す新しい String オブジェクトを返します。
staticStringtoString(int i, int radix) 2 番目の引数を基数として、1 番目の引数の文字列表現を作成します。

サンプル

次のサンプルは、コマンドライン引数の文字列を Integer 型のオブジェクトにラッピングします。

class TestInteger{
	public static void main(String args[]){
		//インスタンス化
		Integer objInt=new Integer(args[0]);
		System.out.println("objInt: "+objInt);

		//オブジェクトとの比較
		Integer objComp=new Integer(1011);
		boolean valBln=objInt.equals(objComp);
		System.out.println("objInt=1011? "+valBln);

		//int 型への変換
		int valInt=objInt.intValue();
		System.out.println("int: "+valInt);

		//double 型へ変換
		double valDbl=objInt.doubleValue();
		System.out.println("double: "+valDbl);

		//n 進数変換
		//int 型変数を n 進数に変換する
		String valBin, valHex, valOct;
		valBin=Integer.toBinaryString(valInt);
		valHex=Integer.toHexString(valInt);
		valOct=Integer.toOctalString(valInt);
		System.out.println("16進数: "+valHex);
		System.out.println(" 8進数: "+valOct);
		System.out.println(" 2進数: "+valBin);
		//文字列を n 進数の int 型に変換する
		int valInt2, valInt3;
		valInt2=Integer.parseInt(args[0]);
		valInt3=Integer.parseInt(args[0], 2);
		System.out.println("10 進数: "+valInt2);
		System.out.println(" 2 進数だと解釈したときの値: "+valInt3);
	}
}

引数を 2 進数表現だと解釈するメソッド parseInt(String s, 2) を使います。コマンドライン引数は 0 か 1 の組み合わせに限ってください。

C:\Java>javac TestInteger.java

C:\Java>java TestInteger 1011
objInt: 1011
objInt=1011? true
int: 1011
double: 1011.0
16進数: 3f3
 8進数: 1763
 2進数: 1111110011
10 進数: 1011
 2 進数だと解釈したときの値: 11

C:\Java>java TestInteger 11
objInt: 11
objInt=1011? false
int: 11
double: 11.0
16進数: b
 8進数: 13
 2進数: 1011
10 進数: 11
 2 進数だと解釈したときの値: 3

ここでは int 型のラップクラス、 Integer について紹介しましたが、他の整数値型 byte, short, long のラップクラス Byte, Short, Long についても同じです。



Copyright © 2001 SUGAI, Manabu. All Rights Reserved.
SEO [PR] !uO z[y[WJ Cu