活动类:
开发一个“建议”基于温度的活动的类。应通过具有公共访问器和增变器方法的私有变量来维持温度。需要两个构造函数。默认构造函数应将温度设置为0.应创建第二个构造函数以接受初始温度值。另一个名为suggestion的方法应该返回一个包含“建议”活动的String。当温度高于85℃时,该方法应建议游泳。当在70到84之间时,该方法应该建议网球。当温度在60到69之间时,建议徒步旅行。当温度低于60时,该方法应建议棋盘游戏。
客户申请:
创建一个Java客户端应用程序来测试您的类。客户端应该从用户获取温度并使用该类来确定要向用户报告的活动。
活动类代码
/**
* Java Chatbot Service class
* @author blake
* 2/26/2012
*/
public class Activity
{
private int temperature;
public Activity(int newtemperature)
{
temperature = newtemperature;
}
public String getActivity()
{
String a = "board games";
if (temperature > 85)
{
a = "Suggests Swimming";
return a;
}
if (84 < temperature && temperature > 70)
{
a = "Suggests Playing Tennis";
return a;
}
if (69 < temperature && temperature > 60)
{
a = "Suggests Hiking";
return a;
}
if (temperature < 60)
{
a = "Suggests Playing Board Game";
return a;
}
return a;
}
}
活动客户代码
/**
* Java Chatbot Service class
* @author Blake
* 2/26/2012
*/
import java.util.Scanner;
public class ActivityClient
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.print("Temperature of weather today: ");
int temperature = in.nextInt();
Activity act = new Activity(temperature);
System.out.println(act.getActivity());
}
}
好的,这是我遇到的主要问题,它是布尔表达式。
当我编译并运行程序时,它会建议我不想要的活动。
有效的答案
今天温度:90 建议游泳 今天温度:58 建议玩棋盘游戏这两项工作
但每当我放入
今天气温:77 建议徒步旅行(应该是网球) 今天温度:66 建议棋盘游戏(当它应该是徒步旅行时)所以我想知道我在远足和网球方法上做错了什么。
答案 0 :(得分:0)
这是你的错误:
if (84 < temperature && temperature > 70)
if (69 < temperature && temperature > 60)
正确的陈述是
if (84 > temperature && temperature > 70)
if (69 > temperature && temperature > 60)
答案 1 :(得分:0)
你的病情不是很好。看看:
69 < temperature && temperature > 60
意味着温度超过69且温度超过60。 我想你的意思是:
69>temperature && temperature > 60