Você está aqui: Java ::: Fundamentos da Linguagem ::: Tipos de Dados |
Como usar o tipo de dados char da linguagem JavaQuantidade de visualizações: 25179 vezes |
O tipo de dados char é usado para representar um único caractere. Veja:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public class Estudos{ public static void main(String args[]){ char letra1 = 'A'; char letra2 = 'B'; System.out.println("As letras são: " + letra1 + " e " + letra2); System.exit(0); } } Observe que um literal string deve estar entre aspas duplas, enquanto que um literal do tipo caractere deve estar entre aspas simples. Desta forma, "H" é uma string e 'H' é um caractere. O tipo char é integral mas sem sinal. A faixa de uma variável deste tipo vai de 0 à 65536. Os caracteres em Java são codificados em Unicode, que é um codificação de 16 bits capaz de representar uma larga faixa de caracteres internacionais. Se os 9 bits mais significantes de um char forem todos 0, então a codificação será a mesma que o ASCII de 7 bits. É possível atribuir literais inteiros à uma variável do tipo char. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public class Estudos{ public static void main(String args[]){ char letra = 98; System.out.println("A letra é: " + letra); System.exit(0); } } Este código exibirá o caractere 'b'. Veja um exemplo no qual imprimimos todas as letras do alfabeto minúsculo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public class Estudos{ public static void main(String args[]){ for(char i = 97; i <= 122; i++){ System.out.print(i + " "); } System.exit(0); } } O tipo char pode ser convertido (sem a necessidade de cast) para os seguintes tipos: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- char -> int -> long -> float -> double Não é possível converter um char em um short ou byte. Caso isso seja realmente necessário, temos que fazer uma coerção (cast). Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- public class Estudos{ public static void main(String args[]){ char letra = 57; byte valor = (byte)(letra); System.exit(0); } } É fácil entender porque um char não pode ser convertido implicitamente em um byte. Um char possui 16 bits enquanto um byte possui apenas 8 bits. Mas, um short possui 16 bits. Assim, o que impede a conversão implicita de um char para um short? É simples. Como o tipo short possui sinal (aceita valores negativos) e o tipo char é sem sinal, o resultado é que o tipo short possui um bit a menos (reservado para o sinal) e portanto, não pode acomodar os 16 bits do tipo char. |
Link para compartilhar na Internet ou com seus amigos: |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade) |
Exercícios Resolvidos de Java - Como calcular a potência de um número usando recursividade em Java - Funções recursivas em JavaQuantidade de visualizações: 4588 vezes |
Pergunta/Tarefa: A potenciação ou exponenciação é a operação de elevar um número ou expressão a uma dada potência. Escreva um método Java recursivo que recebe uma base e um expoente e eleva a base ao expoente. Seu método deverá possuir a seguinte assinatura: public static int potencia(int base, int expoente){ // sua implementação aqui } Sua saída deverá ser parecida com: Informe a base: 5 Informe o expoente: 3 A base 5 elevada ao exponente 3 é 125 Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // cria um novo objeto da classe Scanner Scanner entrada = new Scanner(System.in); // solicita a base System.out.print("Informe a base: "); // lê a base int base = Integer.parseInt(entrada.nextLine()); // solicita o expoente System.out.print("Informe o expoente: "); // lê o expoente int expoente = Integer.parseInt(entrada.nextLine()); // mostra o resultado System.out.print("A base " + base + " elevada ao exponente " + expoente + " é " + potencia(base, expoente)); System.out.println("\n"); } // método recursivo que eleva uma base a um determinado expoente public static int potencia(int base, int expoente){ // a recursivida deve parar quando o expoente for igual a 1 if(expoente == 1){ return base; } else{ // efetua uma nova chamada recursiva fornecendo o expoente - 1 return base * potencia(base, expoente - 1); } } } |
Java ::: Java + MySQL ::: Metadados da Base de Dados (Database Metadata) |
Java MySQL - Como obter uma lista das funções de data e hora suportadas pelo MySQL usando o método getTimeDateFunctions() da interface DatabaseMetaDataQuantidade de visualizações: 5319 vezes |
Em algumas situações gostaríamos de, via código, obter uma lista das funções de data e hora suportadas pelo MySQL. Para isso podemos usar o método getTimeDateFunctions() da interface DatabaseMetaData. É importante observar que, no Sun Microsystem's JDBC Driver for MySQL, a interface DatabaseMetaData é implementada por uma classe do mesmo nome, no pacote com.mysql.jdbc.DatabaseMetaData. E esta classe implementa o método getTimeDateFunctions() de forma a retornar a lista de funções de data e hora separadas por vírgulas. Veja um trecho de código Java no qual listamos todas as funções de data e hora suportados no MySQL 5.0: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudosbancodados; import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.DriverManager; import java.sql.SQLException; public class EstudosBancoDados{ public static void main(String[] args) { // strings de conexão String databaseURL = "jdbc:mysql://localhost/estudos"; String usuario = "root"; String senha = "osmar1234"; String driverName = "com.mysql.jdbc.Driver"; try { Class.forName(driverName).newInstance(); Connection conn = DriverManager.getConnection(databaseURL, usuario, senha); // vamos obter um objeto da classe com.mysql.jdbc.DatabaseMetaData DatabaseMetaData dbmd = conn.getMetaData(); // vamos obter a lista de funções de data e hora disponíveis // nesta versão do MySQL String funcoesDataHora = dbmd.getTimeDateFunctions(); // como a lista de funções está separada por vírgulas, vamos obter // uma matriz de strings String funcoes[] = funcoesDataHora.split(","); // vamos mostrar o resultado for(int i = 0; i < funcoes.length; i++){ System.out.println(funcoes[i]); } } catch (SQLException ex) { System.out.println("SQLException: " + ex.getMessage()); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("VendorError: " + ex.getErrorCode()); } catch (Exception e) { System.out.println("Problemas ao tentar conectar com o banco de dados: " + e); } } } Ao executarmos este código teremos o seguinte resultado: DAYOFWEEK WEEKDAY DAYOFMONTH DAYOFYEAR MONTH DAYNAME MONTHNAME QUARTER WEEK YEAR HOUR MINUTE SECOND PERIOD_ADD PERIOD_DIFF TO_DAYS FROM_DAYS DATE_FORMAT TIME_FORMAT CURDATE CURRENT_DATE CURTIME CURRENT_TIME NOW SYSDATE CURRENT_TIMESTAMP UNIX_TIMESTAMP FROM_UNIXTIME SEC_TO_TIME TIME_TO_SEC |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Como calcular salário líquido em Java - Calculando o salário líquido de um professorQuantidade de visualizações: 10321 vezes |
Pergunta/Tarefa: Escreva um programa Java que calcule o salário líquido de um professor. Seu programa deverá solicitar que o usuário informe o valor da hora aula (como double), o número de horas trabalhadas no mês (como inteiro) e o percentual de desconto do INSS (como double). Em seguida mostre o salário líquido, formatado de acordo com a moeda brasileira em vigor (na resolução eu usei o Real). Sua saída deverá ser parecida com: Informe o valor da hora aula: 28 Informe o número de horas trabalhadas no mês: 12 Informe o percentual de desconto do INSS: 8 Salário Bruto: R$ 336,00 Total de Descontos: R$ 26,88 Salário Líquido: R$ 309,12 Veja a resolução comentada deste exercício usando Java console: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package estudos; import java.text.NumberFormat; import java.util.Scanner; public class Estudos{ public static void main(String[] args) { // vamos fazer a leitura usando a classe Scanner Scanner entrada = new Scanner(System.in); // vamos ler o valor do hora aula System.out.print("Informe o valor da hora aula: "); double valorHoraAula = Double.parseDouble(entrada.nextLine()); // vamos ler o número de horas trabalhadas no mês System.out.print("Informe o número de horas trabalhadas no mês: "); int horasTrabalhadas = Integer.parseInt(entrada.nextLine()); // vamos ler o percentual de desconto do INSS System.out.print("Informe o percentual de desconto do INSS: "); double percentualDescontoINSS = Double.parseDouble(entrada.nextLine()); // vamos calcular o salário bruto double salarioBruto = valorHoraAula * horasTrabalhadas; // agora calculamos o total do desconto double totalDesconto = (percentualDescontoINSS / 100) * salarioBruto; // finalmente calculamos o salário líquido double salarioLiquido = salarioBruto - totalDesconto; // mostramos o resultado NumberFormat formato = NumberFormat.getCurrencyInstance(); System.out.println("Salário Bruto: " + formato.format(salarioBruto)); System.out.println("Total de Descontos: " + formato.format(totalDesconto)); System.out.println("Salário Líquido: " + formato.format(salarioLiquido)); } } |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Classificação de turbinas O processo de conversão de energia hidráulica em energia mecânica em uma turbina pode também ser utilizado para uma classificação em turbinas de ação ou de reação. Considerando as turbinas de reação, qual afirmativa está correta? A) As turbinas de reação são similares às de ação e operam com pressão variável. B) As turbinas de reação são as turbinas que têm pressão constante no sistema. C) Nas turbinas de reação, a água tem pressão variando desde a entrada até a saída. D) As turbinas de ação correspondem a um subgrupo das turbinas de reação mista. E) Nas turbinas de reação, o fluido converte energia mecânica em energia hidráulica. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Analise o seguinte código Pythona = 1 while True: if a % 3 == 0: break print(a) a += 1 Qual é o resultado de sua execução? A) Um erro de execução B) 1 2 C) 1 2 3 D) Um laço while infinito Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual é a forma correta de se declarar uma variável do tipo inteiro em Python? A) valor = int(20) B) valor = 20 C) As formas A e B estão corretas D) valor = integer(20) E) As formas B e D estão corretas Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em JavaScript |
Analise o seguinte trecho de código JavaScriptvar valores = new Array(2, 4); Este código A) cria uma matriz chamada valores com 2 linhas e 4 colunas. B) cria um array valores e atribui os valores 2 e 4 para valores[1] e valores[2]. C) cria um array valores e atribui os valores 2 e 4 para valores[0] e valores[1]. D) cria um array de três elementos com os índices variando de 2 até 4. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Viscosidade dos fluidos A velocidade é um fator determinante na viscosidade de um fluido. Muitos estudos apresentam o cálculo da viscosidade a partir da velocidade média de um fluido viscoso. Como é chamado o fluido com viscosidade variável com a velocidade em que a tensão de cisalhamento não é diretamente proporcional à taxa de deformação? A) Fluido compressível. B) Fluido não compressível. C) Fluido newtoniano. D) Fluido não newtoniano. E) Fluido relativo. Verificar Resposta Estudar Cards Todas as Questões |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
Delphi - Como carregar uma imagem JPG, convertê-la em Bitmap e desenhá-la no formulário usando Delphi Delphi - Como usar o Delphi para verificar se um determinado processo do Windows está sendo executado |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |