我试图在飞镖中创建一个方法但是遇到了一堵墙 . 我在看.toUpperCase();和.toLowerCase();完成了 . 我想创建的方法是.capitalize();
我想把这个方法称为String hello =“WORLD”.capitalize(); //世界
这是我到目前为止的代码
String capitalize() {
return this.codeUnitAt(0).toUpperCase() + this.substring(1).toLowerCase();
}
运行String时hello =“WORLD”.capitalize();我收到以下错误
[38; 5; 124m [2015-6-4 11:37:13.011]类'String'没有实例方法'大写' . NoSuchMethodError:找不到方法:'capitalize'接收者:“WORLD”参数:[] [0m
我知道我可以调用像 String capitalize(String s) => s[0].toUpperCase() + s.substring(1);
这样的函数但是宁愿保持字符串操作调用相同 .
谢谢,我感谢任何帮助:)
2 回答
您不能像所希望的那样扩展String类 . 只需像这样使用它:
是的,不像JS,你不能只改变Dart中的任何类 . 您只能扩展它 . 例如 . 您可以使用
capitalize
方法创建MyString
类 . 但我不认为你想要它 . 用方法capitalize
做一些StringUtils.dart
库