📜  dart tostring - Dart (1)

📅  最后修改于: 2023-12-03 15:30:22.055000             🧑  作者: Mango

Dart的toString()方法

在Dart中,所有的对象都从Object类派生而来。Object类有一个toString()方法,用于返回一个对象的字符串表示。默认情况下,toString()方法返回的是一个字符串,其中包含对象的类名和一个十六进制的哈希值,例如:“Instance of 'MyClass'”。

自定义toString()方法

通常情况下,我们需要自定义一个toString()方法,以便更好的描述对象的状态。我们可以在类中重载toString()方法,并在其中返回一个字符串:

class Person {
  String name;
  int age;
  
  Person(this.name, this.age);
  
  @override
  String toString() {
    return 'Person{name: $name, age: $age}';
  }
}

void main() {
  var person = Person('Tom', 20);
  print(person); // Person{name: Tom, age: 20}
}
使用toString()方法

我们经常需要将一个对象转换成字符串,然后在控制台或文件中输出。我们可以直接在print()函数中调用对象的toString()方法,也可以将toString()方法的返回值赋值给一个字符串变量,最后使用它。例如:

var person = Person('Tom', 20);
print(person.toString()); // Person{name: Tom, age: 20}

String s = person.toString();
print(s); // Person{name: Tom, age: 20}
总结

toString()方法是获取对象的状态,并以易于阅读的格式返回。在大多数情况下,我们都应该重载该方法,以便更好地描述对象的状态。了解toString()方法将帮助我们有效地调试和输出我们的Dart程序。

以上是关于Dart的toString()方法的介绍。