文字列
文字列
「文字列」はCoddyKit上の無料Java Academyレッスンです。 これはレッスン1/1です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはJava Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Java Academyコースには全1レッスンが含まれています。
導入
こんにちは。
Javaでは、String型を使ってテキストデータを保持します。Stringはプリミティブ型ではなく、参照型です。
テキストデータをString型の変数に代入する場合は、二重引用符で囲む必要があります。
例
簡単なStringを定義してみましょう。
String myText = "Coddy String";String
この定義によって、JavaはStringを使ってヒープ上にオブジェクトを生成します。
Stringは参照型のオブジェクトなので、Java APIに組み込まれたメソッドを利用できます。
Stringの連結
Javaでは、(+)演算子を使って2つの異なるStringを連結します。
class Main {
public static void main(String[] args) {
String catOne = "Coddy";
String catTwo = "Garfield";
String catNames = catOne + " " + catTwo;
System.out.println(catNames);
}
}concatメソッド
+演算子に加えて、concatメソッドを使って2つの異なるStringを連結することもできます。
System.out.println(catOne.concat(catTwo));
//CoddyGarfieldlengthメソッド
これらの中で、おそらく最もよく使われるのがlength()メソッドです。
このメソッドを使うと、String式が何文字で構成されているかを確認できます。
class Main {
public static void main(String[] args) {
String myText = "Coddy String";
System.out.println("total char:" + myText.length());
}
}大文字・小文字
それでは、toUpperCaseメソッドとtoLowerCaseメソッドの使い方を学びましょう。
class Main {
public static void main(String[] args) {
String catOne = "Coddy";
String catTwo = "Garfield";
System.out.println(catOne.toUpperCase()); // CODDY
System.out.println(catTwo.toLowerCase()); // garfield
}
}indexOf
String内を検索する場合は、indexOfメソッドを使用します。
以下の例では、文字sを検索し、7番目の位置にあることがわかります。
class Main {
public static void main(String[] args) {
String txt = "My cat is Coddy";
System.out.println(txt.indexOf("s")); //7
}
}引用符
ここで、次のような疑問が浮かんだかもしれません。
Stringは二重引用符で囲みますが、以下のようにStringの中に二重引用符を含めたい場合はどうすればよいでしょうか。
String txt = "My cat is "Coddy"";エスケープ文字
上のコードには構文エラーが含まれているため、コンパイラによってコンパイルされません。String式の中で二重引用符を使いたい場合は、エスケープ文字であるバックスラッシュを使用する必要があります。
この文字によって、コンパイラはそれがString式であり、テキストの一部として評価すべきだと認識します。
class Main {
public static void main(String[] args) {
String txt = "My cat is \"Coddy\"";
System.out.println(txt); //My car is "Coddy"
}
}例
Stringを定義したとき、プリミティブ型ではなく参照型であると説明しました。
それでは、同じ値を持つ2つのStringを定義してみましょう。
class Main {
public static void main(String[] args) {
String catOne = "Coddy";
String catTwo = "Coddy";
boolean status = catOne == catTwo;
//status => false
}
}equalsメソッド
==演算子は、プリミティブ型の変数に対して値を比較します。Stringなどのオブジェクト型は、オブジェクトそのものではなく、メモリ上のアドレスを保持します。
2つのオブジェクトを定義した場合、同じ値を持っていてもメモリ上の異なる領域に存在するため、catOneとcatTwoの変数は実際には異なるアドレスを保持します。そのため、==で比較するとfalseが返されます。
equalsメソッドは、2つのStringの値を比較するために使用します。
if(catOne.equals(catTwo)){
//codeblock works
}equalsメソッド
equalsメソッドは、2つのStringの値を比較するために使用します。
if(catOne.equals(catTwo)){
//codeblock works
}例(続き)
上の例では、equalsメソッドはオブジェクトのアドレスではなく、アドレスに格納されたデータを比較するため、trueを返します。
おめでとうございます
このセクションでは、JavaのStringについて学びました。
次のレッスンでお会いしましょう。 🥳

よくある質問
「文字列」レッスンは無料ですか?
はい。「文字列」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Java Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Java Academyコースには全1レッスンが含まれています。
「文字列」で何を学びますか?
文字列 ブラウザで直接実行するハンズオンコードでJava Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Java Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのJava Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/1です。
「文字列」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このJava Academyレッスンでコードを書いて実行できますか?
はい。すべてのJava Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。