【问题标题】:ArrayList<ArrayList<Character>> convert to ArrayList<ArrayList<String>>ArrayList<ArrayList<Character>> 转换为 ArrayList<ArrayList<String>>
【发布时间】:2015-08-06 05:30:43
【问题描述】:

为了清楚起见:

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&lt;ArrayList&lt;Character&gt;&gt; 应转换为 2D-ArrayList&lt;ArrayList&lt;String&gt;&gt;

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

【问题讨论】:

  • Hashtag java??? 您发明了一种将标签强制放入标题的新方法。恭喜。
  • ArrayList&lt;ArrayList&lt;String&gt;&gt; 里面应该有什么?举个输入输出的例子。
  • 你不能只循环遍历列表并为每个 ArrayList 创建一个新的 ArrayList 吗?除非我弄错了你的目标,否则这似乎是一个非常简单的逻辑。

标签: java string multidimensional-array arraylist


【解决方案1】:
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;
}

【讨论】:

    【解决方案2】:

    这是一个建议,假设您的 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;
       }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-31
      • 2012-08-22
      • 2021-02-21
      • 1970-01-01
      • 1970-01-01
      • 2011-08-20
      相关资源
      最近更新 更多