Ich arbeitete an einem Java-Codierungsproblem und das folgende Problem festgestellt.Entfernen von null aus nicht verwendetem Speicherplatz von StringArray beim Konvertieren in eine Zeichenfolge in Java
Input: A String -> "Code"
Output Expected: A string -> CCoCodCode
My-Code-Schnipsel: (Anmerkung: In den Kommentaren Ich habe geschrieben, was ich über das Bestehen der Zeichenfolge erwarten)
public String stringSplosion(String str) { // string Say 'Code'
String join = "", values = "";
String gotIt = "";
int n = str.length(); // 4
int size = 0;
for (int i = n; i >= 1; i--) {
size = size + n; // 4+3+2+1=10
}
String[] result = new String[size];
for (int i = 0; i < str.length(); i++) {
values = str.substring(i, i + 1);
join = join + values;
result[i] = join;
}
for (String s : result) {
gotIt = gotIt + s;
}
return gotIt; // Expected output: CCoCodCode
}
Output Ich erhalte:
CCoCodCodenullnullnullnullnullnullnullnullnullnullnullnull
Warum ist null
bekommen gespeichert, obwohl ich die Größe reduziert habe und wie kann ich es entfernen?
HINWEIS: Ich muss dies mit Arrays lösen. Ich weiß, dass es viel einfacher ist, List zu verwenden.
Bitte lernen, wie man Code einzugeben. Es ist nicht schwer, entweder 4 Leerzeichen einzurücken oder den '{} 'Knopf im eingebetteten Editor zu benutzen. –
Entschuldigung für die Unannehmlichkeiten. Ich werde es befolgen. –
Größe ist null, weil Ihr Array zu groß scheint? warum nicht nur den Wert drucken, wenn es nicht null ist –