vendredi 22 mai 2015

Java doppelte Zahlen auch über 10 in einem String entfernen

Hallo, ich habe hier ein Programm, dass auf Knopfdruck die mehrfach vorkommenden Zeichen in einem String entfernt. Wenn man zum Beispiel "32322" hat kommt "32" heraus. Nun ist mein Problem dass wenn ich mehrere Zahlen in einem String habe ich nur Zahlen unter 10 effektiv "bearbeiten" kann. Wenn ich 10 stehen habe sieht das Programm dies als 1 und 0 und das ist nicht das was ich wollte. Also wie kann ich realisieren, dass das Programm merkt ob jetzt zB 10 oder 1 0 gemeint ist. Vielleicht kann man da irgendwas mit den Kommatas machen ???:L? Schonmal Danke im voraus. Hier noch mein Code zur besseren Verständtnis:

Code:

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.HashMap;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class test extends JFrame implements ActionListener {
   
    private JPanel panel;
    private JLabel label;
    private JButton ok;
    private String str;
   
    public test() {
       
        panel = new JPanel();
       
        ok = new JButton("OK");
        ok.addActionListener(this);
       
        str = "10, 11, 12, 13, 10";
        label = new JLabel(str);
       
        panel.add(ok);
        panel.add(label);
       
        add(panel);
       
        pack();
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
        }

    public static void main(String[] args) {
        new test();       
    }
   
    @Override
    public void actionPerformed(ActionEvent arg0) {

        String temp="";
        HashMap<Integer,Character> tc = new HashMap<Integer,Character>();
        char [] charArray = str.toCharArray();
        for (Character c : charArray)
        {
            if (!tc.containsValue(c))
                {
                    temp=temp + c.toString() + ", ";
                    tc.put(c.hashCode(),c);
                }
        }
        label.setText(temp);
    }
}



Java doppelte Zahlen auch über 10 in einem String entfernen

0 commentaires:

Enregistrer un commentaire