的ArrayList <数组列表<字符>&GT;转换为ArrayList <arraylist <string>&gt;

时间:2015-05-24 17:39:01

标签: java string multidimensional-array arraylist

为清楚起见:

spielbrettUmwandeln:游戏板转换

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>>

我搜索了很长时间才意识到这一点,但我的研究并没有帮助。

2 个答案:

答案 0 :(得分: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;
   }
}

答案 1 :(得分: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;
}