◆PROCESSING 逆引きリファレンス
カテゴリー:文字関連処理
文字列の長さ(文字数)を知るには
【解説】
プログラムでは、よく文字列の長さ(文字数)が知りたくなる場合があります。
え、「どんな場合だよ?」ですか・・・・(笑)。
例えば、学籍番号を入力されたら生徒名を表示するようなプログラムで、入力された学籍番号が規定の文字数か検査したい といった場合ですかね?。
またゲームなどで、表示された単語と同じ文字数を打ち込んだら、答え合わせをするような処理を作りたい場合も、入力された文字が何文字あるか数える事があるでしょう。
PROCESSINGでString型の文字列を扱うなら、Stringオブジェクトのlengh()メソッドを利用する事で文字数を知ることが可能です。
【構文】
String.length() ;
【パラメータ】
なし
【戻り値】
int : 文字数
【注意】
初期化されていないString変数やString配列の長さは取得できません。
例えば
1 2 |
String s1; println( "s1=" + s1.length() ); |
上記のようなコーディングは、実行時に「The local variable s1 may not have been initialized」エラーになります。
【関連記事】
なし
●String文字列の長さを取得する例:
1 2 3 4 5 6 7 |
String s1; String s2; s1 = "ほげabc"; s2 = ""; println( "s1=" + s1.length() ); //<--s1=5 println( "s2=" + s2.length() ); //<--s2=0 |
上記を実行すると
s1=5
s2=0
が表示されます。
s1は全角文字と半角文字の混在例です。正しく文字数が取得できている事がご理解いただけると思います。
s2は空文字の例です。上記注意にあるように、s2を初期化せずに(s2=””を行わない状態で)、length()で文字数を取得する事はできませんので注意してください。
●String配列の文字数を取得する例:
1 2 3 4 5 |
String[] s3; s3 = new String[5]; s3[0] = "あいう"; println( "s3[0]=" + s3[0].length() ); //<--s3[0]=3 |
上記を実行すると
s3[0]=3
が表示されます。
s3は配列変数です。その先頭に3文字格納して、文字数を取得しています。
●配列の要素数を取得する例:
1 2 3 4 5 6 7 |
String[] s3; int[] i1; s3 = new String[5]; println( "s3=" + s3.length ); //<--s3=5 i1 = new int[10]; println( "i1=" + i1.length ); //<--i1=10 |
上記を実行すると
s3=5
i1=10
が表示されます。
上記は、配列の要素数を取得する例です。
配列の要素数を取得する共通的な手法になりますので、int型の配列でも利用できます。
本ページで利用しているアイコン画像は、下記サイト様より拝借しております。各画像の著作権は、それぞれのサイト様および作者にあります。