如何讓此程序停止並返回打開和關閉電視?布爾到Java中的字符串
如果選擇OFF,我希望它顯示電視機的當前狀態。
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
爲什麼你不開心toStri ng ?? – PermGenError 2013-03-20 11:22:54
更正了你的setFlag方法...你的toString方法有什麼問題?它太慢了嗎?它不寫你所期望的? – LaGrandMere 2013-03-20 11:25:00
我不明白你的問題到底是什麼。 – 2013-03-20 11:25:12