在尋找最聰明的,最有效,最可讀的方式的小做以下最聰明的辦法:什麼是找到更大的/兩數
int one = 1, two = 2;
int larger = one < two?two:one;
我喜歡(或下面的一個可變參數版本):
int largest(one,two){return one<two?two:one;}
int larger = largest(one,two);
但是飛鏢沒有內聯或宏。
隨着列表:
var nums = [51,4,6,8];
nums.sort();
in largest = nums.last
或(謝謝你,君特Zöchbauer):
print([1,2,8,6].reduce(max));
使用數學庫:
import 'dart:math';
int largest = max(21,56);
也許是最好的,但如何有效的是與第一種方法相比,最大?
爲什麼這個問題?
在第一種方法中,我必須檢查比較是否適合每個人;有時候有數百人。第二個,只有一個函數可以驗證,但有數百個函數調用。
參見HTTP ://stackoverflow.com/questions/20490868/dart-list-min-max-value/20490970#20490970 –