java - 如何在java中使用for循环打印所有数组

标签 java arrays string loops for-loop

我在String中有数组。我想使用 for 循环来打印所有对象。我的印象是,这可以通过创建 for 循环然后返回 String 来完成。我不确定我需要改变什么才能实现这一目标。 以下是我的努力:

    public class SolarSystem {
        private Planet[] planets;
        private int position = 0;
     public SolarSystem(int size) {
         planets = new Planet[size];
     }
    public void add(Planet planet) {
        planets[position] = planet;
        position++; 
    }
    public String toString(){
          for(int i = 0; i < planets.length; i++){

          } 
          return toString();  
    }
   }

添加了行星类别

public class Planet  {


    String name;
    int moons;

    public Planet(String name, int moons)
    {
        this.moons = moons;
        this.name = name;               
    }

    public String toString() {
        return "The Planet " + name  + " Has " + moons + " Moon(s) \r\n ";
    }

}

最佳答案

您可以尝试使用StringBuilder:

public String toString() {
    StringBuilder sb = new StringBuilder();

    for(int i = 0; i < planets.length; i++){
        sb.append(planets[i].getName()); // getName() or toString()
        sb.append("\n");
    }

    return sb.toString();
}

关于java - 如何在java中使用for循环打印所有数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22059802/

相关文章:

java - JPA 单个外键 ID 引用两个(或更多)表

c - 如何求C数组的长度

java - 为什么 Tomcat 的 LifyCycleSupport.java 使用数组而不是任何高级容器(ArrayList)来存储监听器?

java - Spring MVC : Why does this <mvc:interceptors> declaration work, 而不是传统的XML?

java - 高效加载媒体缩略图

java - lambda 函数不起作用

c - 对包含函数的数组进行排序

c - string concat C,有更好的解决方案吗?

c - 如何使用C中的指针在结构类型数组中获取字符串输入

c - 我想知道为什么不需要为字符串绑定(bind)内存就可以工作