Como funciona?

fiz um programa que meu professor passou na sala mais copiei do caderno e naum entedi como ele funciona ai está ele, se alguém sabe como funciona por favor me explique.

[code]/*Faça um programa que leia 10 nomes de alunos e imprima qual o menor nome em
ordem alfabetica/

import javax.swing.*;

public class ProgS
{
public static void main(String args[])
{
String NOME,NOME_MENOR=“zzzzzzz”;//Porque NOME_MENOR recebe zzzzzzz???
int i;

	for(i=0;i<10;i++)
	{
		NOME=JOptionPane.showInputDialog("Dígite: o "+(i+1)+" nome");
		
		if(NOME.compareTo(NOME_MENOR)<0)//porque que tem k colocar NOME_MENOR dentro em parentese,
		//Porque NOME_MENOR tem k ser menor k zero????
		{
			NOME_MENOR=NOME;//Porque NOME_MENOR recebe nome?
		}
	}
	JOptionPane.showMessageDialog(null,NOME_MENOR);
}

}[/code]

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - marcossousa[/color][/size] :joia:

Porque foi considerado como o maior nome possivel, assim, qualquer nome será menor que ele…

Porque compareTo() é um metodo e NOME_MENOR está sendo passado como parametro, estude o basico da linguagem que vai ver isso…

O metodo compareTo() retorna 0 se as Strings forem iguais, um numero positivo se a String da qual o metodo foi chamado (NOME) for maior que a passada como parametro (NOME_MENOR), e um numero negativo se a String da qual o metodo foi chamado for “menor” que a passada por parametro.

Porque se o NOME é menor que NOME_MENOR então ele é o novo menor nome…

[quote=“edymrex”]fiz um programa que meu professor passou na sala mais copiei do caderno e naum entedi como ele funciona ai está ele, se alguém sabe como funciona por favor me explique.
/*Faça um programa que leia 10 nomes de alunos e imprima qual o menor nome em
ordem alfabetica/

import javax.swing.*;

public class ProgS
{
public static void main(String args[])
{
String NOME,NOME_MENOR=“zzzzzzz”;//Porque NOME_MENOR recebe zzzzzzz???
int i;

	for(i=0;i&lt;10;i++)
	{
		NOME=JOptionPane.showInputDialog("Dígite: o "+(i+1)+" nome");
		
		if(NOME.compareTo(NOME_MENOR)&lt;0)//porque que tem k colocar NOME_MENOR dentro em parentese,
		//Porque NOME_MENOR tem k ser menor k zero????
		{
			NOME_MENOR=NOME;//Porque NOME_MENOR recebe nome?
		}
	}
	JOptionPane.showMessageDialog(null,NOME_MENOR);
}

}[/quote]

Porque NOME_MENOR recebe zzzzzzz???Ele precisa ser iniciado com algum valor no qual deva se basear para fazer a comparação.
porque que tem k colocar NOME_MENOR dentro em parentesePorque ele está passando o nome_menor como parametro para o métodio que vai compará-lo com o nome.
Porque NOME_MENOR tem k ser menor k zero???A fuunção retorna um inteiro se for maior que zero que eles são iguais ou o nome é maior que nome_menor.
Porque NOME_MENOR recebe nome?Bom , esta já está respondida :
Faça um programa que leia 10 nomes de alunos e imprima qual o menor nome .

Um Abraço !

Muito obrigado pela informação!!
estou lendo java como programar 6ª edição, vcs acham esse livro bom??
tem varias passagens nele k eu achu bem complicadas…
quando vcs tavam apredendu a programar qual foi o livro k vcs usaram??
como vcs fizeram para assimilar o assunto??

[quote=“edymrex”]Muito obrigado pela informação!!
estou lendo java como programar 6ª edição, vcs acham esse livro bom??
tem varias passagens nele k eu achu bem complicadas…
quando vcs tavam apredendu a programar qual foi o livro k vcs usaram??
como vcs fizeram para assimilar o assunto??[/quote]

Esse livro ae é muito bom , eu possuo a 4ª edição.Tenho tbm o Core Java 1.Para aprender Java , como não tenho muito tempo , fiz um curso em uma empresa aqui de BH , foi muito bom, o Básico e o Avançado no sábado de 8 às 18 …rsrsrs.Ví tbm na faculdade na matéria POO(Programação Orientada a Objetos), tem umas matérias tbm exigem que os trabalhos sejam feitos em Java ae vc tem que ralar mesmo. Depois corri atrás sozinho mesmo , contando com a ajuda da galera aqui é claro.

Um Abraço !