Java Char Array mit einem String ausffüllen?

2 Antworten

Ich habe also anders nochmal gemacht und habe also so gechrieben.

Die Char Array wurde ausgeffüllt, aber ist mein code wirklich gut geschrieben oder kann ich das anders schreiben? Immer mit meinem For-Schleifen.

Bild zum Beitrag

public class Ausffuellen {

  

 public static void main(String[] args) {

  

  char[] key = fuell("WXZJKACSRTPNOMLYVFHEGIUDBQ");

  System.out.println(key[67]);

  System.out.println(key[91]);

 }          

  

 public static char[] fuell(String key) {

  char[] result = new char[256];

  for (int j = 0; j <= key.length() ; j++) 

    for (int i = 64; i < 92 ; i++, j++)

  result [i] = key.charAt(j);

  return result;

 }

}

Woher ich das weiß:Recherche
 - (Java, Programmiersprache, Array)

So, wie ich dich verstehe, willst du am Ende ein char-Array haben, wo die Positionen 0-63 leer sind und ab 64 die Zeichen aus dem String drinstehen.

Ich weiß nicht, warum du da zwei geschachtelte Schleifen benutzt. Ich hätte es so gemacht:

public static char[] fuell(String key) {
	char[] result = new char[256];
	for (int i = 0; i<key.length(); ++i) {
		result[i+64] = key.charAt(i);
	}
	return result;
}
pkelodj 
Fragesteller
 05.12.2022, 15:39

Ich habe dein Code versucht, aber das füll nicht alle Felder. :-(

0
daCypher  05.12.2022, 17:41
@pkelodj

Nein, das füllt nur ab 64 bis die Buchstaben aufgebraucht sind. Du hast 26 Buchstaben, also geht es von 64 bis 89. Wenn der Bereich nicht stimmt, musst du das i+64 im code so anpassen, dass es passt

0