Meu código atual é este abaixo, ignorem o começo de interface. Quero ajustar somente a saida do ultimo método no console.
package trabalho_18_02_11;
import java.awt.Button;
import java.awt.event.ActionEvent;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.ScrollPaneConstants;
public class Exercicio extends JFrame {
JPanel painel = new JPanel();
JLabel palavra = new JLabel("Palavra: ");
Button botaoOk = new Button("ok");
JLabel resultado = new JLabel("Resultado: ");
Button botaoLimpar = new Button("Limpar");
JTextField tfPalavra = new JTextField(30);
JTextArea taResultado = new JTextArea(5, 15);
JScrollPane scroll = new JScrollPane(taResultado,
ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,
ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
public Exercicio() {
super("Programinha ");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
taResultado.setLineWrap(true);
taResultado.setWrapStyleWord(true);
painel.add(palavra);
painel.add(tfPalavra);
painel.add(botaoOk);
painel.add(resultado);
painel.add(scroll);
setContentPane(painel);
painel.add(botaoLimpar);
setSize(500, 300);
setVisible(true);
}
public void actionPerformed(ActionEvent evt) {
if (evt.getSource() == botaoOk) {
}
}
public static void main(String args[]) throws IOException {
// Exercicio fu = new Exercicio();
new Exercicio().setVisible(true);
// Programinha Todo começa aqui
char carac[] = new char[35];
int contagem[] = new int[35];
int cont = 0;
char c = 0;
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
System.out.print("Palavra: ");
String str = bf.readLine();
str = str.toUpperCase();
int len = str.length();
for (int i = 0; i < len; i++) {
c = str.charAt(i);
// System.out.println(c);
for (int x = 0; x < len; x++) {
if (str.charAt(x) == c) {
cont++;
}
}
carac[i] = c;
contagem[i] = cont;
cont = 0;
}
for (int i = 0; i < carac.length; i++) {
if (carac[i] != 0) {
System.out.println(" " + carac[i] + " - " + contagem[i] + " ");
}
}
}
}
A minha duvida é a seguinte:
Quando coloco a palavra “TESTE” a saída é:
T - 2
E - 2
S - 1
T - 2
E - 2
E gostaria que a saída fosse sem repertir as letras ja contadas.
T - 2
E - 2
S - 1