 |
Página
28 - 1
Qual o resultado das seguintes comandos :
String s = "01234";
System.out.println("substring:"+s.substring(2,5));
System.out.println("substring:"+s.substring(5));
System.out.println("substring:"+s.substring(6));
Geralmente em outras linguagens, para extrair uma substring, é indicada a posição onde a string se inicia e o tamanho da string a ser extraída. No java, você indica a posição onde a substring inicia e uma posição a mais do fim da substring.
Uma forma fácil de gravar a forma como funciona a extração de substring é sempre lembrar que você precisa especificar o primeiro caracter que deve ser incluído e o primeiro caracter que deve ser excluído.
Desta forma :
String s = "01234";
System.out.println("substring:"+s.substring(2,5));
//Resultado : 234
System.out.println("substring:"+s.substring(5));
//Resultado : "" ou uma string vazia
System.out.println("substring:"+s.substring(6));
Resultado : StringIndexOutOfBoundsException: String index out of range: -1
- Uma das razões do Java adotar esta forma é que a diferença entre o início e o fim sempre resulta no tamanho da substring, e para checar um intervalo vazio basta verificar se início==fim.
- Outra forma de enxergar e memorizar a forma de tratamento de substrings do java é enxergar as strings da seguinte forma :
sendo s="abcde"
(0) 'a' (1) 'b' (2) 'c' (3) 'd' (4) 'e' (5) (números trocados por letras para não dificultar a compreensão)
- Desta forma basta extrair os caracteres que estão dentro do intervalo que é passado através dos parâmetros
- s.substring(2,5) = "cde"
- s.substring(1,4) = "bcd"
|
 |
Página
28 - 2
Qual a saída do seguinte trecho de código :
System.out.println(1+010);

Colocando o '0' na frente de um literal numérico indicamos ao compilador que o literal que segue é do tipo octal. Desta forma o compilador avalia 10 octal como o decimal 8, já que no sistema octal o último numero de um dígito é 7 seguido pelo 10 que em decimal é 8.
Portanto 1+8 (em decimal), a impressão será o string: 9.
|
 |
Página
45 - 1
Qual o resultado produzido pelos seguintes comandos :
int[] intArray=null;
char[] charArray=null;

NullpointerException!!!
|
 |
Página
50 - 1
Qual característica importante foi adicionada na classe Exception a partir do J2SE 1.4?
A partir do java 1.4, é possível encadear exceções. Pode-se então capturar uma exceção, lançar outra específica da sua aplicação, sendo que esta última contém a primeira internamente (passada através do construtor), desta forma não é perdida a informação do erro que gerou inicialmente a exceção.
ex:
try
{
//... aqui é gerada uma exceção
} catch (Exception e) {
throw new MyException(e);
}
- Você deve lembrar de implementar o construtor utilizado e chamar o construtor da classe Exception.
...
public MyException(Throwable cause) {
super(cause);
// TODO Auto-generated constructor stub
}
...
|
 |
Página
55 - 1
Qual a forma mais simples de
ler um arquivo texto localizado no CLASSPATH?
Class.getResourceAsStream("");
Reader reader = new BufferedReader(new
InputStreamReader(
this.class.getResourceAsStream("arquivo.txt")));
|