Java の文字列とは?「"Hello, World!"」を表示してみよう
新人
「Java で文字を画面に表示する方法はありますか?」
先輩
「あるよ!Java では文字や文章を 文字列(String) として扱うことができるんだ。」
新人
「文字列って何ですか?」
先輩
「文字列とは、プログラム内で扱うテキストデータのことだよ。Java では String クラスを使って文字列を操作するんだ。」
1. 文字列とは?(基本的な説明)
Java の文字列(String) とは、一連の文字を表すデータ型です。プログラムでテキストを扱う際には、文字列を使います。
文字列の特徴
- 文字の集まりを表すデータ型
- ダブルクォーテーション(
" ")で囲んで表現する - プログラム内で簡単に操作できる
例えば、「Hello, World!」のような文章を Java では String 型として扱います。
2. Java で「"Hello, World!"」を表示する方法
Java では、System.out.println() を使うことで、文字列を画面に表示できます。実際に「Hello, World!」を表示するプログラムを見てみましょう。
Java の基本プログラム
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
Hello, World!
コードの解説
System.out.println("Hello, World!");… 文字列「Hello, World!」を表示する- ダブルクォーテーション(
" ")で囲むことで文字列として認識される - 最後にセミコロン(
;)をつけることで、1 つの命令が終わったことを示す
このように、Java では簡単に文字列を画面に表示することができます。
3. 文字列を変数に保存する方法
Java では、文字列を 変数 に保存することで、プログラムの中で再利用することができます。
文字列を変数に保存する理由
- 一度作成した文字列を再利用できる
- プログラムの可読性を向上させる
- コードを短くまとめられる
実際に、文字列を変数に保存して使うプログラムを見てみましょう。
public class StringVariableExample {
public static void main(String[] args) {
String message = "Hello, World!";
System.out.println(message);
}
}
Hello, World!
コードの解説
String message = "Hello, World!";… 文字列「Hello, World!」をmessageという変数に保存するSystem.out.println(message);… 変数の中身を表示する
このように、文字列を変数に保存することで、より柔軟にプログラムを作成できます。
4. 文字列の結合(+ を使って文章を作る)
Java では、プラス記号(+) を使うことで文字列を結合することができます。
文字列を結合する方法
例えば、「Hello,」と「World!」という2つの文字列を結合して、「Hello, World!」とすることができます。
public class StringConcatExample {
public static void main(String[] args) {
String part1 = "Hello, ";
String part2 = "World!";
String message = part1 + part2;
System.out.println(message);
}
}
Hello, World!
コードの解説
String part1 = "Hello, ";… 「Hello, 」という文字列を変数に保存String part2 = "World!";… 「World!」という文字列を変数に保存String message = part1 + part2;… 文字列を+で結合する
このように、文字列をつなげることで、動的に文章を作ることができます。
5. 文字列の表示方法(System.out.println の使い方)
Java では、System.out.println() を使って文字列を画面に表示することができます。
System.out.println() の基本
System.out.println() は、指定した内容をコンソールに表示するメソッドです。
public class PrintExample {
public static void main(String[] args) {
System.out.println("こんにちは!");
System.out.println("Java の学習を始めましょう!");
}
}
こんにちは!
Java の学習を始めましょう!
コードの解説
System.out.println("こんにちは!");… 文字列「こんにちは!」を表示System.out.println("Java の学習を始めましょう!");… 文字列「Java の学習を始めましょう!」を表示printlnのlnは「line(行)」を意味し、自動で改行される
また、System.out.print() を使うと、改行せずに文字列を表示することもできます。
public class PrintExample {
public static void main(String[] args) {
System.out.print("こんにちは!");
System.out.print("Java の学習を始めましょう!");
}
}
こんにちは!Java の学習を始めましょう!
print() と println() の違い
| メソッド | 動作 |
|---|---|
System.out.println() |
表示後に改行する |
System.out.print() |
表示後に改行しない |
どちらを使うかは、表示したい文字のフォーマットに応じて決めましょう。
6. 文字列の長さを調べる方法(length メソッド)
Java では、文字列の長さ(文字数)を調べることができます。これは length メソッド を使います。
length メソッドの使い方
length メソッドは、文字列の文字数を取得するためのメソッドです。次の例を見てみましょう。
public class StringLengthExample {
public static void main(String[] args) {
String message = "Hello, World!";
int length = message.length();
System.out.println("文字列の長さは: " + length);
}
}
文字列の長さは: 13
コードの解説
message.length()は、文字列の文字数を取得する- 変数
lengthに格納して、表示する
このように、length メソッドを使えば簡単に文字列の長さを調べることができます。
7. 文字列の比較方法(equals と == の違い)
Java で文字列を比較する場合、equals メソッド と == 演算子 の 2 つの方法があります。
equals メソッドを使う方法
文字列の内容が同じかどうかを比較する場合は、equals メソッドを使います。
public class StringEqualsExample {
public static void main(String[] args) {
String str1 = "Hello";
String str2 = "Hello";
if (str1.equals(str2)) {
System.out.println("文字列は同じです");
} else {
System.out.println("文字列は違います");
}
}
}
文字列は同じです
== 演算子を使う場合
== 演算子を使うと、オブジェクトの参照(メモリ上の場所)を比較します。
public class StringComparisonExample {
public static void main(String[] args) {
String str1 = new String("Hello");
String str2 = new String("Hello");
if (str1 == str2) {
System.out.println("== で比較: 同じオブジェクトです");
} else {
System.out.println("== で比較: 違うオブジェクトです");
}
}
}
== で比較: 違うオブジェクトです
equals と == の違い
| 比較方法 | 内容 |
|---|---|
equals() |
文字列の内容を比較する |
== |
オブジェクトの参照を比較する(異なるオブジェクトだと false) |
基本的に、文字列を比較する場合は equals() を使いましょう。
8. 練習問題:文字列を使ったプログラムを書いてみよう
ここまで学んだことを活かして、文字列を操作するプログラムを書いてみましょう。
練習問題 1
以下の条件を満たすプログラムを作成してください。
- ユーザーの名前を入力し、「こんにちは、〇〇さん!」と表示する
- 入力された名前の長さを表示する
import java.util.Scanner;
public class GreetingExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("名前を入力してください: ");
String name = scanner.nextLine();
System.out.println("こんにちは、" + name + "さん!");
System.out.println("あなたの名前の文字数は: " + name.length() + " 文字です。");
scanner.close();
}
}
名前を入力してください: 太郎
こんにちは、太郎さん!
あなたの名前の文字数は: 2 文字です。
練習問題 2
次の条件を満たすプログラムを作成してください。
- 「Java」を入力すると「Java は楽しい!」と表示する
- それ以外の単語を入力した場合は「他のプログラミング言語も学んでみましょう!」と表示する
import java.util.Scanner;
public class JavaCheckExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("好きなプログラミング言語を入力してください: ");
String language = scanner.nextLine();
if (language.equals("Java")) {
System.out.println("Java は楽しい!");
} else {
System.out.println("他のプログラミング言語も学んでみましょう!");
}
scanner.close();
}
}
好きなプログラミング言語を入力してください: Java
Java は楽しい!
このように、文字列を操作することで、ユーザーの入力に応じた処理を行うことができます。