


































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Os melhores documentos à venda: Trabalhos de alunos formados
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Comunidade
Peça ajuda à comunidade e tire suas dúvidas relacionadas ao estudo
Descubra as melhores universidades em seu país de acordo com os usuários da Docsity
Guias grátis
Baixe gratuitamente nossos guias de estudo, métodos para diminuir a ansiedade, dicas de TCC preparadas pelos professores da Docsity
[SCJP] Slides - Capitulo 5 - Livro Kathy Sierra Criado pelo pessoal do grupo de estudos para certificação da PR. Vale a pena conferir
Tipologia: Slides
1 / 42
Esta página não é visível na pré-visualização
Não perca as partes importantes!
Formato básico:if (expressãoBooleana) {
...println(“entrou no if”); } if (new Boolean(true) && !ehMentira()) {
...println("no if"); } if (a == b & b > c || c != d && d <= a) {
...println("dentro"); }
if (ehVerdade())
if (!ehVerdade())
...println(“paradoxo”);
else
...println(“pior que é verdade”); int verum = 1, falsum = 0;// inválidos:if (verum)if (verum == true)if (1)if (falsum == false)// válidos:if (verum == 1)if (falsum == 0)
casado com o último if^ if (nota > 7)
...println(“passou”);...println(“deu beleza”);
char ch = 'a';if (ch == 'c') {
...println(“cê”); } else {
if (ch == 'b') {
...println(“bê”); } else {
if (ch == 'a') {
...println(“á”); } else {
...println(“outra”); } } }
char ch = 'a';switch (ch) {
case 'c':
...println(“cê”);break; case 'b':
...println(“bê”);break; case 'b':
...println(“á”);break; default:
...println(“outra”);
}
long l = 11;switch (l) { } // possible lost of precision
a expressão do switch só avaliará enums e (valores e variáveis que puderem ser implicitamente convertidos num int)final int x = 0, a = 1, b;b = 2;switch (x) {
case a:case b: // constant expression required }
o argumento do case tem que ser uma constante em tempo de compilação (variável literal ou final, expressão constante,incluindo enum)
byte b = 22;switch (b) {
case 22:case (b < 23):
break; case 128:
break; case 22: }
switch (new Integer(127)) {
case 127 {
...println(“deu beleza?”); } } int x = getNumPositivoMenorQueDez();switch (x) {
case 2:case 4:case 6:case 8:
...println(“é par”);
break;
default:
...println(“é ímpar”);
break;
} // passagem completa
short s = 12;// --s;switch (s) {
case 11: ...print(“11”);default: ...print(“default”);case 13: ...print(“13”); }
while útil quando não se sabe quantas vezes o bloco terá que ser repetidowhile (expressaoBooleana) {
// um mói de coisa }
do-while útil quando se quer executar um bloco ao menos uma vez antes de avaliar a expressãodo {
// outro mói } while (outraExpressao); // <- detalhe no ponto-e-vírgula
útil quando se souber o números de vezes que executará as instruções do bloco do loopfor (/* inicialização / ; / condição / ; / iteração */) {
// corpo do loop } for (int k = 0, j = 1; k < 10 && j < 10; k++, --j) {}
// beleza } ...println(k); // k já não existe mais aqui...println(j); // cannot find symbol
ecxeto por uma saída forçada, as expressões de iteração e condição serão as últimas a seres executada num loop for
for (declaração : expressão) int x;long x2;Long[] La = {4L, 5, 6l};long[] la = {7l, 8L, 9};int[][] dobrado = {{3, 2, 1}, {6, 5, 4}};String[] ss = {“um”, “dois”, “quatro”};Animal[] animais = {new Dog(), newCat()};for (float y: la);for (long lp: La);for (int[] n: dobrado);for (int n2: dobrado[1]);for (String s: ss);for (Object o: ss);for(Animal a: animais);
for(x2: la);for(int x2: dobrado);for(int x3: la);for(Dog d: animais);
continue
próxima iteração do laço (não pode vir fora um loop)
break
vai para próxima linha depois do laço
for (int in = 0; i < 10; i++) {
continue; // loop infinito? } for (int i = 0; i < 10; i++) {
if (i & 1 == 0) {
continue; } if (i == 8) {
break; } ...println(i); }
as instruções continue e break rotuladas devem ficar dentro do loop que tiver o mesmo rótulo ou o código não serácompiladoint b = 10;int[] a = new int[4];1rotulo:
for (int n: a) break 1rotulo; rotulo2: {
while (b > 0) {
...println(b--); } continue rotulo2; }
produz código eficiente e organizado
mantém código de exceções separado do código “principal'
permite “reutilização” do código de exceção para as diferentes exceções possíveis
exceção
significa “condição excepcional” (falha no hardware,
exaustão de recursos, erros...)
quando um evento excepcional ocorre, diz-se que uma exceção será
lançada
o código responsável por fazer algo com a exceção é chamado de
manipulador de exceções