gpt4 book ai didi

flutter - @override toString 方法在 Flutter Dart 类中做什么?

转载 作者:行者123 更新时间:2023-12-04 14:39:34 24 4
gpt4 key购买 nike

在下面的模型类中,覆盖 toString() 的目的是什么?方法实现?

class User {
final int id;
String name, email, token;

User(this.id, this.name, this.email, this.token);

User.fromJson(dynamic json) : this.id = json['id'] {
this.name = json['name'];
this.email = json['email'];
this.token = json['token'];
}

dynamic toJson() => {'id': id, 'name': name, 'email': email, 'token': token};

@override
String toString() {
return toJson().toString();
}
}

最佳答案

的目的toString() 方法是提供它被调用的任何对象的文字表示,或者将对象转换为字符串(例如将原始类型转换为字符串)。对于用户定义的类,它可能因您的用例而异。您可能希望将对象打印到控制台。对象上的简单打印命令不会为您提供任何有用的信息。但是,您可以使用 toString() 方法并将其转换为更易于理解的版本。例子

@override
String toString() {
return "($someProperty,$someOtherProperty)";
}
这将返回当时设置的该对象的任何属性。另一个(虽然不好)的目的可能是比较同一类的两个对象。与上面的例子类似,如果 的输出,你可以说这个类的两个对象是相等的。 toString() 两个对象的方法是一样的。同样,这完全取决于您的用例。

关于flutter - @override toString 方法在 Flutter Dart 类中做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64836203/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com