Você está aqui: Java ::: Desafios e Lista de Exercícios Resolvidos ::: Strings e Caracteres

Escreva um programa Java para encontrar o primeiro caractere não repetido em uma string - Versão usando laços - Desafio de Programação Resolvido em Java

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

Escreva um programa Java que solicita ao usuário uma palavra, frase ou texto e mostra o primeiro caractere que não se repete na string informada. Sua implementação deverá usar somente laços, ou seja, não poderá usar nenhuma classe já pronta da linguagem Java, exceto os métodos length() e charAt da classe String.

Sua saída deverá ser parecida com:

Informe uma palavra, frase ou texto: Programar em PHP e Python
A string informada foi: Programar em PHP e Python
O primeiro caractere não repetido é: g
Resposta/Solução:

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

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

package exercicio;

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 pedir para o usuário informar uma string
    System.out.print("Informe uma palavra, frase ou texto: ");
    String string = entrada.nextLine();
    
    // vamos mostrar a string informada
    System.out.println("A string informada foi: " + string);
    
    // vamos percorrer todos os caracteres da string
    for(int i = 0; i < string.length(); i++){
      // esse caractere é único na string?
      boolean unico = true;
   
      // usamos um laço interno para varrer todos os caracetres da
      // string novamente
      for(int j = 0; j < string.length(); j++){
        // se i for diferente de j e os caracteres nos índices i e j
        // forem iguais
        if (i != j && string.charAt(i) == string.charAt(j)) {
          unico = false; // não é único
          break; // sai do laço interno
        }
      }
  
      // encontramos um caractere único
      if(unico){
        System.out.println("O primeiro caractere não repetido é: " 
          + string.charAt(i));
        break; // sai do laço externo
      }
    }
  }
}


Link para compartilhar na Internet ou com seus amigos:

Java ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como passar vetores e matrizes (arrays) para seus métodos Java

Quantidade de visualizações: 16193 vezes
Nesta dica mostrarei como você pode passar um array (vetor ou matriz) para seus métodos Java. Observe que um array é um objeto Java, e objetos são sempre passados por referência. Assim, as alterações feitas no vetor ou matriz dentro do método afetarão o array original.

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;

public class Estudos{
  public static void main(String[] args){
    int[] valores = {43, 6, 17, 23, 8};
     
    // Exibe os valores antes de passar o
    // array para o método multiplicar
    for(int i = 0; i < valores.length; i++){
      System.out.print(valores[i] + ", ");
    }
   
    System.out.println();
 
    // fornece o array para o método multiplicar
    multiplicar(valores, 2); 
 
    // Exibe os valores depois de passar o
    // array para o método multiplicar
    for(int i = 0; i < valores.length; i++){
      System.out.print(valores[i] + ",  ");
    }
 
    System.exit(0);
  }
 
  public static void multiplicar(int a[], int num){
    for(int i = 0; i < a.length; i++){
      a[i] = a[i] * num;
    }
  } 
}

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

43, 6, 17, 23, 8,
86, 12, 34, 46, 16,


Java ::: Java Swing - Componentes Visuais ::: JPanel

Como fazer uma sub-classe de JPanel para desenhar um gráfico no Java Swing

Quantidade de visualizações: 11865 vezes
Nesta dica mostrarei como podemos criar uma classe Desenho que herda da classe JPanel do Java Swing para criar uma área de desenho. Esta é uma das práticas mais comuns quando queremos desenhar gráficos ou exibir imagens em Java Swing.

Note como sobrescrevemos o método paintComponent(Graphics g) herdado da classe JPanel para pintar o fundo do painel na cor amarela e depois desenhamos um retângulo azul.

Veja o código Java Swing 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;

import java.awt.*;
import javax.swing.*;

public class Estudos extends JFrame{
  public Estudos() {
    super("A classe JPanel");
    
    Container c = getContentPane();
    Desenho desenho = new Desenho();
    c.add(desenho);

    setSize(350, 250);
    setVisible(true);
  }
  
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
}

// Sub-classe de JPanel
class Desenho extends JPanel{
  public void paintComponent(Graphics g){ 
    super.paintComponent(g);
    
    // Define a cor de fundo
    setBackground(Color.YELLOW);
    
    // Desenha um quadrado na cor azul
    g.setColor(Color.BLUE);
    g.fillRect(10, 10, 100, 100);
  } 
}



Java ::: Dicas & Truques ::: Matemática e Estatística

Como converter de binário para decimal usando o método parseInt() da classe Integer da linguagem Java

Quantidade de visualizações: 15678 vezes
Nesta dica eu mostro como podemos usar o método parseInt() da classe Integer do Java para converter um valor binário em um valor decimal. Para isso só precisamos forcecer o valor 2 como segundo argumento para o método parseInt().

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;

public class Estudos{
  public static void main(String args[]){
    String binario = "00000110";
     
    // efetua a conversão de binário para
    // decimal
    int decimal = Integer.parseInt(binario, 2);
 
    // exibe o resultado
    System.out.println("O valor binário " + binario + 
      " convertido para decimal é: " + decimal);
 
    System.exit(0);
  }
}

Ao executar este exemplo nós teremos o seguinte resultado:

O valor binário 00000110 convertido para decimal é: 6


Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

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

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



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