我会检查int是否大于1,并将这个词设为复数或单数。我的意思是类似下面的例子:如果apple变量为1,则将返回:其他:
apple
2 apples
下面是我目前所做的代码:
"$totalApples ${totalApples > 1 ? "apples" : "apple"}"
但是,我认为应该有一些函数或包或其他方法来解决这个问题,对吗?我希望使用一个短代码,而不是这个长代码。如何检查int是否大于1,并使单词复数或单数?我将感谢任何帮助。提前感谢您!
ux6nzvsh1#
是的,在intl包中有一个plural方法,检查它from here。Getx package提供与plural方法相同的功能。但是,如果您只想创建一个简单调用方法来获取复数,则可以使用Dart扩展方法,如下所示:
intl
plural
Getx
extension PluralExtension on int { String plural(String singularWord, [String pluralLetters = "s"]) { return this > 1 ? "$this $singularWord$pluralLetters" : "$this $singularWord"; } } print(5.plural("apple")); // 5 apples print(0.plural("apple")); // 0 apple print(1.plural("apple")); // 1 apple print(10.plural("tomato", "es")); // 1 tomatoes print(1.plural("tomato", "es")); // 1 tomato
在本例中,我在int类型上添加了一个自定义的plural方法,这样您就可以在任何int类型上调用它。
int
1条答案
按热度按时间ux6nzvsh1#
是的,在
intl
包中有一个plural
方法,检查它from here。Getx
package提供与plural
方法相同的功能。但是,如果您只想创建一个简单调用方法来获取复数,则可以使用Dart扩展方法,如下所示:
在本例中,我在
int
类型上添加了一个自定义的plural
方法,这样您就可以在任何int
类型上调用它。