2020/03/23 公開
・文字列の作成と初期化
Stringクラスに文字列を代入する方法には、文字列リテラル(0文字以上の連続した文字列の定数でダブルコーテーションで文字列で囲む)を”=”で代入する方法と、newでStringクラスを作成する方法と、char型の配列を渡す方法と、byte型の配列を渡す方法があります。
下記のソースコードは、Stringクラスのオブジェクトを初期化して文字列を登録するJavaプログラムの例です。
StringCreate.java ← クリックしてダウンロードページに移動001: public class StringCreate { 002: public static void main( String[] args ) { 003: // Stringクラスのstr1に"Hello!"を格納 004: String str1 = "Hello!"; 005: 006: // Stringクラスのstr2に"Hello!"を格納 007: String str2 = new String( "Hello!" ); 008: 009: // Stringクラスのstr3に"Hello!"を格納(char配列を使う) 010: char data[] = {'H', 'e', 'l', 'l', 'o', '!' }; 011: String str3 = new String( data ); 012: 013: // Stringクラスのstr4に"Hello!"を格納(byte配列を使う) 014: byte codes[] = { 72, 101, 108, 108, 111, 33 }; 015: String str4 = new String( codes ); 016: 017: // str1を表示 018: System.out.println( "str1=" + str1 ); 019: 020: // str2を表示 021: System.out.println( "str2=" + str2 ); 022: 023: // str3を表示 024: System.out.println( "str3=" + str3 ); 025: 026: // str4を表示 027: System.out.println( "str4=" + str4 ); 028: } 029: }
StringCreate.javaの出力結果
str1=Hello! str2=Hello! str3=Hello! str4=Hello!
この結果から、3つの方法で格納した文字列str1とstr2とstr3が同じであることが確認できます。
ここからソースを順番に説明していきます。
001: public class StringCreate {
クラス名を、StringCreateとしています。
002: public static void main( String[] args ) {
このmainメソッドからプログラムを実行します。
003: // Stringクラスのstr1に"Hello!"を格納 004: String str1 = "Hello!";
Stringクラスstr1に、文字列"Hello!"を"="を使って格納しています。Stringクラスはnew演算子を使わずにオブジェクトを作ることができます。
006: // Stringクラスのstr2に"Hello!"を格納 007: String str2 = new String( "Hello!" );
Stringクラスstr2に、文字列"Hello!"をnew演算子を使って格納しています。Stringクラスはnew演算子を使ってオブジェクトを作ることもできますが"="を使うことが一般的です。
009: // Stringクラスのstr3に"Hello!"を格納(char配列を使う) 010: char data[] = {'H', 'e', 'l', 'l', 'o', '!' }; 011: String str3 = new String( data );
Stringクラスstr3に、文字列"Hello!"をnew演算子を使って格納しています。この場合は、char型の配列の値から文字列を作成しています。文字コードから文字列を作るときは、この方法を使います。
013: // Stringクラスのstr4に"Hello!"を格納(byte配列を使う) 014: byte codes[] = { 72, 101, 108, 108, 111, 33 }; 015: String str4 = new String( codes );
Stringクラスstr4に、文字列"Hello!"をnew演算子を使って格納しています。この場合は、byte型の配列の値から文字列を作成しています。文字コードから文字列を作るときは、この方法を使います。ここで代入している数字は"Hello!"のASCIIコードです。
017: // str1を表示 018: System.out.println( "str1=" + str1 ); 019: 020: // str2を表示 021: System.out.println( "str2=" + str2 ); 022: 023: // str3を表示 024: System.out.println( "str3=" + str3 ); 025: 026: // str4を表示 027: System.out.println( "str4=" + str4 );
str1とstr2とstr3とstr4をprintlnメソッドでコンソール出力しています。
以上です。
■関連コンテンツ
文字列 | 文字列について |
文字コード | 文字コードについて |
文字列→byte配列 | Stringからbyte[] |
■新着情報
2022.07.07 | 外部プログラムの実行 | exeファイル実行 |
2022.07.06 | 完全数 | 6=1+2+3 |
■広告