Pessoal, este código funciona, mas não entendi o porquê… Ele não está comparando sempre com o valor do primeiro elemento do vetor? Não está comparando uns com os outros…
Pelo que eu entendi, é atribuido o valor do elemento [0] do Array, ou seja, o valor 1.9 à variável max.
Depois o vetor é percorrido, e a cada análise de cada valor dentro do elemento, é comparado o número daquele elemento qualquer com o valor contido em max, e se este valor for maior do que max, ou seja, em nosso exemplo, 1.9, esse valor é atribuido a max, que depois é exibido…
vejam:
public class TestArray {
public static void main(String[] args) {
double[] myList = {1.9, 2.9, 3.4, 3.5};
double max = myList[0];
for (int i = 1; i < myList.length; i++) {
if (myList[i] > max)
max = myList[i];
}
System.out.println("Maximo elemento é " + max);
}
}
[quote=airmigjr]
[code]
public class TestArray {
public static void main(String[] args) {
double[] myList = {1.9, 2.9, 3.4, 3.5};
double max = myList[0];//aqui a variável max recebe o valor do primeiro item do array
for (int i = 1; i < myList.length; i++) {//aqui a iteração irá ocorrer
if (myList[i] > max) //caso o valor da posição i seja maior que o valor de max, max será substituído pelo valor da i-ésima posição.
max = myList[i];
}
System.out.println("Maximo elemento é " + max);
}
}
[/code][/quote]
Opa para ficar mais claro coloque um breakpoint na linha do ‘for’ e faça o debug. Vc vai observar a variável max sendo altera após a execução do if.
Abs!
[code] public static void main(String[] args) {
double[] myList = {1.9, 2.9, 10.0, 3.4, 3.5};
double max = 0.0;//aqui a variável max recebe o valor do primeiro item do array
for (int i = 1; i < myList.length; i++) {//aqui a iteração irá ocorrer
if (myList[i] > max){ //caso o valor da posição i seja maior que o valor de max, max será substituído pelo valor da i-ésima posição.
max = myList[i];
}
}
System.out.println("Maximo elemento é " + max);
} [/code]
pode ser assim também…não precisa ter dois vetor…
[]s
[quote=marcelo.silva.java][code] public static void main(String[] args) {
double[] myList = {1.9, 2.9, 10.0, 3.4, 3.5};
double max = 0.0;//aqui a variável max recebe o valor do primeiro item do array
for (int i = 1; i < myList.length; i++) {//aqui a iteração irá ocorrer
if (myList[i] > max){ //caso o valor da posição i seja maior que o valor de max, max será substituído pelo valor da i-ésima posição.
max = myList[i];
}
}
System.out.println("Maximo elemento é " + max);
} [/code]
pode ser assim também…não precisa ter dois vetor…
[]s[/quote]
Não achei 2 arrays em nenhum código…
Brigado gente. Ajudaram muito.
/* No caso os valores estão como arrays args no método main, mas poderia ser qualquer Array */
import java.util.Arrays;
public class Maior {
public static void main(String[] args) {
Arrays.sort(args);
for (String arg : args) {
System.out.println(args[0]);
break;
}
}
}