[ Resolvido ] Ajuda pegar maior Palavra em Vetor

Estou com problemas pra pegar a maior palavra digitado em string.
Abaixo está o que eu consegui fazer.

Por exemplo: Eu entro com palavra: Amor e depois Paixao
Eu consigo pegar o tamano da palavra Amor = 4 e Paixão = 6
Só que eu tentei criar IF para pegar o maior que no exemplo seria Paixao e exibr somente ele, mas não consegui.
Tem palavras que da certinho porem outras ele pega a menor e nao a maior.

[code]public class Array {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    // TODO code application logic here

   String[] nomes = new String[2];

   String nome = "";
   int maior = 0;

int tam = nomes.length;

for (int i = 0; i < nomes.length; i++)
{
nomes[i] = JOptionPane.showInputDialog("Digite o " + (i + 1) + “º nome”);
}

int tamanho = nomes.length;
for ( int i = 0; i < tamanho; i++)
{
tam = nomes[i].length() ;
System.out.println(tam);

    }
    JOptionPane.showMessageDialog(null,nome);          
    }

}[/code]

cara, falta você comparar os itens do seu array, do jeito que está você sempre vai mostrar a ultima palavra

// omitido...
String maiorPalavra = "";
int tamanho = nomes.length;  
    for ( int i = 0; i < tamanho; i++)  
        {  
            tam = nomes[i].length() ;  
            if ( maiorPalavra.length < tam ){
               maiorPalavra = nomes[i];
            }
            System.out.println(tam);  
  
        }  
        JOptionPane.showMessageDialog(null,maiorPalavra );    
// omitido...

tenta algo assim

[quote=paulovloghan]cara, falta você comparar os itens do seu array, do jeito que está você sempre vai mostrar a ultima palavra

// omitido...
String maiorPalavra = "";
int tamanho = nomes.length;  
    for ( int i = 0; i < tamanho; i++)  
        {  
            tam = nomes[i].length() ;  
            if ( maiorPalavra.length < tam ){
               maiorPalavra = nomes[i];
            }
            System.out.println(tam);  
  
        }  
        JOptionPane.showMessageDialog(null,maiorPalavra );    
// omitido...

tenta algo assim[/quote]

Ta dando erro no

if ( maiorPalavra.length < tam ){

Fala ai raffaelssp

Acredito que a solução do seu problema seja essa:
1 - inicializei a variavel maior com zero
2 - criei um If onde ele analisa se a variavel maior é MENOR que o tamanho da palavra corrente, caso seja, maior irá receber o tamanho da palavra corrente e indicepalavra receberá o indice que indica a posição da palavra no "vetor".
3 - por fim como sei aonde a maior palavra esta posicionada, utilizo a variavel indicepalavra para indicar qual é a maior.
Criei um if onde e

public class Array {
    public static void main(String[] args) {
        String[] nomes = new String[2];
        int maior = 0;
        int indicepalavra=0;
        
        int tamanho = nomes.length;

        for (int i = 0; i < tamanho; i++) {
            nomes[i] = JOptionPane.showInputDialog("Digite o " + (i + 1) + "º nome");
        }
        for (int i = 0; i < tamanho; i++) {
            if (maior < nomes[i].length()) {
                maior = nomes[i].length();
                indicepalavra = i;
            }
        }
        JOptionPane.showMessageDialog(null, nomes[indicepalavra]);
    }
}

Abração 8)
Max

[quote=FacaNaCaveira]Fala ai raffaelssp

Acredito que a solução do seu problema seja essa:
1 - inicializei a variavel maior com zero
2 - criei um If onde ele analisa se a variavel maior é MENOR que o tamanho da palavra corrente, caso seja, maior irá receber o tamanho da palavra corrente e indicepalavra receberá o indice que indica a posição da palavra no "vetor".
3 - por fim como sei aonde a maior palavra esta posicionada, utilizo a variavel indicepalavra para indicar qual é a maior.
Criei um if onde e

public class Array {
    public static void main(String[] args) {
        String[] nomes = new String[2];
        int maior = 0;
        int indicepalavra=0;
        
        int tamanho = nomes.length;

        for (int i = 0; i < tamanho; i++) {
            nomes[i] = JOptionPane.showInputDialog("Digite o " + (i + 1) + "º nome");
        }
        for (int i = 0; i < tamanho; i++) {
            if (maior < nomes[i].length()) {
                maior = nomes[i].length();
                indicepalavra = i;
            }
        }
        JOptionPane.showMessageDialog(null, nomes[indicepalavra]);
    }
}

Abração 8)
Max[/quote]

Show de bola agradeço!