【问题标题】:Using a Counter class to increment and decrement: java使用 Counter 类递增和递减:java
【发布时间】:2011-12-13 01:02:48
【问题描述】:

我无法想象这个问题的最终结果:

定义一个名为 Counter 的类,其对象计数事物。此类的一个对象 记录一个非负整数的计数。包括设置计数器的方法 到 0,将计数增加 1,将计数减少 1。确保没有 方法允许计数器的值变为负数。包括访问器 返回当前计数值的方法和输出计数值的方法 数到屏幕。不应该有输入法或其他修改器方法。 唯一可以设置计数器的方法是将其设置为零。还, 包括一个 toString 方法和一个 equals 方法。编写一个程序(或多个程序) 测试类定义中的所有方法。

谁能更好地为我解释这个问题?

【问题讨论】:

  • 如果这是作业,请将其中一个标签替换为作业标签。
  • 讲的很好。。。具体哪一部分看不懂?
  • 我投票结束这个问题作为题外话,因为: - 不是一个真正的编程问题。存在很多这样的解决方案。 - 明显的功课,无需参考已完成的工作。 - 实际上这根本与编程无关。只是在阅读简单任务的技术要求时遇到困难的人。不适合这个地方。

标签: java methods counter increment decrement


【解决方案1】:

编写定义类的代码。班级名称应为Counter。 (想一想:这对文件名意味着什么?请记住,我们希望这是一个 public 类,以便我们可以将其用于测试。)Counter 用于计算事物(不足为奇) .

为此,类的每个实例都将包含一个“计数”值。 (想一想:这个值的好名字是什么?我们如何为属于实例的类的每个实例创建一个单独的值?)该值不应为负数。 (很明显;你怎么会有负数的事情?)你应该确保值不会变成负数(如果你以远程正常的方式做事,这应该自动发生)。

该类应提供以下功能:

  • 将计数值设置为 0 的方法。(想一想:这个方法有什么好名字?当然应该是 public,因为它是其他代码如何使用该类的一部分。想一想:你需要这个方法的任何参数吗?如果需要,是什么?)

  • 一种将计数增加 1 的方法。(思考:同上。)

  • 一种将计数减 1 的方法。(想一想:如上。另外,如果计数已经为 0 会发生什么,因为我们不能让它变成负数?决定在这种情况下该怎么做。 )

  • 返回当前计数值的方法。 (这称为“访问器”)。

  • 一种显示当前计数值的方法。 (注意:这在设计方面是一个非常糟糕的想法,但您的作业需要它。提示:使用System.out 的方法之一输出到屏幕。)

  • 一种称为toString 的方法,它返回计数器的字符串表示形式。这不应该带任何参数,并且必须返回一个字符串。 (这是 Java 中大多数对象提供的标准功能。想一想:除了计数值之外,字符串中还应该包含其他任何内容吗?)

  • 一个名为equals 的方法将 Counter 与另一个 Counter 进行比较以确定是否相等。此方法必须只接受一个参数,一个 Counter 实例,并返回一个 boolean 指示两个 Counters 是否相等。 (想一想:是什么决定了两个计数器是否“相等”?)

该类不应提供以下任何功能:

  • 任何其他更改计数器值的方法(尤其是不是从标准输入读取值的方法)。

编写一个程序,创建一些Counter 实例并使用它们的方法。该程序应该证明您的Counter 类的行为符合预期,产生的输出与您在阅读主程序时所期望的一致。 (提示:由于这是 Java,我们将需要另一个类用于该程序,带有 public static void main(String[] args) 方法。将它放在另一个文件中。您可能需要使用 packageimport 语句,以便主程序可以在另一个文件中找到您的 Counter 类。确保您了解如何编译和运行 Java 类。)

【讨论】:

  • 那么我想我做对了,因为我得到了所有的递增/递减一次,还说明它是否相等。
【解决方案2】:

最终产品是具有问题中描述的方法的类。您可能还应该提供一个测试程序来验证该程序是否可以使用一些示例数据按预期工作。

【讨论】:

    猜你喜欢
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 2022-06-29
    • 1970-01-01
    • 2014-03-21
    • 2012-04-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多