int min = nums[i + 1]; //<-- initial declaration
for (int j = i+2; j <nums.length ; j++) {
if (nums[j] < min) {
min = nums[j]; //<--reassigning
}
}
if (min < current) {
swap(nums, i, minIndex);
}
Quando reatribuo a variável " min ", o IntelliJ Idea me dá o aviso " Reassigned local variable " e o sublinha. Se eu alterar o nome da variável, não posso usá-la dentro do bloco if abaixo porque ela sai do escopo. Existe uma maneira melhor? (não reatribuir e capacidade de usar min dentro do bloco if)
Se estiver usando Java 8+, você pode usar a Stream API para obter o valor min. Aqui
Arrays.stream(int[] array, int startInclusive, int endExclusive)
cria um stream a partir do array, começando do elemento emi+1
até o fim: