Questãozinha básica

eai pessoal, tavam com saudades de uma questãozinha? hahehae, lá vai… essa é bem simples, just for fun, qual será a saída do programa abaixo, se eu executar a classe mandando os seguintes argumentos:

java Test portal java

public class Test {

   public static void main( String [] args ) {

      String nomes[] = new String[5];

      for ( int x = 0; x < args.length; x++ )
         nomes[x] = args[x];

      System.out.println( nomes[2] );
   }

}

portal

acho que vai acontecer o seguinte!
dentro do for: nomes[0] = “portal” e nomes[1]= “java”

o resto do vetor fica com null!
e imprime null!!!

teste de mesa
lembrando que o indice de array em java inicia em 0

args={“java”,“teste”,“portal”,“java”}
nomes = {"","","","",""}

x = 0
args.length = 4


-> executa 1º for, pois X < args.length

args={“java”,“teste”,“portal”,“java”}
nomes = {“java”,"","","",""}

incrememta x
x = 1
args.length = 4


-> executa 1º for, pois X < args.length

args={“java”,“teste”,“portal”,“java”}
nomes = {“java”,“teste”,"","",""}

incrememta x
x = 2
args.length = 4


-> executa 1º for, pois X < args.length

args={“java”,“teste”,“portal”,“java”}
nomes = {“java”,“teste”,“portal”,"",""}

incrememta x
x = 3
args.length = 4


-> executa 1º for, pois X < args.length

args={“java”,“teste”,“portal”,“java”}
nomes = {“java”,“teste”,“portal”,“java”,""}

incrememta x
x = 4
args.length = 4


-> sai do laco, pois x = args.length

-> imprimi nomes[2]
portal

-> sai[size=“9”][/size][size=“12”][/size]

putz…

achei que java Test portal java eram todos argumentos :oops:
ki mancada…

Perdão a tds do forum !!!

Uééééé

nao entendi psilva??? mas as quatro palavras são argumentos!!

e a saída será como vc disse mesmo, não entendi seu ultimo post!!

mas a saída será portal!

cya!

saída: null

o arg só tem 2 posições… args[0] = “portal” args[1] = “java”

ahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

agora entendi o soh tem dois argumentos neh aheiuahiehiauhe

nem tinha me ligado que o java Test era de execussao… aheiuahe passei batido nessa!

realmente a saida vai ser null
hauieiahueihaiuehiuh

pegadinha aheiuaeiaeiuhiauheiuh

abraço!!

cya!

[quote=“jujo”]ahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh

agora entendi o soh tem dois argumentos neh aheiuahiehiauhe

nem tinha me ligado que o java Test era de execussao… aheiuahe passei batido nessa!

realmente a saida vai ser null
hauieiahueihaiuehiuh

pegadinha aheiuaeiaeiuhiauheiuh

abraço!!

cya![/quote]

nao, vai ser portal, olha soh:

ou seja, esses sao argumentos, o camando vai ser o seguinte:

java Test java Test portal java

por isso o resultado vai ser portal…

então a questão está mal formulada…

se “java Test portal java” é a linha de comando executada, então o resultado é “null”

se a linha de comando executada no prompt for “java Test java Test portal java” ai o resultado é “portal”

ahhhhhhhh o importante eh que entendemos o negocio entao
ahieuahieuhaiuh

o matheus eh um bronco e nao sabe escrever aheiaheiuhaieha pelamor!
hauieaieuaih

cya!!

pra mim ta bem claro, “com os seguintes argumentos”, isso quer dizer q todos esses sao argumentos e necessariamente estao no array args…

vcs eh q n sabem ler ahuahuahuahuahauau

nããã… vcs entenderam o lance dos argumentos né!!! são só 2!! “portal” e “java”… affff. :???: a saída é null, pq todos os elementos de array, independentes se são variáveis de instancia ou locais de um método, são inicializados com seus valores defaults, no caso de String, é null!!!

pow, entaum vc devia falar “o programa sendo executado com o seguinte comando”, ou postar apenas os argumentos q seriam realmente passados… assim eu pensei q era pegadinha ahuahauahuahuau