DEV Community

Anderson Castro
Anderson Castro

Posted on

1

Você conhece a palavra-chave var no Java?

A partir do Java 10, a palavra-chave var foi introduzida para facilitar a declaração de variáveis locais, permitindo que o tipo seja inferido pelo compilador. Isso traz mais simplicidade e legibilidade ao código, especialmente em situações onde o tipo é óbvio.

Exemplos:

var nome = "Anderson"; // Inferido como String
var numero = 8;        // Inferido como int
Enter fullscreen mode Exit fullscreen mode

Vantagens:
1) Código mais limpo:

var lista = List.of("Java", "Anderson");
Enter fullscreen mode Exit fullscreen mode

2) Legibilidade: Evita repetições desnecessárias.

Cuidados:

  • Só pode ser usada em variáveis locais e inicializadas.
  • Evite quando o tipo não for óbvio:
var x = calcular(); // Tipo não claro
Enter fullscreen mode Exit fullscreen mode

Use o var com moderação para manter o código simples e legível!

Top comments (2)

Collapse
 
wldomiciano profile image
Wellington Domiciano

Muito bom. Gostei da ênfase que vc deu no uso apenas quando o tipo for óbvio.

Um detalhe legal sobre a var é que ela não é bem uma palavra-chave. Ele é uma
palavra-chave contextual.

Esta distinção é importante porque palavras-chave contextuais são consideradas
palavras-chaves apenas em certos contextos.

Então, não é errado usar var como nome de variáveis locais, parâmetros, campos
ou métodos. O código abaixo é completamente válido:

public class App {
  private static String var = "World!";

  public static void main(String... args) {
    var var = var("Hello, ");
    System.out.println(var);
  }

  private static String var(String var) {
    return var + App.var;
  }
}
Enter fullscreen mode Exit fullscreen mode

Mas usá-lo como nome de uma classe ou interface causa erro.

Collapse
 
soncastro profile image
Anderson Castro

Muito bom Wellington! Ótima colocação! Obrigado!

The Most Contextual AI Development Assistant

Pieces.app image

Our centralized storage agent works on-device, unifying various developer tools to proactively capture and enrich useful materials, streamline collaboration, and solve complex problems through a contextual understanding of your unique workflow.

👥 Ideal for solo developers, teams, and cross-company projects

Learn more