Escolar Documentos
Profissional Documentos
Cultura Documentos
Martinele
Algoritmos
de
Programação II
Nesta aula será apresentada uma revisão a respeito de estruturas condicionais (para tomada de
decisão), estruturas de repetição (laços), bem como casting e Locale (para definição de
regionalidade)
Sumário
2
1 Revisão de Casting
Em Java, se pode atribuir o valor de um tipo de variável a outro tipo de variável, entretanto, para tal é
necessário que esta operação seja apontada ao compilador. A este apontamento damos o nome de
“casting”.
Observação: Atente para o tipo de dado boolean, pois é o único tipo primitivo que não suporta casting.
Pode-se fazer conversões de tipos de ponto flutuante para inteiros, e inclusive entre o tipo caractere,
porém estas conversões podem ocasionar a perda de valores, quando se molda um tipo de maior
tamanho, como um double dentro de um int.
3
Figura 2 – Exemplos de conversões implícitas e explícitas.
O casting ocorre implicitamente quando adiciona uma variável de um tipo menor que o tipo que
receberá esse valor.
Veja a seguir um código completo com a presença de casting, tanto implícito, quanto explícito.
Outras conversões podem ser necessárias e essas são feitas a partir de métodos presentes na
linguagem. Veja exemplos no código do programa a seguir. O site Devmedia (2006), – que pode ser
encontrado nas referências ao final deste arquivo – cita uma série conversões exemplos em Java. Vale
a pena consultar.
Outros modos de conversões podem ser vistos no link a seguir: < http://gg.gg/yemku >.
Confira!
5
2 Locale, o que é?
De acordo com o blog Cod3r (2021), a linguagem Java dá suporte à internacionalização de suas
aplicações, disponibilizando diversos recursos que facilitam o desenvolvimento de programas (sejam
eles com interfaces CLIs ou GUIs), adaptando-as conforme cada região.
Isso ocorre quando a JVM é iniciada, elegendo um conjunto de configurações baseadas no sistema em
que ela está sendo executada, chamado “locale”, que define uma linguagem, uma região e quaisquer
variações na maneira de exibir e interpretar certos tipos de dados.
Segundo Cod3r (2021), tais parâmetros ficam armazenados em um objeto Locale que possui um “Enum
Category” que contém duas constantes, DISPLAY e FORMAT, responsáveis por armazenar os códigos
de línguas, que são consultadas por métodos de outras classes para determinar o tratamento de alguns
tipos de dados. Esses métodos pertencem a objetos sensíveis ao locale.
6
Podemos descobrir o locale padrão da JVM que se está utilizando, escreva o seguinte código:
7
3 Revisão das estruturas condicionais
Serão vistas algumas estruturas de dados: estruturas condicionais – estruturas de decisão, como
forma de revisão e fixação, para que não haja dúvidas quanto ao seu funcionamento. Atente a cada
uma delas e exercite para que fixe em seu aprendizado, pois estes tipos de estruturas são
comumente utilizados.
A seguir, um exemplo de código com a presença da estrutura condicional “If”, para ser estudado e
debatido. Note que o bloco de comando dessa estrutura condicional simples ocorre se a condição for
verdadeira, ou seja, se verdadeira os comandos são executados, terminando o bloco e indo para a
próxima instrução, da linha 11. Caso contrário, se a condição for falsa, apenas será ignorado o bloco
de instruções da estrutura, indo diretamente para a execução da linha 11.
A seguir, um exemplo de código com a presença da estrutura condicional “if...else”, para ser estudado
e debatido. Note que o bloco de comando dessa estrutura condicional possui instruções a serem
executadas, caso a condição seja verdadeira ou falsa. Ao final, tanto para verdadeiro ou falso, após
terem sido executadas as instruções de seus respectivos blocos, o programa segue para a linha: 12
8
Figura 8 – Exemplo de estrutura condicional If...else (composta)
A seguir, um exemplo de código com a presença da estrutura condicional “if...else if...else”, para ser
estudado e debatido. Note que o bloco de comando dessa estrutura condicional possui instruções a
serem executadas, caso qualquer uma das condições seja verdadeira ou falsa. Trata-se de uma
estrutura com várias escolhas a serem feitas. Ao final, tanto para uma das condições sendo verdadeira
ou falso (else), após terem sido executadas as instruções de seus respectivos blocos, o programa segue
para a linha: 16.
9
3.4 Estrutura condicional - de múltipla escolha – “switch...case”
A seguir, um exemplo de código com a presença da estrutura de múltipla escolha “switch...case”, para
ser estudado e debatido. Perceba atentamente a sintaxe dessa estrutura, que pode substituir a
estrutura “if...else if...else”, deixando o código mais limpo e mais fácil de ser entendido.
10
4 Revisão das estruturas de repetição (laços)
Serão vistas algumas estruturas de dados de estruturas de repetição – laços de repetição, como
forma de revisão e fixação, para que não haja dúvidas quanto ao seu funcionamento. Atente a cada
uma delas e exercite para que fixe em seu aprendizado, pois estes tipos de estruturas são
comumente utilizados.
A seguir, um exemplo de código com a presença de laço de repetição “while”, para ser estudado e
debatido. Esse código pode ser interessante quando se quer repetir um bloco.
A seguir, um exemplo de código com a presença de laço de repetição “do...while”, para ser estudado
e debatido. Esse código pode ser interessante quando se quer repetir um bloco, apresentando uma
interface ao usuário, caso seja a necessária a decisão do mesmo. As diferenças da estrutura de
repetição do...while em relação a estrutura while são listadas a seguir:
• Executa o bloco de instruções ao menos uma vez, mesmo sendo a condição falsa.
11
Figura 12 – Exemplo da estrutura de repetição do...while
A seguir, um exemplo de código com a presença de laço de repetição “for”, para ser estudado e
debatido.
12
5 Exercícios:
Em uma rodovia, há a determinação da velocidade dessa via em 100 Km/h. Dada a distância e o
tempo de percurso, calcule a velocidade média do veículo e informe se o mesmo está passível de
cometer uma infração de trânsito ou não. Observação: necessária uma pesquisa para se obter a
fórmula para cálculo da velocidade média.
2. Com base no programa acima, faça um novo projeto e utilizando-se do mesmo código, faça
alterações que permitam efetuar o cálculo mais de uma vez.
Critérios:
d. O usuário deve ser questionado se deseja continuar. Pode-se perguntar se o usuário quer
continuar na mesma operação ou então na execução do programa como um todo; fica a seu
critério.
Observação: Não existe divisão por zero, então pode ser tratado esse erro.
13
6 Referências Bibliográficas
Cod3r. O que é locale? Disponível em: <http://gg.gg/yemnt>. Acesso em: 28 de março de 2022.
JavaTpoint. Declarações if-else em java. Disponível em: < http://gg.gg/y7u5v >. Acesso em 13 de
março de 2022.
JavaTpoint. Declaração Switch no Java. Disponível em: < http://gg.gg/y7u1b >. Acesso em 14 de
março de 2022.
Universidade Java. Java - Casting de tipos primitivos. Disponível em: <http://gg.gg/yemcz>. Acesso
em 28 de março de 2022.
14