E-Book 650 Dicas e Truques de Python - PDF com 1.200 páginas
Você está aqui: Java ::: Dicas & Truques ::: Strings e Caracteres

Como testar se uma string Java é um valor numérico válido usando o método isDigit() da classe Character

Quantidade de visualizações: 18675 vezes
O método isDigit() da classe Character nos permite verificar se um determinado caractere é um número, ou seja, está na faixa de 0 a 9. Podemos tirar proveito disso para varrer todos os caracteres de uma string, usando o método charAt() da classe String, e testar se essa string é um valor numérico válido.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package arquivodecodigos;

// Este exemplo mostra como verificar se uma
// string é um valor númerico
public class Estudos {

  public static void main(String[] args) {
    String valor = "2334554";
    boolean valido = true;

    for (int i = 0; i < valor.length(); i++) {
      Character caractere = valor.charAt(i);
      if (!Character.isDigit(caractere)) {
        valido = false;
        break;
      }
    }

    if (valido) {
      System.out.println("Valor numérico valido");
    } 
    else {
      System.out.println("NãO é um valor numerico valido");
    }

    System.exit(0);
  }
} 

Ao executar este código Java nós teremos o seguinte resultado:

Valor numérico válido.

Link para compartilhar na Internet ou com seus amigos:

Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico

Exercícios Resolvidos de Java - Uma locadora de charretes cobra R$ 10,00 de taxa para cada 3 horas de uso destas

Quantidade de visualizações: 5810 vezes
Exercício Resolvido de Java - Uma locadora de charretes cobra R$ 10,00 de taxa para cada 3 horas de uso destas

Pergunta/Tarefa:

Uma locadora de charretes cobra R$ 10,00 de taxa para cada 3 horas de uso destas e R$ 5,00 para cada 1 hora abaixo destas 3 horas.

Faça um programa (algorítmo) Java que leia a quantidade de horas que a charrete foi usada, calcule e escreva o valor a ser pago pelo cliente.

Sua saída deverá ser parecida com:

Quantidade de horas que a charrete foi usada: 7
Valor total a ser pago: R$ 25,00
Resposta/Solução:

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 exercicio;

import java.text.NumberFormat;
import java.util.Scanner;

public class Exercicio {
  public static void main(String[] args) {
    // vamos fazer a leitura usando a classe Scanner
    Scanner entrada = new Scanner(System.in);
    
    // vamos ler a quantidade de horas que a charrete foi usada
    System.out.print("Quantidade de horas que a charrete foi usada: ");
    int horas = Integer.parseInt(entrada.nextLine());
    
    // vamos calcular o valor por 3 horas exatas
    int valor = horas / 3;
    
    // valor a ser pago para cada hora abaixo de 3
    int restante = horas % 3;
    
    // finalmente calculamos o valor total a ser pago
    double valor_total = (valor * 10.0) + (restante * 5);
    
    // e exibimos o resultado
    NumberFormat formato = NumberFormat.getCurrencyInstance();
    System.out.println("Valor total a ser pago: " + formato.format(valor_total));
  }
}



Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes)

Exercícios Resolvidos de Java - Como resolver o problema da Subsequência de Soma Máxima em Java usando o Algorítmo de Kadane

Quantidade de visualizações: 395 vezes
Pergunta/Tarefa:

O problema do Subvetor Contíguo de Soma Máxima, ou Subarray ou Subsequência de Soma Máxima é um dos algorítmos mais populares na programação dinâmica. Este problema envolve encontrar um subvetor, ou seja, um sub-array contíguo de maior soma possível. Por contíguo entendemos que os elementos da subsequência deverão estar consecutivos no vetor original.

O Algorítmo de Kadane, inventado por Jay Kadane em 1977, é um dos favoritos para a resolução deste problema, e deverá ser aplicado na resolução deste exercício.

Dado o vetor [-2, 1, -3, 4, -1, 2, 1, -5, 4], encontre a soma máxima da subsequência contígua. Não é exigido mostrar os elementos da sub-sequência, apenas o valor da soma máxima.

Sua saída deverá ser parecida com:

A soma maxima é: 6
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

public class Estudos {
  public static void main(String[] args) {
    // vamos criar um array com 9 elementos
    int valores[] = {-2, 1, -3, 4, -1, 2, 1, -5, 4};
    
    // agora usamos o algoritmo de Kadane para encontrar
    // a maior soma consecutiva
    int soma_maxima = kadane(valores);
    System.out.println("A soma maxima é: " + soma_maxima);
  }
  
  // método que recebe um array e usa o algoritmo de Kadane
  // para retornar a maior soma consecutiva
  public static int kadane(int vetor[]){
    // ajustamos max_atual para 0 e max_total para -1 
    int max_atual = 0, max_total = -1;
    
    // um laço for que percorre todos os elementos do
    // vetor, do primeiro até o último
    for(int i = 0; i < vetor.length; i++){
      // max_atual recebe ele mesmo mais o valor
      // do elemento no índice i
      max_atual = max_atual + vetor[i];
      
      // se max_atual for negativo nós o ajustamos
      // para zero novamente
      if(max_atual < 0){
        max_atual = 0;
      }
      
      // se max_atual for maior que max_total então
      // max_total recebe o valor de max_atual
      if(max_atual > max_total){
        max_total = max_atual;
      }
    }
    
    // e retornamos a soma máxima
    return max_total;
  }
}



