JavaのChar配列| Java文字配列
公開: 2020-12-01目次
序章
今日私たちが処理するデータのほとんどには文字が含まれています。プログラミング言語は、プログラマーに馴染みがあり、文字データを処理する方法を提供する場合、柔軟であると言えます。
javaのchar配列は非常に便利で使いやすく、文字列はjavaで不変ですが、char配列のエントリを操作できます。 文字配列は、リストやセットと比較すると高速であり、セットやリストよりも単純です。
それでは、char配列の動作を調べてみましょう。
宣言と初期化
char配列の宣言は、javaでの通常の配列の宣言に似ています。 「char[]array_name」または「chararray_name[]」は、宣言に従うための構文です。
宣言後、次に行う必要があるのは初期化です。 「array_name=new char [array_length]」は、従うべき構文です。 とにかく、「char array_name [] = new char [array_length]」構文を使用することで、宣言と初期化の両方を1回で行うことができます。 配列の長さは、char配列の初期化時に宣言する必要があります。
パブリッククラステスト{ public static void main ( String args []) {{ //宣言-1 char arr []; arr = new char [ 4 ]; //宣言-2 char arr2 [] = new char [ 4 ]; //割り当て-1 char arr1 [] = new char [] { ' a ' 、 ' b ' 、 ' c ' 、 ' d ' }; //割り当て-2 arr [ 0 ] = ' a ' ; arr [ 1 ] = ' b ' ; arr [ 2 ] = ' c ' ; arr [ 3 ] = ' d ' ; システム。 アウト。 println(arr); システム。 アウト。 println(arr1); } } |
上記のスニペットでは、declaration-1とdeclaration-2はどちらも宣言と初期化の方法です。 また、assigning-1とassigning-2は、どちらもエントリを配列にプッシュする方法です。 char配列を出力すると、文字列としてマージされたすべての文字が出力されることに注意してください。上記の場合、出力は「abcd」になります。

詳細: Javaでのイベント処理:それは何で、どのように機能しますか?
char配列をループする
char配列をループすることは、Javaの楽しいタスクです。配列をループするために、通常の「forループ」または「for:each」ループを使用できます。
//ループ-1 for ( int i = 0 ;i < arr。length ; i ++ ) システム。 アウト。 print(arr [i]); //ループ-2 for ( char c : arr) システム。 アウト。 print(c); |
上記のスニペットでは、loop-1は通常のforループであり、ループ1の最終出力は「abcd」になります。 また、loop-2はfor:各ループとloop-2の最終出力は「abcd」になります。
文字配列の長さは、length属性を使用して取得できます。 「array_name.length」は、従うべき構文です。
char array [] = new char [] { ' h ' 、 ' e ' 、 ' l ' 、 ' l ' 、 ' o ' }; システム。 アウト。 println(配列。長さ); |
上記のスニペットは、予想どおり5を出力します。
世界のトップ大学のソフトウェアエンジニアリングコースに登録します。 エグゼクティブPGプログラム、高度な証明書プログラム、または修士プログラムを取得して、キャリアを早急に進めましょう。
Char配列のソート
Javaの配列は、「Arrays.sort(array_name)」を使用して並べ替えることができます。 これにより、渡された文字配列が辞書式に並べ替えられます。

char [] array = { ' h ' 、 ' e ' 、 ' l ' 、 ' l ' 、 ' o ' }; 配列。 sort(array); システム。 アウト。 println(配列。toString(配列)) ; //ライン1 システム。 アウト。 println(配列); //2行目 |
Arrays.sort()とArrays.toString()を機能させるには、java.util.Arraysをインポートする必要があることに注意してください。
上記のスニペットでは、char配列は辞書式にソートされ、配列を印刷すると、文字列としてマージされた文字が印刷されます。 「line2」の出力は「ehllo」になります。マージされた文字列として出力せず、代わりに配列全体を角かっこで囲んで印刷する場合は、Arrays.toString()がその役割を果たします。 「line1」の出力は[e、h、l、l、o]になります。
前のコードスニペットでは、配列のエントリを埋めることによってchar配列を宣言しましたが、文字列をchar配列に変換する場合はどうでしょうか。
とにかく、文字列の長さでchar配列を初期化し、文字列をループして、各文字を配列に追加することで機能します。
文字列s = “ hello “ ; char [] arr = newchar [s 。 長さ()]; for ( int i = 0 ; i < s。length () ; i ++ ) arr [i] = s 。 charAt(i); システム。 アウト。 println(配列。toString(arr)) ; |
上記のスニペットは、期待どおりに[h、e、l、l、o]を出力します。
上記のスニペットは、文字列をchar配列に変換する方法を実行しますが、文字列をchar配列に変換するたびに、この長いコードを記述する必要がありますか? まあ、答えはノーでしょう。
Javaは、文字列に適用してchar配列を返すtoCharArray()と呼ばれる美しいメソッドを提供します。
文字列s = “ aejou “ ; char [] arr = s 。 toCharArray(); システム。 アウト。 println(配列。toString(arr)) ; //ライン1 arr [ 2 ] = ' i ' ; システム。 アウト。 println(配列。toString(arr)) ; //2行目 |
予想どおり、「line1」は[a、e、j、o、u]を出力として出力します。 また、すでに説明したように、文字列とは異なり、char配列のエントリを編集または操作できます。 したがって、line2の出力は[a、e、i、o、u]になります。
Javaで文字列をchar配列に変換する方法を見てきましたが、その逆のタスクが必要な場合はどうでしょうか。
Javaにもそのようなタスクを実行するためのメソッドがあることを気にしないでください。

char [] arr = { ' h ' 、 ' e ' 、 ' y ' 、 ' ' 、 ' t ' 、 ' h ' 、 ' e ' 、 ' r ' 、 ' e ' }; 文字列s1 =新しい文字列(arr); // method1 システム。 アウト。 println(s1); 文字列s2 =文字列。 valueOf(arr); // method2 システム。 アウト。 println(s2); |
上記のスニペットでは、char配列を文字列に変換するための両方の方法を見ることができます。 上記のスニペットの出力は、予想どおり「ちょっとそこに」なります。
また読む:初心者のための17の興味深いJavaプロジェクトのアイデアとトピック
結論
char配列とは何かを知り、char配列を初期化および宣言するさまざまな方法を学びました。 char配列をループするためのスニペットをウォークスルーしました。 事前定義されたArrays.sort()メソッドを使用してchar配列をソートしました。
また、文字列から文字配列への変換の単純で事前定義された実装を観察し、さまざまなメソッドを使用したその逆の実装も観察しました。 char配列の概念に精通しているので、それらの実装を開始してください。
Java、OOP、フルスタックソフトウェア開発の詳細に興味がある場合は、upGrad&IIIT-Bのフルスタックソフトウェア開発のエグゼクティブPGプログラムをチェックしてください。これは、働く専門家向けに設計されており、500時間以上の厳格なトレーニングを提供します。 9以上のプロジェクトと割り当て、IIIT-B卒業生のステータス、実践的な実践的なキャップストーンプロジェクト、トップ企業との仕事の支援。
