【问题标题】:a class to programm matryoshka dolls给俄罗斯套娃编程的课程
【发布时间】:2017-11-26 21:49:31
【问题描述】:

我想实现俄罗斯套娃。 如果你打开一个娃娃,里面会出现一个更小的娃娃,直到一个没有其他娃娃的巨大娃娃。

我的尝试:

public static class Puppe{

    int massive;
    Puppe contains; 

    public static boolean massiveOrNot(Puppe doll) {
        if(doll.massive==0) return true;
        else return false;
    }

    public static Puppe exchangeDoll(Puppe doll) {

        Puppe newDoll=new Puppe();
        doll=newDoll;
        return doll;
    }

}

我对课程完全陌生。 如何将娃娃保存在其他娃娃中,例如计算一个娃娃中有多少个娃娃?

最好的问候 啵啵

【问题讨论】:

  • 大量?你是说很小吗?
  • 您可能需要一个构造函数来设置massivemassive 也可能比 boolean isMassive; 更好,或者是一个命名错误的变量来保存玩偶的顺序,即最里面的是 0,那个 1 之外的那个等等......?目前还不清楚exchangeDoll 试图实现什么,分配给doll 不会做任何事情,因为它是exchangeDoll 函数范围内的对象引用。该函数应该做什么?
  • 感谢您的回答。是的,它作为布尔值更好。我拿了一个娃娃,需要从中读取,无论它是否巨大。如果它很大,那么我会得到另一个娃娃。因此,如果它很大,我会再次检查它……直到找到巨大的。表示无法打开的那个。

标签: java class model


【解决方案1】:

首先要摆脱静态,您将需要更多此类对象。 然后你必须考虑你的对象是否要包含。

public class Puppe{
  Puppe container;
  public boolean isContaining() {
     if(container != null) return true;
     return false;
  }
  public void setDoll(Puppe smallerOne) {
       container = smallerOne;
  }
  public Puppe getDoll() {
       if(container != null)
        return container;
       return nullptr;
  }

}

【讨论】:

  • 感谢您的回答。对象 new Puppe 应该包含另一个新 Puppe,除非它是巨大的。
猜你喜欢
  • 1970-01-01
  • 2020-07-01
  • 2016-07-20
  • 1970-01-01
  • 2014-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-05
相关资源
最近更新 更多