Groß- und Kleinbuchstaben gleich behandeln

stefan.h

Mitglied
Hallo Leute,
Ich brauch mal schnell eure Hilfe!
Ich muss eine Methode schreiben die ein Array einliest und alle Zeichen die darin mehrfach vorkommen werden herausgelöscht!
Und die Buchstaben werden dann 1mal ausgegeben!

Also aus "Haalloo" wird "Halo"!
Dies soll unabhängig von Groß und Kleinbuchstaben sein!
Könnt ihr mir da helfen wie ich das implemntieren kann?
Es sind keine Strings erlaubt!

Java:
public class ptlc {
  
   public static void main(String [] args){       
     char[] lawtext = {'P','r','e','s','i','d','e','n','t','i','a','l',' ','I','m','p','e','a','c','h','m','e','n',
         't',' ','d','u','e',' ','t','o',' ','I','n','c','o','m','p','e','t','e','n','c','e',' ','L','a','w'};
    
    
  IO.print( lawtext );
    
     IO.print("\n\n");
    
     char [] old= ptlc(lawtext);
    
     IO.print( old );
    
     IO.print("\n\n");
    
}//end main
  
   static char [] ptlc(char [] lawtext){  //Methode zum trumpifizieren
     int lang= 0;
   if(lawtext!=null){

       int i= 0, z=0, q=0;                            //Laufvariable for-Schleife
                                     //Array für trumpifizierten Text
         for(i= 0; i < lawtext.length-1; i++){             //for-Schleife zum durchsuchen von lawtext
                               //Arraywert in Hilfsvariable speichern
          
           for(z=i+1; z<lawtext.length; z++){  
            
           if(lawtext[i] == lawtext[z]){
             lawtext[z]= '\n';  
           }//end if
           }//end for2
            
           }//end for1
        
         i= 0;
        
         for(i=0; i<lawtext.length; i++){
          
           if(lawtext[i]!='\n'){
             lang++;
           }
         }
    
   char[] pt= new char[lang];
   i=0;
   int a= 0;
   for(i=0; i<lawtext.length; i++){
    
     if(lawtext[i]!='\n'){
      
    
     pt[a] = lawtext[i];
     a++;    
     }
   }
   lawtext=pt;
   }
     return lawtext;
   }
}//end class
 
Zuletzt bearbeitet von einem Moderator:

mariane

Mitglied
Hmm, das sind immer so eigentartig erzwungende Aufgaben ...

Zunächstmal, kann man Groß und Klein rechnerisch auseinanderhalten, das ist wahrscheinlich das Ziel.

Aber man kann ja auch mit Character.toLowerCase() in einer vereinfachten For-Schleife schauen und vergleichen, das ganze in eine ArrayList verfrachten aber zuvor schauen ob schon drin und wenn ja mit continue weiter, sonst dazuaddieren und den unveränderten char per System.out.print() ohne -ln ausgeben. Fertig.

Java:
        char[] lawtext = { 'P', 'r', 'e', 's', 'i', 'd', 'e', 'n', 't', 'i', 'a', 'l', ' ', 'I', 'm', 'p', 'e', 'a',
                'c', 'h', 'm', 'e', 'n', 't', ' ', 'd', 'u', 'e', ' ', 't', 'o', ' ', 'I', 'n', 'c', 'o', 'm', 'p', 'e',
                't', 'e', 'n', 'c', 'e', ' ', 'L', 'a', 'w' };
        List<Character> list = new ArrayList<>();
        char chr;
        for (char c : lawtext) {
            chr = Character.toLowerCase(c);
            if (list.contains(chr))
                continue;
            list.add(chr);
            System.out.print(c);
        }

Ebenso könnte man ein Array von Typ boolean machen und schauen ob der ASCII-Wert als Index schon mal zu true wurde, das wäre die rechnerische Variante. Wobei man da beim Leerzeichen, Komma, Punkt usw. aufpassen müsste.
 

Joose

Top Contributor
Könnt ihr mir da helfen ...
Beim eigentlichen Problem wurde dir ja schon geholfen.