Java ::: Dicas & Truques ::: Strings e Caracteres

Como inverter uma string em Java usando o método reverse() da classe StringBuffer

Quantidade de visualizações: 22444 vezes
Nesta dica mostrarei como podemos usar o método reverse() da classe StringBuffer ou StringBuilder para inverter a ordem dos caracteres de uma palavra, frase ou texto em Java. Note como convertemos uma String em um StringBuffer, fazemos a inversão da frase e depois convertemos novamente o StringBuffer em um objeto String.

Veja o código completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package estudos;

public class Estudos {
  public static void main(String[] args){
    // vamos criar uma string
    String frase = "JAVA É BOM DEMAIS";
    // vamos mostrar a frase original
    System.out.println("String original: " + frase);
    
    // agora vamos criar um objeto StringBuffer
    StringBuffer temp = new StringBuffer(frase);
    // vamos inverter a string agora
    temp.reverse();
    // e agora mostramos o resultado
    frase = temp.toString();
    System.out.println("String invertida: " + frase);    
  }
}

Ao executar este código Java nós teremos o seguinte resultado:

String original: JAVA É BOM DEMAIS
String invertida: SIAMED MOB É AVAJ


Java ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como obter o valor de PI em Java usando a constante Math.PI

Quantidade de visualizações: 20682 vezes
A constante PI, ou simplesmente PI, é o valor da razão entre a circunferência de qualquer círculo e seu diâmetro. Veja a figura abaixo para melhor entendimento:



Em Java, o PI pode ser obtido por meio do uso da constante PI da classe Math. Seu valor é algo como: 3,14159...

Veja o trecho de código abaixo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package arquivodecodigos;

public class Estudos{
  public static void main(String[] args){
    // obtém e exibe o valor da constante PI
    System.out.println("O valor de PI é: " + Math.PI);

    System.exit(0);
  }
}

Ao executar este código nós teremos o seguinte resultado:

O valor de PI é: 3.141592653589793


Java ::: Pacote java.lang ::: Character

Como usar o método isDigit() da classe Character da linguagem Java para verificar se um caractere é um dígito de 0 a 9

Quantidade de visualizações: 9198 vezes
Em algumas situações, principalmente quando estamos validando dados informados pelo usuário, pode ser necessário verificar se um determinado caractere é um dígito de 0 a 9. Isso pode ser feito por meio do método isDigit() da classe Character. Este método estático recebe um caractere como argumento e retorna true se o caractere for um dígito e false em caso contrário.

Veja um exemplo no qual lemos um caractere informado pelo usuário e informamos se o mesmo é um dígito ou não:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import javax.swing.JOptionPane;

public class Main {
  public static void main(String[] args) {
    // vamos pedir ao usuário para informar um caractere qualquer
    char caractere = JOptionPane.showInputDialog("Informe um caractere:").charAt(0);
    
    // vamos testar se o caractere informado é um dígito
    if(Character.isDigit(caractere)){
      JOptionPane.showMessageDialog(null, "O caractere informado é um dígito");
    }
    else{
      JOptionPane.showMessageDialog(null, "O caractere informado não é um dígito"); 
    }
  }
}

Uma outra forma de verificar se um determinado caractere é um dígito é testar se o retorno de uma chamada ao método estático getType() da classe Character é a constante DECIMAL_DIGIT_NUMBER, também definida na classe Character. Veja uma modificação do exemplo anterior:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import javax.swing.JOptionPane;

public class Main {
  public static void main(String[] args) {
    // vamos pedir ao usuário para informar um caractere qualquer
    char caractere = JOptionPane.showInputDialog("Informe um caractere:").charAt(0);
    
    // vamos testar se o caractere informado é um dígito
    if(Character.getType(caractere) == Character.DECIMAL_DIGIT_NUMBER){
      JOptionPane.showMessageDialog(null, "O caractere informado é um dígito");
    }
    else{
      JOptionPane.showMessageDialog(null, "O caractere informado não é um dígito"); 
    }
  }
}

Finalmente, veja como ler uma string e verificar se ela contém apenas dígitos de 0 a 9:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

import javax.swing.JOptionPane;

public class Main {
  public static void main(String[] args) {
    // vamos pedir ao usuário para informar uma string
    String str = JOptionPane.showInputDialog("Informe uma string:");
    
    // vamos verificar se a string contém apenas dígitos de 0 a 9
    boolean soDigitos = true;
    
    // percorre todos os caracteres da string
    for(int i = 0; i < str.length(); i++){
      if(!Character.isDigit(str.charAt(i))){
    	  soDigitos = false;
    	  break;
      }
    }
    
    if(soDigitos){
      JOptionPane.showMessageDialog(null, "A string contém apenas dígitos");
    }
    else{
      JOptionPane.showMessageDialog(null, "A string não contém somente dígitos"); 
    }
  }
}



Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware 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 funcionalidadesControle 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


© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 78 usuários muito felizes estudando em nosso site.