Java の文字列の長さを調べる「length()」の使い方
新人
「Java で文字列の長さを調べる方法ってありますか?」
先輩
「あるよ!Java では length() メソッド を使えば、簡単に文字列の長さを調べることができるんだ。」
新人
「length() メソッドってどうやって使うんですか?」
先輩
「それじゃあ、基本的な使い方から説明していくね!」
1. length() メソッドとは?(基本的な説明)
Java の length() メソッド は、文字列の長さ(文字数)を取得するためのメソッドです。
length() メソッドの特徴
- 文字列の長さ(文字数)を取得できる
- 文字列の長さが動的に変わる場合にも対応可能
- 空の文字列("")なら 0 を返す
例えば、「Hello, World!」という文字列の長さを取得すると 13 になります。
2. length() メソッドの基本的な使い方
実際に length() メソッドを使って、文字列の長さを取得するプログラムを見てみましょう。
文字列の長さを取得する基本例
public class StringLengthExample {
public static void main(String[] args) {
String text = "Hello, World!";
int length = text.length();
System.out.println("文字列の長さ: " + length);
}
}
文字列の長さ: 13
コードの解説
String text = "Hello, World!";… 文字列を変数に保存int length = text.length();… 文字列の長さを取得System.out.println("文字列の長さ: " + length);… 結果を表示
このように、length() メソッドを使うと簡単に文字列の長さを調べることができます。
3. 変数を使った length() メソッドの活用
length() メソッドは、文字列の長さを取得するだけでなく、変数を使って柔軟に活用できます。
変数を利用した length() メソッドの例
public class StringLengthVariable {
public static void main(String[] args) {
String message = "こんにちは、Java!";
int length = message.length();
System.out.println("メッセージの長さ: " + length);
}
}
メッセージの長さ: 10
コードの解説
String message = "こんにちは、Java!";… 文字列を変数に保存int length = message.length();… 文字列の長さを取得System.out.println("メッセージの長さ: " + length);… 結果を表示
このように、変数を使うことで文字列の長さを動的に取得し、プログラムの処理に利用できます。
4. length() メソッドを使うときの注意点
length() メソッドを使う際には、いくつかの注意点があります。
改行やスペースも文字数に含まれる
length() メソッドは、改行やスペースもカウントするため、文字列の長さが予想と異なる場合があります。
スペースを含む文字列の例
public class StringLengthSpaces {
public static void main(String[] args) {
String text = " Java 学習 ";
int length = text.length();
System.out.println("文字列の長さ: " + length);
}
}
文字列の長さ: 9
コードの解説
- 前後にスペースが含まれているため、見た目より長い
- 不要なスペースを削除する場合は
trim()メソッドを活用
trim() を使って長さを調整
public class StringTrimExample {
public static void main(String[] args) {
String text = " Java 学習 ";
int lengthBefore = text.length();
int lengthAfter = text.trim().length();
System.out.println("変更前の長さ: " + lengthBefore);
System.out.println("trim() 使用後の長さ: " + lengthAfter);
}
}
変更前の長さ: 9
trim() 使用後の長さ: 6
このように、length() メソッドを使う際はスペースや改行に注意しましょう。
5. 空文字列や null の場合の length() の動作
length() メソッドを使用する際、空文字列("")や null の場合の挙動を理解しておくことが大切です。
空文字列の場合
空文字列("")は、length() を使うと 0 を返します。
public class EmptyStringLength {
public static void main(String[] args) {
String emptyText = "";
System.out.println("空文字列の長さ: " + emptyText.length());
}
}
空文字列の長さ: 0
null の場合
null の場合、length() メソッドを使うと NullPointerException が発生します。
public class NullStringLength {
public static void main(String[] args) {
String nullText = null;
System.out.println("null の長さ: " + nullText.length()); // ここでエラー
}
}
Exception in thread "main" java.lang.NullPointerException
null のチェック方法
null の場合、length() を実行するとエラーになるため、事前にチェックしましょう。
public class SafeStringLength {
public static void main(String[] args) {
String text = null;
if (text != null) {
System.out.println("文字列の長さ: " + text.length());
} else {
System.out.println("文字列は null です");
}
}
}
文字列は null です
このように、length() メソッドを使う前に null かどうかをチェックすると、エラーを防ぐことができます。
6. length() メソッドを使った応用例(ループ処理との組み合わせ)
length() メソッドは、文字列の長さを取得するだけでなく、ループ処理と組み合わせて活用できます。
文字列の各文字を 1 文字ずつ表示する例
public class StringLoopExample {
public static void main(String[] args) {
String text = "Java";
for (int i = 0; i < text.length(); i++) {
System.out.println("文字 " + (i + 1) + ": " + text.charAt(i));
}
}
}
文字 1: J
文字 2: a
文字 3: v
文字 4: a
コードの解説
text.length()を使ってループの回数を決めるcharAt(i)を使って i 番目の文字を取得- 文字の位置を 1 から始めるため
i + 1を表示
このように length() メソッドを使うと、文字列の長さを元にした繰り返し処理が可能になります。
7. 文字列の長さを比較する方法
length() メソッドを使えば、文字列の長さを比較して、どちらが長いかを判断できます。
2 つの文字列の長さを比較する例
public class StringLengthComparison {
public static void main(String[] args) {
String str1 = "Java";
String str2 = "JavaScript";
if (str1.length() > str2.length()) {
System.out.println("str1 の方が長い");
} else if (str1.length() < str2.length()) {
System.out.println("str2 の方が長い");
} else {
System.out.println("両方の長さは同じ");
}
}
}
str2 の方が長い
コードの解説
- 2 つの文字列の長さを
length()で取得 - 長さが異なる場合はどちらが長いかを表示
- 長さが同じ場合は「両方の長さは同じ」と表示
この方法を使えば、文字列の長さを比較して条件分岐ができます。
8. 練習問題:length() メソッドを使ってプログラムを作ろう
最後に、length() メソッドを使った練習問題に挑戦してみましょう。
問題 1: ユーザーが入力した文字列の長さを表示する
import java.util.Scanner;
public class StringLengthUserInput {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("文字列を入力してください: ");
String input = scanner.nextLine();
System.out.println("入力した文字列の長さ: " + input.length());
scanner.close();
}
}
文字列を入力してください: Javaプログラミング
入力した文字列の長さ: 11
問題 2: 文字数が 10 文字以上なら「長い」、10 文字未満なら「短い」と判定
import java.util.Scanner;
public class StringLengthCheck {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("文字列を入力してください: ");
String input = scanner.nextLine();
if (input.length() >= 10) {
System.out.println("長い文字列です");
} else {
System.out.println("短い文字列です");
}
scanner.close();
}
}
文字列を入力してください: プログラミング
長い文字列です
問題 3: 文字列の長さが偶数か奇数かを判定する
import java.util.Scanner;
public class StringLengthEvenOdd {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("文字列を入力してください: ");
String input = scanner.nextLine();
if (input.length() % 2 == 0) {
System.out.println("文字列の長さは偶数です");
} else {
System.out.println("文字列の長さは奇数です");
}
scanner.close();
}
}
文字列を入力してください: Hello
文字列の長さは奇数です
このように、length() メソッドを活用すれば、さまざまなプログラムを作成できます。
まとめ
Javaのlengthメソッドの基本を総復習
今回はJavaの文字列の長さを取得するlengthメソッドについて、基本から応用までしっかりと学習しました。Javaの文字列操作においてlengthメソッドは非常に重要な役割を持ち、文字数の取得や入力チェック、条件分岐、繰り返し処理などさまざまな場面で活用されます。Java初心者にとって最初に覚えるべき基本メソッドのひとつであり、実務でも頻繁に使われる重要な機能です。
lengthメソッドは文字列操作の基礎となる重要機能
lengthメソッドは、文字列の長さを取得するためのシンプルなメソッドですが、その役割は非常に大きいです。文字列の長さを把握することで、データのバリデーションや画面表示の制御、入力チェックなど多くの処理に応用できます。特にフォーム入力の文字数制限や、ユーザー入力のチェック処理では欠かせない存在です。
ループ処理と組み合わせて応用力を高める
lengthメソッドはfor文と組み合わせることで、文字列を一文字ずつ処理することができます。これは文字解析や検索処理、変換処理などにおいて非常に重要なテクニックです。Javaプログラミングの基礎として、文字列の各文字にアクセスできるようになることは大きなステップとなります。
public class LengthLoopSummary {
public static void main(String[] args) {
String text = "Java学習";
for (int i = 0; i < text.length(); i++) {
System.out.println(text.charAt(i));
}
}
}
J
a
v
a
学
習
スペースや改行も含まれることを理解する
lengthメソッドは見た目の文字数だけでなく、スペースや改行もすべてカウントします。そのため、見た目と実際の文字数が異なる場合があります。このような場合はtrimメソッドを併用することで、不要なスペースを除去して正しい文字数を取得することができます。
public class TrimLengthSummary {
public static void main(String[] args) {
String text = " Java ";
System.out.println(text.length());
System.out.println(text.trim().length());
}
}
6
4
nullチェックは必ず行う重要ポイント
lengthメソッドを使う際に最も注意すべき点はnullです。nullの状態でlengthメソッドを実行するとエラーが発生します。そのため、実務では必ずnullチェックを行ってから処理を行うことが重要です。これにより安全なプログラムを作成することができます。
public class SafeLengthSummary {
public static void main(String[] args) {
String text = null;
if (text != null) {
System.out.println(text.length());
} else {
System.out.println("文字列は存在しません");
}
}
}
文字列は存在しません
文字列の長さを使った条件分岐の活用
lengthメソッドを使うことで、文字列の長さによって処理を分岐させることができます。例えば入力文字数のチェックや、パスワードの強度判定などに応用できます。これは実務でも非常によく使われる重要な処理です。
public class LengthConditionSummary {
public static void main(String[] args) {
String password = "abc123";
if (password.length() >= 8) {
System.out.println("安全なパスワード");
} else {
System.out.println("パスワードが短い");
}
}
}
パスワードが短い
Java初心者が必ず身につけたい基本スキル
Javaのlengthメソッドは、文字列操作の基礎として非常に重要です。これを理解することで、文字列の扱いがスムーズになり、プログラムの幅が大きく広がります。特に配列のlengthプロパティとの違いを理解しておくことも大切です。文字列はlengthメソッド、配列はlengthプロパティという違いを正しく使い分けることがJava上達のポイントです。
生徒
lengthメソッドで文字列の長さを簡単に取得できることが分かりました。
先生
とても大切な基本機能です。必ず使えるようにしましょう。
生徒
for文と組み合わせると一文字ずつ処理できるのが便利ですね。
先生
その通りです。文字列操作の応用でよく使います。
生徒
nullのときにエラーになるのは気をつけないといけませんね。
先生
実務では特に重要です。必ずチェックを入れましょう。
生徒
配列のlengthとの違いも理解できました。
先生
良い理解です。この違いを押さえるとJavaの基礎が固まります。