M
marlo
Gast
moin
folgendes problem, ich möchte einen eigenen datentyp artikel in array anlegen und an verschiedene methoden übergeben:
das beispiel hier funzt und ich versteh eigentlich auch, wie es geht..
hier nun mein code , gibt noch klasse artikelneu mit den entsprechenden konstruktor, getter setter, hab ich aber mal ausgeblendet.
ich peil einfach nicht, warum das bearbeitete array nicht übergeben bzw erkannt wird.
im ersten code erstelle ich ein array, übergebe es an methode add, neuer eintrag wird geadded, array wird an aufrufende methode zurück gegeben. wird da auch dann ausgegeben.
im 2ten code werden an das tmparray einträge geadded..aber nicht an die aufrufende methode zurück gegeben.
mfg martin
hab den code jetzt aufs wesentliche gekürzt. in meinem war noch eine schleife mit 10 durchläufen und mit zähler generierten artikelnamen. wurde problemlos dem tmparray geadded und auch im durchlauf ausgegeben - vor return.
folgendes problem, ich möchte einen eigenen datentyp artikel in array anlegen und an verschiedene methoden übergeben:
das beispiel hier funzt und ich versteh eigentlich auch, wie es geht..
Java:
public static String[] add(String[] stringArray, String newValue)
{
String[] tempArray = new String[ stringArray.length + 1 ];
for (int i=0; i<stringArray.length; i++)
{
tempArray[i] = stringArray[i];
}
tempArray[stringArray.length] = newValue;
return tempArray;
}
public static void main( String[] args )
{
String[] thisIsAStringArray = {"Apple", "Banana", "Orange"};
for(int z=0;z<20;z++){
thisIsAStringArray = add(thisIsAStringArray, "Carrots"+z);
}
for (String element:thisIsAStringArray) {
System.out.println( element );
}
}
Java:
public static void initArray(){
ArtikelNeu[] Artikelliste = new ArtikelNeu[1];
Artikelliste[0]=new ArtikelNeu("MUSTER-EAN","MUSTER-Name",200);
workAround(Artikelliste); //aufruf methode und übergabe des ersten arrays - funzt
System.out.println(Artikelliste.length);
}
public static ArtikelNeu[] workAround(ArtikelNeu[] artListe){
ArtikelNeu[] Liste = new ArtikelNeu[artListe.length+1];
for (int i=0;i<artListe.length;i++){
Liste[i]=artListe[i];
}
for (int i=0;i<Liste.length-1;i++){
artListe[i]=Liste[i];
}
ArtikelNeu news = new ArtikelNeu("EANNEU","NAMENEU",100);
Liste[artListe.length]=news;
return Liste;
}
ich peil einfach nicht, warum das bearbeitete array nicht übergeben bzw erkannt wird.
im ersten code erstelle ich ein array, übergebe es an methode add, neuer eintrag wird geadded, array wird an aufrufende methode zurück gegeben. wird da auch dann ausgegeben.
im 2ten code werden an das tmparray einträge geadded..aber nicht an die aufrufende methode zurück gegeben.
mfg martin
hab den code jetzt aufs wesentliche gekürzt. in meinem war noch eine schleife mit 10 durchläufen und mit zähler generierten artikelnamen. wurde problemlos dem tmparray geadded und auch im durchlauf ausgegeben - vor return.