Javaプログラミング学習サイト ゆるゆるプログラミング

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

■広告

Topへ