Google検索エンジン

トップページ » Javaキャスト入門 » intとStringの型変換


intとStringの型変換 - 数値の基本型と文字列型のキャスト -

  • intとStringについて

    intは数値を扱う基本型(プリミティブ型)であり、Stringは文字列を扱う型(クラス)です。 Stringは基本型と異なり、文字列を扱うクラスとしてJavaのAPI(「java.lang」パッケージ)に定義されています。 「java.lang」パッケージには、基本型であるintの値をオブジェクトにラップする「Integer」クラスも定義されています。


    int型(基本型)とString型のキャスト

    APIの中でも「java.lang」パッケージは、プログラム言語の設計にあたり基本的な機能を提供するので、特に重要なクラスと言えます。 基本型とString型のキャストは、「java.lang」パッケージに定義されているラッパークラスを経由して実行します。

    int型とString型のキャストは、数あるキャストの組み合わせの中でも使用頻度が高いと思います。 ここでは、ラッパークラスについては詳しく説明しませんが、キャストの方法を知っておくだけでも、かなり便利になります。 サンプルソースを使って説明していますので、実際に実行して動作を確認することをおすすめします。


    基本型からString型への変換

    以下のサンプルプログラムでは、基本型(char、int、double)からString型へ変換しています。

    サンプルソースコード
    class sample {
    	public static void main(String args[]) {
    		char c = 'あ';
    		int num1 = 100;
    		double num2 = 777.77;
    		
    		String str1 = String.valueOf( c );
    		String str2 = String.valueOf( num1 );
    		String str3 = String.valueOf( num2 );
    		
    		System.out.println("キャスト後:" + str1 );
    		System.out.println("キャスト後:" + str2 );
    		System.out.println("キャスト後:" + str3 );
    	}
    }
    

    boolean、long、floatに関しても同様に記述することで、型変換が可能です。 なお、「java.lang」パッケージは「import java.lang.*;」とimport宣言を記述しなくても使用できます。


    String型から基本型への変換

    以下のサンプルプログラムでは、String型から基本型(char、int、double)へ変換しています。

    サンプルソースコード
    class sample {
    	public static void main(String args[]) {
    		String str1 = "100";
    		String str2 = "777.77";
    		
    		int num1 = Integer.parseInt( str1 );
    		double num2 = Double.parseDouble( str2 );
    		
    		System.out.println("キャスト後:" + num1 );
    		System.out.println("キャスト後:" + num2 );
    	}
    }
    

    long、floatに関しても同様にLong、Floatなどのラッパークラスを利用することで、型変換が可能です。 booleanに関しても考え方は同様ですが、プログラムの見た目が異なりますので、boolean型とString型のキャストページに具体例を掲載しています。

    なお、String(文字列)からchar(文字)に変換することはできません。 charとStringの領域の関係は、「小」と「大」でなので、領域が縮小する型変換は規則どおり許可されていません。

    次ページでは、boolean型とString型のキャストについて説明します。