Encontrar o valor máximo/minuto em uma série de primitivos usando Java
É trivial escrever uma função para determinar o valor min/max em um array, como por exemplo:
/**
*
* @param chars
* @return the max value in the array of chars
*/
private static int maxValue(char[] chars) {
int max = chars[0];
for (int ktr = 0; ktr < chars.length; ktr++) {
if (chars[ktr] > max) {
max = chars[ktr];
}
}
return max;
}
mas isto já não é'isto não é feito em algum lugar?
167
3
Usando Commons Lang (para converter) + Colecções (para min/max)
Note que
Arrays.asList()
envolve o array subjacente, portanto não deve ser muito intensiva em memória e não deve realizar uma cópia nos elementos do array.Sim, it's feito na classe Collections. Note que você precisará converter sua matriz de caracteres primitivos para um Character[] manualmente.
Uma pequena demonstração:
Aqui's uma classe utilitária que fornece métodos
min/max
para tipos primitivos: Primitives.java