2012-04-14 1 views
0

In meinem Projekt muss ich die Werte dynamisch in einer Zeichenfolge speichern und muss diese Zeichenfolge mit "," teilen. Wie kann ich das machen ? Bitte helfen Sie mir ..Wie speichern Sie die Werte dynamisch in Zeichenfolge in Java Android?

Mein Code:

static ArrayList<ArrayList<String>> listhere; 
ArrayList<String> arropids; 
String arropids1; 


    for(int q=0;q<listhere.size();q++) 
       { 
        arropids = listhere.get(q); 

        if(arropids.get(3).equals("1")) 
        { 
         arropids1 += arropids.get(0) + ","; 


        System.out.println("arropids1"+arropids1); 

       } 
       } 
+0

Sie möchten also jeden arropids1, der von den Daten analysiert wird, speichern? –

+0

ja ... nach dem Speichern möchte ich jeden arropids1 teilen ... – RaagaSudha

Antwort

2

Sie Nullpointer bekommen müssen Sie den String initialisiert haben, initialisieren es als

String arropids1=""; 

Es Ihr Problem zu beheben, aber ich nicht, Empfehlen String für diese Aufgabe, da String unveränderlich ist, können Sie StringBuffer für diesen Zweck verwenden, daher empfehle ich folgenden Code:

static ArrayList<ArrayList<String>> listhere; 
ArrayList<String> arropids; 

StringBuffer buffer=new StringBuffer(); 

    for(int q=0;q<listhere.size();q++) 
       { 
        arropids = listhere.get(q); 

        if(arropids.get(3).equals("1")) 
        { 
         buffer.append(arropids.get(0)); 
         buffer.append(","); 


        System.out.println("arropids1"+arropids1); 

       } 
       } 

und schließlich String erhält aus diesem Puffer durch:

String arropids1=buffer.toString(); 
+0

Hallo danke ... es funktioniert gut – RaagaSudha

0

Um die Ergebnisse nach dem Speichern Ihres Parsing in dem for-Schleife zu teilen, verwenden Sie die Split-Methode auf Ihrer gespeicherten Zeichenkette und festgelegt, dass gleich eine Zeichenfolge Array wie folgt:

static ArrayList<ArrayList<String>> listhere; 
ArrayList<String> arropids; 
String arropids1 = ""; 


for(int q=0;q<listhere.size();q++) { 
       arropids = listhere.get(q); 

       if(arropids.get(3).equals("1")) 
       { 
        arropids1 += arropids.get(0) + ","; 


       System.out.println("arropids1"+arropids1); 

       } 
     } 
     String[] results = arropids1.split(","); 
     for (int i =0; i < results.length; i++) { 
      System.out.println(results[i]); 
     } 

Ich hoffe, dass das ist, was Sie suchen.

+0

Hallo danke ... es funktioniert gut ..... – RaagaSudha

+0

Könnten Sie die Antwort dann upvote ? Vielen Dank –

Verwandte Themen