Mostrando postagens com marcador Pegadinhas. Mostrar todas as postagens
Mostrando postagens com marcador Pegadinhas. Mostrar todas as postagens

quarta-feira, 4 de agosto de 2010

Questão 7 - Inicialização de vetores

Considere as seguintes linhas de código:
float[] x = new float[10];
Float[] y = new Float[10];
Depois da execução, quais das expressões a seguir são verdadeiras?

A. x[9] == 0
B. x[10] == 0.0f
C. y[9] == 0.0f
D. x.length == 10
E. y.length() == 10
F. y[9] == null


O compilador inicializa todos os elementos do array x para 0.0f, que é o elemento default para tipo float. Todos os elementos do array y são inicializados para null, desde que null é o valor default para tipos de referência de objetos. Na alternativa A, 0 é promovido a 0.0f durante a comparação, enquanto que x[9] é o último elemento do array. Alternativa B é incorreta ao tentar acessar x[10], o que resulta em disparar uma exceção. A alternativa F é correta e C é incorreta porque y[9] é null e não pode ser comparada a 0.0f. Todos os arrays têm uma variável de instância nomeada length, que retorna o número de elementos no array. Dessa forma D está correta, enquanto E está incorreta visto que não há nenhum método chamado length().
Alternativas corretas: A, D, F.




segunda-feira, 2 de agosto de 2010

Questão 5 - Classes Nativas

String d = "beekeeper";
d.substring(1,7);
d = "w" + d;
d.insert(3, "bee");

System.out.println(d);

Qual o resultado?
   A. weekbeeeep
   B. wbeekeeper
   C. wbeekeepe
   D. weekeeper
   E. Falha de compilação
   F. RunTime Exception


Tentando digitar o código no eclipse, e vimos que o objeto String não possui o método insert, assim, não compila.

quinta-feira, 29 de julho de 2010

Questão 3 - Try Catch

System.out.println("1");
try {
   System.out.println("2");
   throw new FileNotFoundException();
}
System.out.println("3");
catch(EOFException e) {
   System.out.println("4");
}
catch (FileNotFoundException e ) {
   System.out.println("5");
}


   A. O código não compila
   B. Saída: 125
   C. Saída: 124
   D. Saída: 1235


Até poderíamos ter algum código compilado, se o System.out.println("3"); não estivesse no meio do bloco try catch, cuidado com este tipo de pegadinha, pois se não prestarmos atenção nisto, responderíamos certamente a opção D ou B, mas o bloco try catch está sintaticamente errado, logo não há como compilar , opção A.