Von meiner Seite noch ein paar Anregungen zu deinem Code:
Klassennamen werden in UpperCamelCase geschrieben, ansonsten wird alles andere in lowerCameCase geschrieben.
Außerdem verwende sprechende Namen für alles! Anhand des Namens sollte man erkennen können wofür die Klasse oder Methode zuständig ist -> bei "ptcl" habe ich keine Ahnung was getan wird.
Man sollte vermeiden eine Methode so zu nennen wie die Klasse.
Sorge für eine korrekte Einrückung deines Codes, dadurch wird er lesbarer und du kannst dir Kommentare wie //end for2 oder [/icode]//end main[/icode] sparen.
Schreibe die []-Klammern zum Typen ohne ein Leerzeichen dazwischen! Also char[] statt char [].
Vor jeder for-Schleife schreibst du i = 0;. Diese Zeile kannst du dir sparen, da du in der for-Schleife die Variable i sowieso mit dem Wert 0 initialisierst.

Dein Code formatiert und etwas überarbeitet:
Java:
public class Ptcl {

   public static void main(String[] args) {   
     char[] lawtext = {'P','r','e','s','i','d','e','n','t','i','a','l',' ','I','m','p','e','a','c','h','m','e','n','t',' ','d','u','e',' ','t','o',' ','I','n','c','o','m','p','e','t','e','n','c','e',' ','L','a','w'};
     IO.print(lawtext);
     IO.print("\n\n");

     char[] old = ptlc(lawtext);
     IO.print(old);
     IO.print("\n\n");
   }

