2015-05-24 7 views
-2

Для ясности:ArrayList <ArrayList <Character>> преобразовать ArrayList <ArrayList <String>>

spielbrettUmwandeln: настольная игра Convertion

umgewandeltesSpielbrett: конвертированы доска

public ArrayList<ArrayList<String>> spielbrettUmwandeln(ArrayList<ArrayList<Character>> spielbrett) 
{ 
    ArrayList<ArrayList<String>> umgewandeltesSpielbrett = new ArrayList<ArrayList<String>>(); 

    // populate strings 

    StringBuilder builder = new StringBuilder(); 

    for(String string : umgewandeltesSpielbrett) { 
     builder.append(string).append(','); 
    } 

    if(builder.length() > 0) { 
     builder.deleteCharAt(builder.length() - 1); 
    } 

    System.out.println(builder); 
    return umgewandeltesSpielbrett; 
} 

2D- ArrayList<ArrayList<Character>> должен быть преобразован в 2D-ArrayList<ArrayList<String>>.

Я долго искал это, но мое исследование не помогло.

+0

* хэштегом Java ??? * You «Мы изобрели новый способ заставить теги в названиях. Поздравления. – Will

+1

Что должен иметь 'ArrayList >' в нем? Приведите пример ввода и вывода. – Radiodef

+0

Можете ли вы не просто прокрутить список и создать новый ArrayList для каждого ArrayList ? Это похоже на ** очень простой бит логики, чтобы придумать, если я не ошибаюсь в вашей цели. – SamTebbs33

ответ

0

Предложение, если ваш класс Character имеет метод toString().

ArrayList<ArrayList<String>> umgewandeltesSpielbrett = new ArrayList<ArrayList<String>>(); 

// populate strings 
for(ArrayList<Character> listIn : spielbrett){ 
    ArrayList<String> listOut = new ArrayList<String>(); 
    for(Character c : listIn) 
     listOut.add(c.toString()); 
    umgewandeltesSpielbrett.add(listOut); 
} 

Если Character не имеет метод ToString(), вот как вы могли бы построить один (адаптироваться к вашим потребностям, очевидно):

public class Character { 
    String firstName; 
    String lastName; 

    public String toString() { 
     return firstName + " " + lastName; 
    } 
} 
0
public ArrayList<ArrayList<String>> spielbrettUmwandeln(ArrayList<ArrayList<Character>> spielbrett) { 
    ArrayList<ArrayList<String>> umgewandeltesSpielbrett = new ArrayList<>(); 
    for (ArrayList<Character> x : spielbrett) { 
     ArrayList<String> list = new ArrayList<>(); 
     for (Character c : x) 
      list.add(Character.toString(c)); 
     umgewandeltesSpielbrett.add(list); 
    } 
    return umgewandeltesSpielbrett; 
} 
+0

Большое спасибо !!!!! :) – ddvdt

Смежные вопросы