[Kotlin 005] — Variáveis

Erick de Lima Rocha
6 min readMay 2, 2024

O que são variáveis e quais os tipos de dados básicos em Kotlin?

Variáveis VAL e VAR

Uma variável é uma forma de armazenar e referenciar valores na memória do computador, permitindo guardar dados que podem ser alterados e acessados ao longo do tempo de execução de um programa. É importante ter lido o capítulo anterior [Kotlin 004] — Memória e dados para melhor compreensão de alguns conceitos básicos sobre memória, e dar continuidade a esse capítulo.

No Kotlin, você pode declarar variáveis usando palavras-chave VAL e VAR, e a diferença entre elas é uma das características fundamentais da linguagem, ajudando a definir se uma variável é imutável ou mutável.

VAL

A palavra-chave val indica que a variável é imutável após a sua atribuição inicial. Uma vez que você atribui um valor a uma variável val, você não pode alterá-lo. Ou seja, o conteúdo da variável é fixo e qualquer tentativa de redefini-lo resultará em erro de compilação.

Variáveis val são análogas a constantes em outras linguagens de programação, mas com a diferença de que em Kotlin elas não precisam ser conhecidas em tempo de compilação. Elas podem ser calculadas ou determinadas em tempo de execução, desde que sejam atribuídas uma vez e não mudem depois.

Use val sempre que possível, isso ajuda a garantir a integridade dos dados e evita alterações inesperadas. Usar val proporciona segurança contra mudanças indesejadas, tornando o código mais seguro. Código com muitas variáveis imutáveis é mais fácil de entender, pois você sabe que uma vez atribuído, o valor não muda, e a imutabilidade é um conceito importante na programação funcional.

VAR

A palavra-chave var indica que a variável é mutável. Isso significa que você pode mudar o valor da variável após a atribuição inicial, e é útil para cenários onde o valor precisa ser modificado, como contadores, acumuladores, variáveis de controle, etc.

Mas quando devemos usar var? Quando tivermos um lance suspeito de impedimento ou pênalti? Não. Devemos usar o var quando a mutabilidade é necessária. Se o valor de uma variável precisa ser alterado ao longo do tempo, como em um loop ou um cálculo iterativo, então var é a escolha certa.

Calculando comprimento da circunferência

Para melhor compreensão desse capítulo, eu recomendo que você tenha lido a publicação anterior [Kotlin 003] — Função.

Para calcular o comprimento da circunferência, precisamos da constante do número Pi (π) e do raio da circunferência. Vamos usar uma variável val para o valor de Pi, pois por ser uma relação constante entre duas grandezas, o valor de Pi não muda, sempre começará com 3.14, um valor imutável, logo vamos utilizar uma variável imutável.

Utilizaremos uma variável var para o valor do raio, que pode ser dado como um argumento para a função. O comprimento da circunferência pode ser calculado usando a fórmula: C=2πr, onde C é o comprimento da circunferência e r é o raio.

A seguir, um exemplo de código que define uma função para calcular o comprimento da circunferência com base no raio fornecido, utilizando val para a constante Pi e e var para o raio:

1° linha: Se trata de um comentário de linha única // informando qual a finalidade da função.

2° linha: Define uma função chamada calcularComprimento que recebe um parâmetro raio do tipo Double e retorna um valor do tipo Double.

3° linha: Se trata de um comentário de linha única // informando que a utilizamos val para constante de Pi.

4° linha: Utilizamos val para declarar a constante, nomeamos a constante como Pi e atribuímos o valor 3.14159265359 ao Pi. Inserimos um comentário na linha do código que será ignorada pelo compilador.

5° linha: Vazia, sem código, será ignorada na compilação.

6° e 7° linha: Mais um comentário de linha única e criamos uma variável chamada raioVariavel para armazenar o valor do raio recebido como argumento da função.

8° linha: Vazia, sem código, será ignorada na compilação.

9° e 10° linha: Mais um comentário de linha única e criamos uma linha de instrução e expressão. Expressão porque uma parte do código produz um valor quando avaliada: a expressão 2 * pi * raioVariavel é avaliada para calcular um valor numérico que é o resultado do produto entre esses três elementos. O resultado dessa expressão vai gerar um valor, esse valor vai ser atribuído à variável comprimento, por ser uma atribuição temos aqui uma instrução.

11° linha: Vazia, sem código, será ignorada na compilação.

12° linha: A linha return comprimento retorna o valor do comprimento calculado para quem chamou a função calcularComprimento.

O código que voce viu acima foi criada para a função de calcular o cumprimento da circuferencia, porém está faltando algo. Se lembra que o código precisa de uma função main para rodar? Vamos defini-la.

1° linha: Se trata de um comentário de linha única // informando qual a finalidade da função.

2° linha: Define uma função chamada main que não recebe parâmetro e nem retorna um valor. Será executada quando o programa for iniciado.

3° e 4° linha: Mais um comentário de linha única e define um valor de teste para o raio da circunferência. A declaração usa val porque o valor do raio não precisa ser alterado.

5° linha: Vazia, sem código, será ignorada na compilação.

6° e 7° linha: Aqui, calcularComprimento(raio) é uma chamada de função. Se lembra que funções são usadas para encapsular um bloco de código que executa uma tarefa específica? E aonde está o bloco de código que executa essa tarefa? Esta no código visto anteriormente da função calcularComprimento. Funções podem aceitar argumentos e retornar valores. Quando você vê algo entre parênteses, como calcularComprimento(raio) , isso geralmente indica que estamos chamando uma função e passando argumentos para ela. O valor dentro dos parênteses é chamado de argumento ou parâmetro da função. Neste caso, raio é o argumento passado para a função calcularComprimento. Argumentos permitem que você forneça valores para a função usar em suas operações, nesse caso o valor seria 5.0.

8° linha: Vazia, sem código, será ignorada na compilação.

9° linha: A linha é uma instrução println(“O raio é: $raio”) imprime o valor do raio para mostrar ao usuário. A função println() é usada para imprimir ou exibir uma mensagem no console ou terminal. O conteúdo entre aspas “O raio é: $raio” é uma string literal, ou seja, uma sequência de caracteres que será impressa exatamente como está. O símbolo $ dentro de uma string indica interpolação de strings. Interpolação de strings permite incorporar o valor de uma variável ou expressão dentro de uma string literal. No caso desta linha, $raio é uma interpolação que será substituída pelo valor da variável raio. Com a interpolação de strings, o valor da variável raio será automaticamente inserido na posição onde aparece $raio na string.

10° linha: Faz a mesma coisa que explicada na linha 9, porém a interpolação será substituída pelo valor da variável comprimento.

11° linha: Código se encerra com o fechamento da chave do bloco.

O resultado para este código no Console será:

Até o próxima!!!

--

--

Erick de Lima Rocha
0 Followers

Nascido em São Paulo, formado na área de TI e Pós-Graduação em Certificado de Operador de Mercado Financeiro, atua há 12 anos no Mercado Financeiro.