Announcement

Collapse
No announcement yet.

replace list strings

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • replace list strings

    Hallo,

    ich habe eine Liste und möchte für jeden Eintrag Strings ersetzen. Leider funktioniert das nicht ganz nach Plan...

    Code:
    ArrayList<String> myListe = new ArrayList<String>();		
    ArrayList<String> temp_liste = new ArrayList<String>();
    String temp ="";		
    
    for (int i=0; i<myListe.size(); i++) {
    				temp = myListe.get(i).replace("01", "A");
    				temp = myListe.get(i).replace("02", "B");
    				temp = myListe.get(i).replace("03", "C");
    				temp = myListe.get(i).replace("04", "D");
    				temp = myListe.get(i).replace("05", "E");
    				temp = myListe.get(i).replace("06", "F");
    				temp = myListe.get(i).replace("07", "G");
    				temp = myListe.get(i).replace("08", "H");
    				temp = myListe.get(i).replace("09", "I");
    				temp = myListe.get(i).replace("10", "J");
    				temp = myListe.get(i).replace("11", "K");
    				temp = myListe.get(i).replace("12", "L");
                             temp_liste.add(temp);
    
    		}
    Am Ende habe ich immer noch die alten Strings in der temp_liste.

  • #2
    Habe es jetzt mit switch case gemacht. Wüsste trotzdem gerne was das problem an obigem Code war.

    Comment


    • #3
      Nicht nach Plan ist kein Fehler und nach obigen Code ist die Liste leer, hat keinen Inhalt. Davon abgesehen dürfte eine Veränderung nur stattfinden, wenn replace("12", "L") zutrifft. Wenn du debuggst müsste dir klar werden, warum
      Zuletzt editiert von Christian Marquardt; 22.04.2013, 11:03.
      Christian

      Comment


      • #4
        Oh ja, alles klar. Die Liste hat natürlich Inhalt. Hatte ich mal als gegeben vorausgesetzt... Aber danke.

        Comment


        • #5
          Du hast erkannt, warum der Code nicht funktionierte? Du hast mal debuggt?
          Christian

          Comment


          • #6
            Es hätte ein break o.ä. sein müssen, damit er nicht alle Anweisungen durchgeht und damit nur den letzten ausführt... Alles klar.

            Comment


            • #7
              Es gibt an dieser Stelle kein break. Vielmehr holst du beim ersten replace korrekterweise mit mylist.get(i) das Element aus der Liste und fuehrst dein replace durch. Das Ergebnis wird nach tmp geschrieben. Die weiteren replace holen aber wieder mit get(i) das Element aus der Liste. Somit sind die vorher gemachten replace verloren. Die weiteren replace haetten auf tmp gehen muessen
              Christian

              Comment


              • #8
                Aha....jetzt habe ich es verstanden....Danke.

                Comment

                Working...
                X