javaでtoStringとStringの違い

Javaでは、toString()とStringは異なる概念です。

  1. toString()はObjectクラスのメソッドで、全てのJavaクラスはObjectクラスを継承しているので、全てのJavaクラスでtoString()メソッドを利用できます。オブジェクトの文字列表現を返すために使われ、一般的にはオブジェクトを文字列に変換して出力します。デフォルトでは、toString()メソッドはクラス名とハッシュコードを含む文字列を返します。

例えば:

public class Person {
    private String name;
    private int age;

    // 构造函数和其他方法省略

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

Person person = new Person("Alice", 20);
System.out.println(person.toString()); // 输出:Person{name='Alice', age=20}
System.out.println(person); // 等同于System.out.println(person.toString())

上記の例では、Person クラスの toString() メソッドをオーバーライドすることで、オブジェクトの文字列表現をカスタマイズできます。

  1. StringはJavaにおける文字列型を表すクラスです。不変なので、一度作成したら変更できません。Stringクラスはconcat()、length()、substring()など、文字列を操作するためのメソッドを数多く提供しています。

例えば、

String str1 = "Hello";
String str2 = "World";
String str3 = str1 + " " + str2;
System.out.println(str3); // 输出:Hello World
System.out.println(str3.length()); // 输出:11

上記の例では、`+`演算子を使用して2つの文字列を連結させ、新たな文字列として得ました。

toString()メソッドとは、オブジェクトを文字列に変換するもので、文字列タイプを表すのはStringクラスです。

bannerAds