活动的规则:随机出现一个商品名,用户猜测它的价值,如果在规定次数内猜对,便可获得此商品。模拟竞猜活动,运行结果如下所示:
请猜测“公主电动车”的价格:1000
再大点!
再猜一次吧:5000
再小点!
再猜一次吧:2500
在小点!
再猜一次吧:2200
4次内没有猜对,下次努力吧!
参考实现步骤如下:
定义类QuessMachine,编写它的initial()方法预定义商品信息,根据产生的随机数字,选定一款竞猜的商品
编写QuessMachine类的guess()方法,如果猜测正确,返回“猜对了!”;如果偏大,返回“再小些”;如果偏小,返回“再大些!”
编写测试类模拟竞猜
直接上代码
包含商品信息和抽奖方法的类:
package kehouzuoye.zuoye07;
import java.util.Random;
import java.util.Scanner;
public class GuessMachine {
Random random=new Random();
Scanner input=new Scanner(System.in);
int guess=random.nextInt(3);
int price=0;
String name=null;
int initial(){
if(guess==1){
this.name="白马空调";
price=5000;
return price;
}else if(guess==2){
this.name="公主电动车";
price=1999;
return price;
}else{
this.name="黑土挖掘机";
price=500000;
return price;
}
}
int jiage=initial();
void guess(){
for (int i = 0; i < 4; i++) {
int inguess=input.nextInt();
if(jiage==inguess){
System.out.println("猜对了");
}
if(i==3){
System.out.println("4次内没有猜对,下次努力吧!");
}else{
if(jiage<inguess){
System.out.println("再小点!");
System.out.print("再猜一次吧:");
}
if(jiage>inguess){
System.out.println("再大点!");
System.out.print("再猜一次吧:");
}
}
}
}
}
下面是测试类
package kehouzuoye.zuoye07;
import java.util.Random;
public class Test {
public static void main(String[] args) {
GuessMachine guess=new GuessMachine();
System.out.print("请猜测“"+guess.name+"”的价格:");
guess.initial();
guess.guess();
}
}