Array erweitern ohne Stringbuilder

melesch

Mitglied
Hallo,


folgende Aufgabe habe ich mir überlegt: ich habe char Array und möchte das x mal um das Zeichen y erweitern.

Hab das ganze mit Stringbuilder gemacht - war kein Problem.


Aber wenn ich das ohne machen will stecke ich fest :/


Habe eine Methode fill, die zuerst ein größeres Array erstellt, die Inhalte des alten kopiert und dann erweitert. Jedoch ist die Ausgabe immer "[C@42b1b4c3". Das bedeutet das Array hat keinen Inhalt oder?

Hier mein Code:

Java:
import java.util.Scanner;
import java.util.Arrays;

public class test {
	public static void main (String args[]){
	
	
	Scanner sc = new Scanner (System.in);
	String eingabe = sc.next();
	
	String word,c = "";
	int anzahl = 0;
	
	char [] charSet = eingabe.toCharArray();
		while (sc.hasNext()){
		
			String command = sc.next();
			
			if (command.equals("fill")){
			c = sc.next();
			anzahl = sc.nextInt();
			System.out.println(fill(charSet, c.charAt(0), anzahl));
				
			}
		}
	}
	
	public static String fill(char[] charSet, char c, int anzahl){
	
		char [] newCharArray = new char [charSet.length + anzahl];
		
		for (int i = 0; i < charSet.length; i++){
			newCharArray[i] = charSet[i];
		}
		
		for (int t = charSet.length; t < newCharArray.length; t++){
			newCharArray[t] = c;
		}

		
		return newCharArray.toString();
	}

}


Ist sicherlich nur eine Kleinigkeit aber ich finde sie leider nicht :bahnhof:


Meine Eingabe:

Hallo

dann --> fill 5 c

Ausgabe sollte sein:
Halloccccc

danke!!
 
B

bone2

Gast
Arrays haben keine gute toString() Methode.
Probiere es mal mit
Code:
System.out.println(Arrays.toString(deinarray));
 

melesch

Mitglied
danke! Hat wiedermal alles gestimmt :)


Wenn ich die Aufgabe erweitern will und einen beliebig langen String auf einer beliebigen Stelle einfügen will, komm ich komplett durcheinander :D


kann sich das kurz wer anschauen?


der Aufruf

Code:
if (command.equals("fillxy")){
            word = sc.next();
            stelle = sc.nextInt();
            System.out.println(fillxy(charSet, word, stelle));
            }

die Methode
Code:
   public static String fillxy(char[] charSet, String word, int stelle){
    
    	    char [] newCharArray = new char [charSet.length + word.length()];
    	    
    	  char [] newInputCharArray = word.toCharArray();
    	    
    	    for (int i = 0; i<stelle; i++){
    	    	    newCharArray [i] = charSet [i];
    	    }
    	    
    	    for (int t = stelle; t<word.length(); t++){
    	    newCharArray[t] = newInputCharArray[(t - stelle) + 1];
    	    }
    
    	    for (int z = stelle + word.length(); z < newCharArray.length; z++){
    	    
    	    	    newCharArray[z] = charSet[z-stelle];
    	    
    	    }
    	    
    	    String str = Arrays.toString(newCharArray);
    	    return str;
    
    }


es kommt bei mir der Fehler IndexOutOfBoundsException daher ist sicher etwas bei meinen Arraygrößen Falsch :/ --> diesen Fehler hab ich grad selbst gelöst.

Allerdings wird jetzt in der Ausgabe nicht der String an der richtigen Stelle eingefügt, sondern leerzeichen.. ?

hallo
fillxy das 3
[h, a, l, , , , l, o]

wieder danke :)
 
Zuletzt bearbeitet:
S

SlaterB

Gast
so viel Text nachträglich editieren kann gefährlich werden, wer nur das erste 'danke' sieht, bekommt vom Rest nichts mit

-------

mitmachen und nachprüfen heißt die Devise:

> for (int t = stelle; t<word.length(); t++){
womit beginnt t, wie lange läuft es, wie lang ist word?
mit System.out.println() kann man wunderbar verfolgen welche Schleife was konkret leistet in jedem Durchlauf
 

melesch

Mitglied
ja das stimmt :/


ok werde ich machen.. aber ein println() in der Methode wird mir doch nicht angezeigt ;(


habe es allerdings durch ausprobieren geschafft :))
 
Zuletzt bearbeitet:
S

