toUpperCase() - Buchstaben die ersetzt werden als Großbuchstaben ausgeben

pisco

Bekanntes Mitglied
Hey Leute,
da ich nun meinen verschlüsselten Text durchgegangen bin und mir eine Häufigkeitsanalyse erstellt habe, möchte ich den Text auch wieder entschlüsseln und ,dass mach ich nun indem ich einfach die Häufigkeit der Buchstaben ersetzt:

also hab ich mir ein Program geschrieben welches das für mich macht:

Java:
import java.util.*;
import java.lang.*;

public class hauefigkeitsanalyse1 {
	
	public static void main(String[] args) {
		
		String text = "esaosx, ysnift lagsval mqc lsvo if mysm bgsea, kaeshoa ya";
		char[] atext = text.toCharArray();
		Scanner sc = new Scanner(System.in);
		
		System.out.println("Welcher Buchstabe soll ersetzt werden?");
		String ersetzt = sc.next();
		System.out.println("mit");
		String welchem = sc.next();
		
		for(int j=0; j< atext.length; j++ ) {
			if(welchem.equals(atext[j])) {
				ersetzt.toUpperCase(charAt(atext[j]));
			}	
		}
		
		for(int i=0; i<atext.length; i++)
			System.out.print(atext[i]);
	}
	
	//END
}

Java:
hauefigkeitsanalyse1.java:19: cannot find symbol
symbol  : method charAt(char)
location: class hauefigkeitsanalyse1
				ersetzt.toUpperCase(charAt(atext[j]));
				                    ^
1 error

leider geht das nicht. Natürlich ist meine Frage warum?

lg und dank euch schonmal für eure Hilfe
 
Das hatten wir doch gerade erst. Du kannst charAt nicht einfach so verwenden, sondern musst es von einen String aus aufrufen.

Java:
char c = "Hallo".charAt(1); //'a'
 
Java:
import java.util.*;
import java.lang.*;

public class hauefigkeitsanalyse1 {
	
	public static void main(String[] args) {
		
		String text = "esaosx, ysnift lagsval mqc lsvo if mysm bgsea, kaeshoa ya";
		char[] atext = text.toCharArray();
		Scanner sc = new Scanner(System.in);
		
		System.out.println("Welcher Buchstabe soll ersetzt werden?");
		String ersetzt = sc.next();
		System.out.println( ersetzt + "mit");
		String welchem = sc.next();
		
		for(int j=0; j< atext.length; j++ ) {
			if(welchem.equals(atext[j])) {
				ersetzt.charAt(atext[j]);
			}	
		}
		
		for(int i=0; i<atext.length; i++)
			System.out.print(atext[i]);
	}
	
	//END
}

Hey rein vom code her tut der gar nix ersetzen, also sollt ich bevor ich UpperCase() mach dieses Problem lösen^^
lg
 
Zuletzt bearbeitet:
Java:
ersetzt.charAt(atext[j]);

Öhm :autsch: ???:L :autsch:
Das wird wohl sehr schnell den Rahmen des Strings sprengen. Davon abgesehen, dass die Methode nichts verändert.
 

Zurück
Oben