作者mintle (☑狂派☑初音)
看板java
标题Re: [问题] 如何写成一个猜数字的游戏
时间Fri Oct 19 17:48:06 2012
※ 引述《JazzChen (PhoenixJazz)》之铭言:
: 小弟不才,在此次第一次发文
: 实在是因为碰上了一个大大大的问题
: 由於小弟是自学,学疏才浅,实在是受不了可能要一次跑67个if式因此想上来询问各位
: 大大
: 相信各位大大都聪明才智都有听过"猜数字"的游戏
: 小弟不才最近由於兴趣正在编撰一个猜数字的小游戏程式
: 但可能是小弟对於电脑方面的低能或等等,实在只能用土法炼钢的方法用if式一个一个
: 慢慢keyin,但是实在是keyin到发疯了!
: 故想请问各位大大有没有比较"偷懒"的方法可用,让小弟脱离可怕的if地狱...
: 感激!!
刚刚想了一下 重点应该在判断几a几b的逻辑吧
如果只是单纯这个逻辑,使用list的函数就能解决了
private Pojo getAnswer(ArrayList<Integer> guessList ,
ArrayList<Integer> answerList){
int index = 0;
int a = 0;
int b = 0;
for(Integer eachGuess : guessList){
if(answerList.contains(eachGuess) == true){
//有存在判断是a还是b
if(answerList.get(index).intValue()
== eachGuess.intValue()){
a++;
}else{
b++;
}
}
index ++;
}
return new Pojo(a, b);
}
将输入跟答案做成list
对输入的list做回圈 使用contains去检核是否在答案list出现
有的话在检查位置是否相同
就可以得到几a几b了
不过为了怕贴太多很冗长,一开始输入使用的Scanner等重复让使用者输入的回圈的
省略不贴了
个人是觉得这样只要做好list就能比了而不用费心去跑回圈拿字串比
也比较好懂
至於做成list 就只是String.chatAt() 一直转型成数字放入而已
--
你看,这是她的照片,很美吧,这次结束後我就要回家乡跟他结婚...
来接应的直升机就在前面了,这里有我挡着,你们先走,回头见...
兄弟们提起精神,干完这票咱们就可以金盆洗手了...
爸爸,你走吧。他往车外看了看,说,我买几个橘子去。你就在此地,不要走动...
什麽声音?你们先在这等着,我去看看情况...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.34.10.7
※ 编辑: mintle 来自: 114.34.10.7 (10/19 17:49)
1F:推 No:有陷阱!! answerList.get(index) == eachGuess 10/19 18:55
2F:推 pelicanper:没错,ArrayList中是Object,用==的话要小心会... 10/19 19:01
3F:→ mintle:对吼 修改一下好了 10/19 19:59
※ 编辑: mintle 来自: 220.132.116.136 (10/19 20:00)