SlaterB

Gast
> aber ein println() in der Methode wird mir doch nicht angezeigt

du sollst ja auch kein leeres println() schreiben sondern gefüllt mit tausenden an Informationen die dir alle helfen!
Java:
System.out.println("t ist bei diesem Durchlauf: "+t+", das heißt es wird gerade folgender Char kopiert ..
       neuer Stand des Arrays ist dann .. ");
usw.
arbeiten arbeiten arbeiten!

for (int t = stelle; t<word.length(); t++){
newCharArray[t] = newInputCharArray[(t - stelle)];

}

ab der Stelle bis zum Ende des einzugügenden Wortes ( word.length() ) wird eingefügt. Funktioniert
nein, das funktioniert nicht, wie ich doch gesagt habe?
das ist ja gerade der Originalcode von 11:57 bzw. editiert einiges später,
t beginnt mit 3 und endet bei < 3, die Schleife wird nicht durchlaufen

auch diese Schleife musst du z.B. von 0 bis word.length() laufen lassen
und dann exakt berechnen, welche Indexe danach in den Arrays benötigt werden


edit: gut
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T array erweitern/flexible ohne collections usw. Java Basics - Anfänger-Themen 3
Proxy Stack erweitern mit neuem Array falls der alte voll ist!? Java Basics - Anfänger-Themen 5
B Array bei jeder Eingabe um eins erweitern Java Basics - Anfänger-Themen 3
V Array aus Klasse um vererbte Elemente erweitern Java Basics - Anfänger-Themen 3
M Array immer wieder um ein Element erweitern Java Basics - Anfänger-Themen 6
S Array Java erweitern Java Basics - Anfänger-Themen 27
D Datentypen 2 d array erweitern und ins negative gehen. Java Basics - Anfänger-Themen 9
V Dreidimensionales int Array erweitern/verkleinern Java Basics - Anfänger-Themen 4
L Array um ein Feld erweitern Java Basics - Anfänger-Themen 13
M Array in Methode erweitern und zurückgeben Java Basics - Anfänger-Themen 7
L Array erweitern per Methode Java Basics - Anfänger-Themen 5
S Teiler ermittlen - Array erweitern? Java Basics - Anfänger-Themen 14
T Array verkleinern Java Basics - Anfänger-Themen 2
J Array aus Numberfield Eingaben Java Basics - Anfänger-Themen 7
D Array List mit Objekten sortieren Java Basics - Anfänger-Themen 2
onlyxlia Anzahl Random Zahlen mit Scanner abfragen und in Array speichern Java Basics - Anfänger-Themen 10
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
Ü Zweidimensionales Array in der ersten Zeile deklarieren Java Basics - Anfänger-Themen 13
Thomas Uppe 2D Array Reihenfolge vermischen Java Basics - Anfänger-Themen 4
T array auslesen Java Basics - Anfänger-Themen 2
Nitrogames Variablen Variable aus JOptionPane Abfrage in Array einfügen Java Basics - Anfänger-Themen 4
moini Auf Array aus Superklasse zugreifen? Java Basics - Anfänger-Themen 2
J ArrayList in 2D-Array konvertieren. Java Basics - Anfänger-Themen 48
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
P Wieso kann ich als Index für einen Array einen Char angeben? Java Basics - Anfänger-Themen 3
Finn_lol Fehlermeldung bei Schleife mit Array Java Basics - Anfänger-Themen 4
Proxy Chars vor array übergabe toLowerUpcase Java Basics - Anfänger-Themen 14
iAmFaiinez Primzahlen Tester ohne Array Java Basics - Anfänger-Themen 4
S array 2 dimensional treppe Java Basics - Anfänger-Themen 3
S Array 2x2 Blöcke mit 0 und 1 Java Basics - Anfänger-Themen 10
C Array von Klassen Java Basics - Anfänger-Themen 2
julian0507 2Dim-Array Spaltensummen Java Basics - Anfänger-Themen 1
XWing Doppelte Zahlen im Array Java Basics - Anfänger-Themen 8
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
E Array, nächste Zahl zur 5 ausgeben, wie? Java Basics - Anfänger-Themen 42
J Array.list vergleichen Java Basics - Anfänger-Themen 1
W Java-Code mit Array Java Basics - Anfänger-Themen 14
D Reflections & Generisches Array Java Basics - Anfänger-Themen 4
T Array Java Basics - Anfänger-Themen 2
T Array Java Basics - Anfänger-Themen 15
T Wörteranzahl im Array zählen Java Basics - Anfänger-Themen 9
Ostkreuz Zweidimensionaler Array Index Java Basics - Anfänger-Themen 2
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
R 2d Array individuell machen Java Basics - Anfänger-Themen 4
D 2D Char Array into String Java Basics - Anfänger-Themen 2
J Array Median bestimmen Java Basics - Anfänger-Themen 6
S Array Maximum bestimmen mit for und foreach Java Basics - Anfänger-Themen 7
S Prüfen ob ein zweidimensionales Array rechteckig ist Java Basics - Anfänger-Themen 4
N Array Java Basics - Anfänger-Themen 1
J Array Mittleren Wert bestimmen Java Basics - Anfänger-Themen 2
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
S Inhalte aus Array vergleichen und Max ausgeben Java Basics - Anfänger-Themen 3
M 2d array ohne längen anlegen Java Basics - Anfänger-Themen 4
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
E Reihenfolge der Werte umdrehen (mittels statischem int-Array Java Basics - Anfänger-Themen 3
O 2 Dimensionales Array Java Basics - Anfänger-Themen 6
M Bubble Sort - Int[] Array sortieren Java Basics - Anfänger-Themen 2
javaBoon86 Array mehrere Dimensionen Java Basics - Anfänger-Themen 10
B Array nach Elementwerten sortieren? Java Basics - Anfänger-Themen 1
B Explizit Array definieren geht nicht? Java Basics - Anfänger-Themen 14
D Kleinste Zahl in Array finden die vorher noch errechnet werden müssen. Java Basics - Anfänger-Themen 4
L Gegebenes Array sortieren, indem zufällige Zahlenpaare aus Array ausgewählt werden Java Basics - Anfänger-Themen 14
Say 2-DIM Array Code lesen und verstehen Java Basics - Anfänger-Themen 5
N Array beim erstellen mit Werten füllen Java Basics - Anfänger-Themen 6
C Java Array Struktur, welche ist wann besser? Java Basics - Anfänger-Themen 12
Temsky34 Array IndexOf nicht verfügbar Java Basics - Anfänger-Themen 18
belana wie am besten 2D Array von String to Integer Java Basics - Anfänger-Themen 18
S Array mit Methode löschen Java Basics - Anfänger-Themen 2
J Java To String Methode, Array mit For-Schleife Java Basics - Anfänger-Themen 2
E Durch Muster in Array iterieren Java Basics - Anfänger-Themen 3
L Frage zum Array Java Basics - Anfänger-Themen 1
C 2D Array Ausgabe mit for-Schleife i,j Java Basics - Anfänger-Themen 4
D Methode: Array Reihenfolge tauschen Java Basics - Anfänger-Themen 3
julian0507 Array aus Methode in anderer Methode sichtbar machen Java Basics - Anfänger-Themen 10
P Array vom Typ Klasse Java Basics - Anfänger-Themen 18
Lion.King Array deklarieren und initialisieren Java Basics - Anfänger-Themen 5
P Array-Objekte-Aufruf Java Basics - Anfänger-Themen 22
A CSv.Datei einlesen und die werte in zweidemosional Int Array speichern Java Basics - Anfänger-Themen 9
M Methoden Zweidimensionaler Array mit Setter Methode ändern Java Basics - Anfänger-Themen 4
AkiJou Zeile in 2d Array löschen Java Basics - Anfänger-Themen 2
LilliCherry Array in einer Zeile ausgeben Java Basics - Anfänger-Themen 6
A Elemente in einem Array Java Basics - Anfänger-Themen 5
A Vorkommende Farben ermittel und als Array zurückgeben Java Basics - Anfänger-Themen 7
AhmadSlack Array Java Basics - Anfänger-Themen 7
Jambolo Kartenhand Array Java Basics - Anfänger-Themen 14
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
T String Array Fehler beim Index Java Basics - Anfänger-Themen 3
krgewb byte-Array, das ein Bild repräsentiert Java Basics - Anfänger-Themen 1
1 Array rekursiv durchlaufen Java Basics - Anfänger-Themen 8
I Methoden Wieso wird mein Array "a" verändert und meine Variable "a" nicht? Java Basics - Anfänger-Themen 4
EykS 3D Druckdatei basierend auf 3D Array? Java Basics - Anfänger-Themen 3
sserio Array funktioniert nicht Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben