singlewhere print method dart

dart - method - print list flutter



Dart List min/max valor (2)

¿Cómo se obtienen los valores mínimo y máximo de una lista en Dart?

[1, 2, 3, 4, 5].min //returns 1 [1, 2, 3, 4, 5].max //returns 5

Estoy seguro de que podría a) escribir una función corta o b) copiar y ordenar la lista y seleccionar el último valor,

pero estoy mirando para ver si hay una solución más nativa si hay alguna.


Manera ineficiente:

var n = [9, -2, 5, 6, 3, 4, 0]; n.sort(); print(''Max: ${n.last}''); // Max: 9 print(''Min: ${n[0]}''); // Min: -2

Sin importar la librería ''dart: math'':

var n = [9, -2, 5, 6, 3, 4, 0]; int minN = n[0]; int maxN = n[0]; n.skip(1).forEach((b) { minN = minN.compareTo(b) >= 0 ? b : minN; maxN = maxN.compareTo(b) >= 0 ? maxN : b; }); print(''Max: $maxN''); // Max: 9 print(''Min: $minN''); // Min: -2


Suponiendo que la lista no esté vacía, puede utilizar Iterable.reduce :

import ''dart:math''; main(){ print([1,2,8,6].reduce(max)); // 8 print([1,2,8,6].reduce(min)); // 1 }