Salve sono un nuovo utente.
Mi sono avventurato in Java per passione e hobby, dopo buone esperienze con Flash e ActionScript. Come primo approccio con la programmazione in Java uso Enterprise Indigo (Version: Indigo Service Release 2 Build id: 20120216-1857) su Windows7 64bit.
Esordisco nel forum per chiedere il Vostro aiuto riguardo un problemino che non riesco a risolvere... vado ad esporlo.
Ho creato una Classe readString che dovrebbe leggermi un "archivio" di stringhe e restituirle, vi posto il codice:
Il metodo viene così chiamato dalla main:codice:public class readString { static String str1 = "testo qualsiasi"; static String str2 = "altro testo"; static String str3 = "qui quo qua"; static String str4 = "bla bla bla"; public String[] leggiStringhe (String X) { System.out.println(X); String strArray[] = X.split("\\|"); String returnArray[] = new String[strArray.length]; for (int i=0; i<strArray.length; i++) { System.out.println(strArray.length+" > "+strArray[i]); returnArray[i] = strArray[i]; // *** QUI E' IL PROBLEMA!!!! *** } return returnArray; } }
Cioè in base alle stringhe che mi servono invio il nome delle variabili che le "contengono", nell'esempio la str1, la str2 e la str4. Il codice funziona bene, ovviamente con le imperfezioni di un neofita di Java come me, ma il problema è quando devo assegnare all'Array di ritorno (returnArray ) il valore di str1, str2 etc dove ho evidenziato con l'appunto QUI E' ILPROBLEMA!!!!. Cioè come posso assegnare a returnArray[i] il valore di str1 che sarebbe "testo qualsiasi" e non il valore di strArray[i] che è appunto str1 o str2 etc!?codice:readString primaIstanza; primaIstanza = new readString(); String[] A = primaIstanza.leggiStringhe("str1|str2|str4"); //CHIAMO IL METODO PASSANDO I VALORI System.out.println(A[0]+" <> "+A[1]+" <> "+A[2]);
Spero di aver spiegato bene il problema.
Grazie a Tutti per l'attenzione,
porgo l'occasione per augurarVi Buona Pasqua.

Rispondi quotando