Как мне заставить эту программу остановиться и вернуться, чтобы включить и выключить телевизор?Boolean to String в Java
Если выбрано ВЫКЛ, я хочу, чтобы он отображал текущий статус телевизора.
import java.util.Scanner;
public class TvTest
{
public static void main (String[] args)
{
String x;
String y;
boolean tvStatus = false;
int chan;
int volu;
Scanner input = new Scanner(System.in);
TV tv2 = new TV(false,2,10);
// Print out the current status of our TV
System.out.print(tv2);
System.out.println();
System.out.print("Turn TV On or Off ?");
x = input.nextLine();
if(x.equalsIgnoreCase("on"))
{
tvStatus = true;
}else if(x.equalsIgnoreCase("off"))
{
tvStatus =false;
}
System.out.print("Change the Channel to : ");
chan = input.nextInt();
System.out.print("Increase the volume by 1 or Decrease by -1 : ");
volu = input.nextInt();
TV tv1 = new TV(tvStatus,chan,volu);
if(volu == 1)
{
tv1.incrementVolume();
}else if (volu == -1)
{
tv1.decrementVolume();
}
System.out.println(tv1);
}
}// ENd of TvTest
вот мой телевизор класс я думаю, что должен быть способ улучшить метод ToString или даже мой сеттер
public class TV
{
private boolean flag = false;
private int ch;
private int vol = 10;
public TV(boolean onOffSwitch, int channel, int volume)
{
this.setFlag(onOffSwitch);
this.setCh(channel);
this.setVol(volume);
}
public void setFlag(boolean onOffSwitch)
{
if(onOffSwitch == true)
{
flag = true;
}else
{
flag = false;
}
}// End of setFlag
public boolean getFlag()
{
return flag;
}// End of getFlag
public void setCh (int newChannel)
{
if (newChannel >= 99)
{
ch = 99;
}else
{
ch = newChannel;
}
if(newChannel < 0)
{
ch = 1;
}
}//end of setCh
public int getCh()
{
return ch;
}// End of getCh
public void setVol(int newVolume)
{
if(newVolume >= 20)
{
vol = 20;
}
}// End of SetVolume
public void incrementVolume()
{
vol++;
}
public void decrementVolume()
{
vol--;
}
public int getVol()
{
return vol;
}// ENd of getVolume
public String toString()
{
if(flag == false)
{
return String.format("%s :%s\n%s:%d\n%s :%d","TV is switched","OFF","TV channel",ch,"TV volume",vol);
}else
{
return String.format("%s :%s\n%s:%d\n%s :%d","TV is switched","ON","TV channel",ch,"TV volume",vol);
}
}
}// End of TV class
Почему вас не устраивает тостри ng ?? – PermGenError
Исправлен метод setFlag ... Что не так с вашим методом toString? Это слишком медленно? Разве он не пишет то, что вы ожидали? – LaGrandMere
Я не понимаю, в чем именно заключается ваш вопрос. –