不使用任何循环和递归,输出打印n条(n>1) "Hello World" 

解决方案 »

  1.   

    String  str="Hello";
      int  num=4;
      Object[]  obj=new  Object[num];
      Arrays.fill(obj,str);
      String  s=Arrays.toString(obj);
      s=s.replaceAll("([\\[\\]]|[,][\\s])","\n");
      System.out.println(s);
      

  2.   

            int n = 10;
            String[] strArray = new String[n];
            List<String> list = Arrays.asList(strArray);
            Collections.fill(list, "Hello World");
            System.out.println(list.toString());
      

  3.   

    学习了,不过看了下源码,最终还是没有逃脱循环:
    Arrays.fill(obj,str); 
    调用的是Arrays.fill(a, 0, a.length, val);
    也就是调用:public static void fill(Object[] a, int fromIndex, int toIndex, Object val) {
        rangeCheck(a.length, fromIndex, toIndex);
        for (int i=fromIndex; i<toIndex; i++)
            a[i] = val;
    }不过还是学习了以前没有用过的方法。
      

  4.   

    然后Arrays.toString事实上是public static String toString(Object[] a) {
            if (a == null)
                return "null";
            if (a.length == 0)
                return "[]";
     
            StringBuilder buf = new StringBuilder();
     
            for (int i = 0; i < a.length; i++) {
                if (i == 0)
                    buf.append('[');
                else
                    buf.append(", ");
     
                buf.append(String.valueOf(a[i]));
            }
     
            buf.append("]");
            return buf.toString();
        }表面上没有循环,事实用了两次,不知道为什么会有这么怪异的问题,还不如直接在外面循环!呵呵