0

创建一个可以在数组中保存三个 TV 对象的 TV 存储。使用下面的电视类:

   class Television
   {
       boolean isOn;
   } // end class Television

使用 for 循环为 TVStore 中的每个 TV 打印 isOn 实例变量。使用第二个 for 循环将每个 TV 的 isOn 实例变量更改为“true”。最后,使用第三个 for 循环为 TelevisionStore 数组中的每个 TV 打印 isOn 实例变量。

所以我创建了一个具有正确输出的程序:

public class TelevisionDriver
    {
    public static void main( String[] args )
        {
         boolean isOn[] = new boolean[3];
         isOn[0] = false;
         isOn[1] = false;
         isOn[2] = false;

         System.out.println( "Opening the tv store for the day... tv status:" + 
         "\n" );

         for( int x = 0; x < 3; x++ )
            {
            System.out.println( "Television" + x + " on? " + isOn[x] );
            }

         System.out.println( "\n" + "Turning the tv's on..." + "\n" );

          for( int y = 0; y < 3; y++ )
            {
            isOn[0] = true;
            isOn[1] = true;
            isOn[2] = true;

            System.out.println( "Television" + y + " on? " + isOn[y] );
            }
        }
    }

这被认为是正确的吗?我意识到该程序无法访问电视类,并且不知道如何更改它。

4

3 回答 3

2

您需要构建 TV 对象:

Television tvs[] = new Television[3];
for (int i = 0; i < 3; i++) {
    tvs[i] = new Television();
    tvs[i].isOn = false;
}

然后访问它们是否打开是这样的:

for (int x = 0; x < 3; x++) {
    System.out.println("Television" + x + " on? " + tvs[x].isOn);
}

真的isOn应该封装变量并且Television类应该有一个构造函数,但我不确定你是否已经学会了这一点。

于 2013-09-23T23:08:17.410 回答
0

不,您需要创建您的电视类的实例。

Television television = new Television();

然后,要访问它的变量,您可以使用

System.out.println(television.isOn);

但是,您可能希望将该变量设为私有并为其创建 getter 和 setter。

public boolean getIsOn() { return isOn; }
public boolean setIsOn(boolean on) {isOn = on;}

然后,您可以创建一个电视对象数组并以这种方式操作它们。

于 2013-09-23T23:11:07.267 回答
0

您实际上必须创建一个电视对象数组。然后打印/设置它们的IsOn状态。这是一个(基本)示例,用于创建一个 TV 对象并将其状态设置为 on。

Television tv1 = new Television();
tv1.isOn = true;

现在考虑创建一个数组,该数组将保存 TV 的 3 个对象。你可以做被问到的事情。祝你好运。

于 2013-09-23T23:11:07.727 回答