【问题标题】:toString java of arraystoString java的数组
【发布时间】:2011-03-24 06:37:21
【问题描述】:

我在一个类中有几个数组

我想实现 toString() 来打印所有值。

如何做到这一点?

public String var1[];   
public int var2[];
public String var3[][];
public int var4[];
public int var5[][];

public String toString() {

        for(String s :  var1) {
              System.out.println(s.toString());           
        }


        return  null;
    }

打印所有 var1[] 内容但如何打印所有内容?我必须为每个人都设置一个循环吗?

【问题讨论】:

    标签: java


    【解决方案1】:

    您可以使用Arrays.toString()静态辅助方法如下:

    String lines[] = getInputArray();
    System.out.println(java.util.Arrays.toString(lines));
    

    【讨论】:

    • 例如System.out.println(Arrays.toString(var1));(当然是在你导入java.util.Arrays之后)
    【解决方案2】:

    我想你要找的是Arrays.deepToString()

    请参阅this link 了解更多详情。它接受一个数组并在每个元素上调用toString()

    【讨论】:

      【解决方案3】:

      首先,这取决于数组的大小。你没有提到每一个的大小。当然,我们可以使用for each。第二个问题很明显,如何将它们全部打印在屏幕上。就是这样。

      如果您在这种情况下使用普通的for loop [ex: for(int i=0;i<ar.length();i++)]。你必须为每个数组单独循环。

      如果您的数组大小对所有人都相同。您可以简单地使用一个循环来迭代所有这些以将其打印出来。

      提示:不要忘记处理ArrayOutofBound 异常。你需要那个:P

      【讨论】:

        【解决方案4】:
        String someArray = new String[] {"1", "2"};
        String toString = Arrays.asList(someArray).toString();
        

        上面的代码将以更易读的格式打印出 toString:

        [1, 2]

        如果您使用的是 JDK 1.5,则可以使用:

        String[] strings = { "ABC", "DEF" };
        String s = Arrays.toString(strings); 
        

        【讨论】:

          猜你喜欢
          • 2013-10-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-01-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多