Entendendo Expressões, Instruções e Blocos em Java
Entendendo Expressões, Instruções e Blocos em Java
Este guia explica expressões, instruções e blocos em Java com exemplos práticos, baseando-se na Especificação da Linguagem Java (JLS) para clareza autoritativa.
Em capítulos anteriores usamos expressões, instruções e blocos sem nos aprofundar em sua mecânica. Agora que você está confortável com variáveis, operadores e literais, vamos explorar esses conceitos fundamentais em profundidade.
Expressões Java
Uma expressão Java combina variáveis, operadores, literais e chamadas de método para produzir um valor. Por exemplo:
int score;
score = 90;
Aqui, score = 90 é uma expressão que avalia para um int. Outra ilustração:
Double a = 2.2, b = 3.4, result;
result = a + b - 3.4;
Neste snippet, a + b - 3.4 é uma expressão aritmética que resulta em um Double. Expressões também podem produzir valores booleanos, como em condicionais:
if (number1 == number2)
System.out.println("Número 1 é maior que número 2");
Aqui, number1 == number2 retorna um booleano, e a string dentro do println é uma expressão literal de string.
Instruções Java
Uma instrução é uma unidade completa de execução. Por exemplo:
int score = 9*5;
Esta instrução multiplica 9 por 5 e atribui o resultado a score. Observe que a expressão 9 * 5 está embutida na instrução.
Instruções de Expressão
Qualquer expressão pode ser transformada em uma instrução terminando-a com ponto e vírgula (;). Estas são chamadas de instruções de expressão. Por exemplo:
// expressão
number = 10
// instrução
number = 10;
Aqui, number = 10 é uma expressão; adicionar o ponto e vírgula a transforma em instrução. A mesma regra se aplica a operadores de incremento:
// expressão
++number
// instrução
++number;
Ambas as formas são válidas, mas apenas a última executa durante o tempo de execução.
Instruções de Declaração
Java usa instruções de declaração para criar variáveis. Exemplo:
Double tax = 9.5;
Esta instrução declara uma variável tax e a inicializa com 9.5. Instruções de declaração são essenciais para segurança de tipos e são definidas na JLS §4.2.
Dica: Instruções de controle de fluxo — como if, for e while — são abordadas posteriormente. Elas governam tomada de decisão e loops.
Blocos Java
Um bloco agrupa zero ou mais instruções entre chaves ({ }). Exemplo:
class Main {
public static void main(String[] args) {
String band = "Beatles";
if (band == "Beatles") {
// início do bloco
System.out.print("Hey ");
System.out.print("Jude!");
} // fim do bloco
}
}
Saída:
Hey Jude!
O bloco if { … } contém duas instruções. Um bloco também pode ser vazio, como mostrado abaixo:
class Main {
public static void main(String[] args) {
if (10 > 5) {
// início do bloco
} // fim do bloco
}
}
Mesmo sem instruções, o bloco é sintaticamente válido. Da mesma forma, o corpo de um método pode ser um bloco vazio:
class AssignmentOperator {
public static void main(String[] args) {
// início do bloco
} // fim do bloco
}
Blocos são definidos na JLS §14 e são fundamentais para escopo e controle de fluxo.
Java
- Expressões, Instruções e Blocos em C#: Guia Completo com Exemplos Práticos
- Variáveis e Literais em Java: Guia Completo
- Dominando Entrada e Saída em Java: Imprimir, Ler e Formatados Seus Dados
- Entendendo Expressões, Instruções e Blocos em Java
- Classes e Objetos em Java: Guia Prático
- Classes e Métodos Abstratos em Java: Guia Completo
- Dominando Classes Aninhadas e Internas em Java: Tipos, Exemplos e Boas Práticas
- Java throw vs throws: Dominando Tratamento de Exceções com Exemplos Práticos
- Dominando Autoboxing e Unboxing em Java: Exemplos Práticos e Boas Práticas
- Dominando Expressões Lambda em Java: Do Básico à Stream API