   //Methode zum trumpifizieren
   static char[] ptlc(char[] lawtext) {
     int lang = 0;
     if(lawtext != null) {
       int i = 0, z = 0, q = 0;  //Laufvariable for-Schleife
       //Array für trumpifizierten Text
       for(i = 0; i < lawtext.length-1; i++) {  //for-Schleife zum durchsuchen von lawtext
         //Arraywert in Hilfsvariable speichern
         for(z = i + 1; z < lawtext.length; z++) {  
           if(lawtext[i] == lawtext[z]) {
             lawtext[z] = '\n';  
           }
         }
       }
       
       i = 0;
       for(i = 0; i < lawtext.length; i++) {
         if(lawtext[i] != '\n') {
           lang++;
         }
       }

       char[] pt = new char[lang];
       i = 0;
       int a = 0;
       for(i = 0; i < lawtext.length; i++) {
         if(lawtext[i] != '\n') {
           pt[a] = lawtext[i];
           a++;   
         }
       }
       lawtext = pt;
     }
     return lawtext;
   }
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Groß/KleinBuchstaben zählen Java Basics - Anfänger-Themen 21
D KeyListener, Unterscheidung Groß/Kleinbuchstaben Java Basics - Anfänger-Themen 3
F Groß- und Kleinbuchstaben in String Java Basics - Anfänger-Themen 11
M Palindrom mit Groß & kleinbuchstaben Java Basics - Anfänger-Themen 19
D String Groß/Kleinschreibung Ignorieren Java Basics - Anfänger-Themen 4
S Datei anlegen Problem! Groß- und Kleinschreibung wird nicht unterschieden Java Basics - Anfänger-Themen 4
S Chars vergleichen ohne Betrachtung der Groß und Kleinschreibung Java Basics - Anfänger-Themen 7
T Feststellen, dass Wert zu groß; Caesar Chiffre Java Basics - Anfänger-Themen 3
N Groß- und Kleinschreibung bei Java: void Methode Java Basics - Anfänger-Themen 1
S Scanner soll Groß-/ Kleinschreibung ignorieren Java Basics - Anfänger-Themen 2
N Eingabe erkennen, ob groß oder kleingeschrieben worden ist Java Basics - Anfänger-Themen 22
B Regex ignorieren von Groß - Kleinschreibung Java Basics - Anfänger-Themen 1
Hanschyo Quicksort sortiert von groß nach klein Java Basics - Anfänger-Themen 3
CptK Interface Bilder über Bildschirm bewegen, bis der Abstand zum vorherigen zu groß wird Java Basics - Anfänger-Themen 13
B String: Groß- und Kleinschreibung ignorieren bei Contains? Java Basics - Anfänger-Themen 2
MR._FIRE_Flower String Anfangsbuchstabe Groß Java Basics - Anfänger-Themen 23
K Sortierung eines int-Arrays von groß nach klein Java Basics - Anfänger-Themen 3
Bregedur String beim nächstem groß geschriebenen Buchstaben trennen Java Basics - Anfänger-Themen 1
W Erste Schritte Erster Buchstabe groß bzw. klein???? Java Basics - Anfänger-Themen 2
S Groß bzw. Klein Buchstaben umwandeln (gemischt) Java Basics - Anfänger-Themen 1
M FileWriter Neue Datei wenn aktuelle "zu groß" Java Basics - Anfänger-Themen 3
S Fenster ist zu groß Java Basics - Anfänger-Themen 8
H Objekt zu groß zum Senden? Java Basics - Anfänger-Themen 6
M Methoden Groß- und Kleinschreibung Java Basics - Anfänger-Themen 3
I Input/Output Wortanfang groß schreiben Java Basics - Anfänger-Themen 5
S JTextArea mit LineWrap true viel zu groß! Java Basics - Anfänger-Themen 2
F Wie groß ist eigentlich ein HashMap? Java Basics - Anfänger-Themen 13
M Datentypen Wie groß kann ein Array max sein? Java Basics - Anfänger-Themen 9
N Variationen eines Strings - groß/klein Java Basics - Anfänger-Themen 3
T Border Layout alle mittleren felder gleich groß Java Basics - Anfänger-Themen 3
X Wie groß ist String[]? Java Basics - Anfänger-Themen 8
Daniel_L RegEx-Frage, Groß-/Kleinschreibung Java Basics - Anfänger-Themen 2
G Swing Komponente so groß wie Fenster Java Basics - Anfänger-Themen 10
P Swing Textarae so groß wie Panel? Java Basics - Anfänger-Themen 2
G Erster Buchstabe groß bzw. klein? Java Basics - Anfänger-Themen 4
T Ersten Buchstaben in einem Wort groß schreiben. Java Basics - Anfänger-Themen 6
T Entwder char auf groß oder klein prüfen, oder Exception Java Basics - Anfänger-Themen 3
M Strings: Groß-Kleinschreibung ignorieren Java Basics - Anfänger-Themen 6
A Groß-/Kleinbuchstabe Java Basics - Anfänger-Themen 2
G Groß- und Kleinschreibung Java Basics - Anfänger-Themen 13
N Groß- und Kleinschreibung vertauschen? Java Basics - Anfänger-Themen 3
C ein Canvas ist zu groß. mit Scrollbar ? Java Basics - Anfänger-Themen 8
W Zahl für longtype zu groß? Java Basics - Anfänger-Themen 2
G Klasse zu groß (>3000 codezeilen). wie sinnvoll strukturi Java Basics - Anfänger-Themen 9
K Erster Buchstabe groß Java Basics - Anfänger-Themen 7
MiMa String in Gross und Kleinbuchstaben umwandeln Java Basics - Anfänger-Themen 10
R Kleinbuchstaben in Großbuchstaben Java Basics - Anfänger-Themen 6
L Großbuchstaben in kleinbuchstaben wandeln Java Basics - Anfänger-Themen 5
J Bestimmen ob String aus Kleinbuchstaben besteht Java Basics - Anfänger-Themen 16
J Java-Array abwechselnd Gross- und Kleinbuchstaben Java Basics - Anfänger-Themen 5
D Vigenere KleinBuchstaben/Special Characters Java Basics - Anfänger-Themen 14
U Kleinbuchstaben in Großbuchstaben umwandeln Java Basics - Anfänger-Themen 5
H Großbuchstaben in Kleinbuchstaben Java Basics - Anfänger-Themen 18
D 2 ArrayListen gleich sortieren bzw. eine Liste anhand einer anderen Sortieren Java Basics - Anfänger-Themen 6
U Kann man bei Java gleich mehrere Bedingungen prüfen in der If, aber in einem "Satz"? Java Basics - Anfänger-Themen 1
K Mail senden, nachdem Anwendung beendet wurde (gleich wie) Java Basics - Anfänger-Themen 4
S Arbeitsfeld in gleich große Bereiche einteilen Java Basics - Anfänger-Themen 2
U zwei 2D arrays auf gleich sein überprüfen Java Basics - Anfänger-Themen 14
I Sortiert eine HashMap nicht gleich wie eine ArrayList? Java Basics - Anfänger-Themen 1
S Laufzeit Quicksort wenn alle Elemente gleich sind Java Basics - Anfänger-Themen 4
M prüfen ob alle array werte gleich sind Java Basics - Anfänger-Themen 27
D Funktion zwei Arraylisten zu verleichen ob gleich funktioniert nicht Java Basics - Anfänger-Themen 26
D Zwei Strings sind gleich bei if aber nicht true Java Basics - Anfänger-Themen 2
J Strings sind gleich werden aber ungleich ausgewertet Java Basics - Anfänger-Themen 2
P String größer kleiner gleich vergleichen Java Basics - Anfänger-Themen 6
S Problem: Array alle Einträge gleich Java Basics - Anfänger-Themen 10
R getrennte Objekte aus Klasse erstellen : warum Inhalt dann gleich ? Java Basics - Anfänger-Themen 2
F String length nicht gleich der Ausgabe Java Basics - Anfänger-Themen 10
J JTable Wert gleich überschreiben Java Basics - Anfänger-Themen 6
P OOP Testen ob 2 Strings gleich sind Java Basics - Anfänger-Themen 8
F Doppeltes Gleich? Java Basics - Anfänger-Themen 8
GadgetSofa .txt Datei erstellen und gleich wieder Löschen? Java Basics - Anfänger-Themen 12
K Variablen Instanzen gleich aber warum ? Java Basics - Anfänger-Themen 3
J Klassen Warum ist (a.equals(b)) gleich (a==b)? Java Basics - Anfänger-Themen 13
B Threads Geschwindigkeit der Befehle auf verschiedenen PCs gleich machen Java Basics - Anfänger-Themen 3
O Objekte gleich oder verschieden? Java Basics - Anfänger-Themen 14
D Frame schließt gleich alle Frames Java Basics - Anfänger-Themen 5
K Wann genau brauche ich die Anweisung gleich null? Java Basics - Anfänger-Themen 10
turmaline String teilen in gleich große strings Java Basics - Anfänger-Themen 15
D Strings sind ungleich obwohl sie in der Ausgabe gleich sind Java Basics - Anfänger-Themen 10
B Methoden Mein erstes Programm - und gleich Probleme Java Basics - Anfänger-Themen 6
D X Werte in ArrayList von Point Objekte alle gleich ? Java Basics - Anfänger-Themen 11
D Warum ist int a = 3*2+1*3; gleich 9 und nicht gleich 27 Java Basics - Anfänger-Themen 4
F While Schleife ausführen, wenn String gleich ist. Java Basics - Anfänger-Themen 2
M Problem mit größer oder gleich >= Java Basics - Anfänger-Themen 8
lumo warum double nicht gleich double ist??? Java Basics - Anfänger-Themen 5
feuervogel Datentypen Zwei Sets sind gleich, aber dann doch nicht Java Basics - Anfänger-Themen 9
A [gelöst]Zwei Ausgaben, die eigentlich gleich sein sollten Java Basics - Anfänger-Themen 9
T .split(";") nicht gleich große arrays werden erzeu Java Basics - Anfänger-Themen 2
-horn- Mathe: Variable gleich Infinity, wie mit if rausfiltern? Java Basics - Anfänger-Themen 9
J Java plus exe gleich Java Basics - Anfänger-Themen 6
D Inhalt eines Dialogfeldes wird nicht gleich angezeigt? Java Basics - Anfänger-Themen 6
U "gleich gleich" oder equals Java Basics - Anfänger-Themen 9
M Variablennamen als Parameter gleich Var. als Klassenvariable Java Basics - Anfänger-Themen 2
N long geteilt durch long gleich null ? Java Basics - Anfänger-Themen 8
G testen ob int gleich null Java Basics - Anfänger-Themen 15
G int gleich long ? Java Basics - Anfänger-Themen 2
J JLabel gleich in einer Schriftfarbe anzeigen Java Basics - Anfänger-Themen 4
L Bedingung immer false, auch wenn zwei Strings gleich sind Java Basics - Anfänger-Themen 11
S Bilder gleich am Start zeichnen. Java Basics - Anfänger-Themen 15

Ähnliche Java Themen

Neue Themen


Oben