黑马程序员技术交流社区

标题: Java猜数字游戏_试玩结束请付费(升级版)【回复奖励黑马币】 [打印本页]

作者: 万合天宜    时间: 2015-2-14 20:29
标题: Java猜数字游戏_试玩结束请付费(升级版)【回复奖励黑马币】
  1. package cn.itheima.NumberGame;

  2. import java.io.FileReader;
  3. import java.io.FileWriter;
  4. import java.io.IOException;
  5. import java.io.Reader;
  6. import java.io.Writer;
  7. import java.util.Properties;
  8. import java.util.Scanner;

  9. /*
  10. * 需求:猜数字小游戏,当游戏次数达5次以上时,提示请付费,并且进行异常处理。
  11. */
  12. public class guessNumberGame {
  13.         public static void main(String[] args) {

  14.                 // 把数据加载到集合中
  15.                 Properties prop = new Properties();
  16.                 // 创建输入流,并且进行异常处理
  17.                 Reader r = null;
  18.                 try {
  19.                         r = new FileReader("count.txt");
  20.                         prop.load(r);
  21.                 } catch (IOException e) {
  22.                         System.out.println("玩游戏失败!");
  23.                 } finally {
  24.                         if (r != null) {
  25.                                 try {
  26.                                         r.close();
  27.                                 } catch (IOException e) {
  28.                                         System.out.println("玩游戏失败!");
  29.                                 }
  30.                         }
  31.                 }

  32.                 // 根据键值获取数据
  33.                 String value = prop.getProperty("count");
  34.                 int number = Integer.parseInt(value);

  35.                 // 判断
  36.                 if (number > 5) {
  37.                         System.out.println("试玩结束,请进行付费!");
  38.                         System.exit(0);
  39.                 } else {
  40.                         // 游戏次数 ++
  41.                         number++;
  42.                         // 创建输出流,并且进行异常处理
  43.                         Writer w = null;
  44.                         try {
  45.                                 prop.setProperty("count", String.valueOf(number));
  46.                                 w = new FileWriter("count.txt");
  47.                                 prop.store(w, null);
  48.                         } catch (IOException e) {
  49.                                 System.out.println("游戏失败了!");
  50.                         } finally {
  51.                                 if (r != null) {
  52.                                         try {
  53.                                                 r.close();
  54.                                         } catch (IOException e) {
  55.                                                 System.out.println("游戏失败!");
  56.                                         }
  57.                                 }
  58.                                 gameStart();
  59.                         }
  60.                 }

  61.         }

  62.         public static void gameStart() {
  63.                 // 产生一个随机数
  64.                 int number = (int) (Math.random() * 100) + 1;

  65.                 // 定义一个统计变量
  66.                 int count = 0;

  67.                 while (true) {
  68.                         // 键盘录入一个数据
  69.                         Scanner sc = new Scanner(System.in);
  70.                         System.out.println("请输入数据(1-100):");
  71.                         int guessNumber = sc.nextInt();

  72.                         count++;

  73.                         // 判断
  74.                         if (guessNumber > number) {
  75.                                 System.out.println("你猜的数据" + guessNumber + "大了");
  76.                         } else if (guessNumber < number) {
  77.                                 System.out.println("你猜的数据" + guessNumber + "小了");
  78.                         } else {
  79.                                 System.out.println("恭喜你," + count + "次就猜中了");
  80.                                 break;
  81.                         }
  82.                 }
  83.         }
  84. }
复制代码



作者: d342784178    时间: 2015-2-14 20:54
挺有意思的 顶一个
作者: cly成子    时间: 2015-2-14 21:48
貌似听老师讲过类似的!
作者: iOS大神    时间: 2015-2-14 22:10
哈哈哈哈
作者: hyc120500    时间: 2015-2-14 22:13
好像毕老师讲过类似的
作者: orsoul    时间: 2015-2-14 22:29
以前学c的时候也写过一个类似的游戏,拿给朋友玩,结果数学稍好一些的朋友都嫌这游戏无聊。
作者: 枪杆不如笔杆    时间: 2015-2-14 22:41
不错,也刚看到这里还没练习
作者: 血色@残阳    时间: 2015-2-14 22:57
额,楼主搞的好复杂,这个真需要些保存记录吗?而且楼主代码有个问题啊,如果别人运气好,第一次就猜中怎么办?退出去吗?后面的4次试玩机会被吞了?
作者: huangchunwei    时间: 2015-2-14 23:07
来学习学习。。
作者: Oo不弃    时间: 2015-2-15 00:42
太强大了!
作者: BEIKOU    时间: 2015-2-15 07:10
太有意思了,顶一下
作者: 心镜逝水    时间: 2015-2-15 07:30
,,,,,,
作者: 枪杆不如笔杆    时间: 2015-2-16 23:38
收到黑马币了!祝楼主万事如意!
作者: 枪杆不如笔杆    时间: 2015-2-17 09:34
又来回复咯,哈哈
作者: 枪杆不如笔杆    时间: 2015-2-17 09:35
再回复一次,会有币莫?
作者: coolmiao13    时间: 2015-2-17 10:52
真是有心啦,一会儿去玩玩。。嘿嘿。。
有时间给你改改。。

作者: a410709560    时间: 2015-2-17 12:14
挺有意思的 顶一个
作者: franksight    时间: 2015-2-17 15:10
老师确实讲过。。。
作者: xyf19881010    时间: 2015-2-17 15:12
听说回复有黑马币
作者: ADS1993    时间: 2015-2-17 23:35
我只是 路过  来看看  学习下  技术
作者: xyf19881010    时间: 2015-2-17 23:37
我来看望楼主来了
作者: 林吉前    时间: 2015-2-18 10:52
这第三个环节真心磨人:dizzy::dizzy:
作者: play1369    时间: 2015-2-18 11:24
第37行,应该再判断String value = prop.getProperty("count");为null(第一次)的情况
作者: 正在输入...    时间: 2015-2-18 13:44
一直取中间数,求黑马币。
作者: 2119391569    时间: 2015-2-18 14:40
轻轻的飘过
作者: 彭春晓    时间: 2015-2-18 14:44
哎呦。不错哦
作者: 林吉前    时间: 2015-2-18 15:17
林吉前 发表于 2015-2-18 10:52
这第三个环节真心磨人

:Q:Q:Q感觉搞来搞去 IO还是好凌乱啊 你是怎么学IO的
作者: 枪杆不如笔杆    时间: 2015-2-18 16:01
play1369 发表于 2015-2-18 11:24
第37行,应该再判断String value = prop.getProperty("count");为null(第一次)的情况

应该要自己先建好count.txt的文件的
作者: Aily    时间: 2015-2-18 18:37
高端,学习了
作者: liuka    时间: 2015-2-18 22:26
还没那么深层次!
作者: 木羊    时间: 2015-2-21 14:12
:handshake
作者: 小泽    时间: 2015-2-21 19:39
为了黑马币
作者: aawenwei    时间: 2015-2-21 19:58
围观下。。。。。。。。。。。
作者: 关山明月    时间: 2015-2-21 20:33
Properties prop = new Properties();   这行是反射里的内容吗?集合里好像没有这个啊
作者: 万合天宜    时间: 2015-2-21 20:59
关山明月 发表于 2015-2-21 20:33
Properties prop = new Properties();   这行是反射里的内容吗?集合里好像没有这个啊 ...

是集合里的哦,你仔细找找老毕的视频
作者: 犹待南风    时间: 2015-2-21 22:16
新人进来学习学习~~~~~~~~~O(∩_∩)O哈哈~
作者: jiao    时间: 2015-2-21 22:34
来学习学习
作者: 大手牵小手    时间: 2015-3-3 17:58
涨知识了!谢谢!
作者: zfgrinm    时间: 2015-3-3 20:57
视频里有讲过类似的玩游戏付费问题
作者: 仰天长啸    时间: 2015-3-3 21:45
长见识了{:3_46:}
作者: ZZGFF    时间: 2015-3-3 22:49
学过,不过是控制台的,没用到IO流。
作者: 夏季熬成了秋    时间: 2015-3-3 22:58
有意思,有意思。顶一个。~~
作者: wdhm5423    时间: 2015-3-3 23:10
来看看、、
作者: 蒙仔    时间: 2015-3-4 02:08
斑斑驳驳币币
作者: 西瓜PK刀子    时间: 2015-3-4 09:07
恩   不错!收藏了
作者: 习惯就好    时间: 2015-3-4 09:11
恩   很不错!虽然有些看不懂   但先收藏了!
作者: 蒙仔    时间: 2015-3-4 14:12
来学学  ,顺便想要黑马币 ,这么赤裸裸的   哎。。。都是技术分逼的。。容易么
作者: 明羽果果    时间: 2015-3-4 18:51
duang~~~~收币,3Q
作者: zailushang326    时间: 2015-3-4 19:14
很不错的,学习ing
作者: wu1123    时间: 2015-3-4 19:17
先学习学习
作者: 轻羽涉池    时间: 2015-3-4 21:34
代码不错啊
作者: ankje    时间: 2015-3-4 21:46
好样的,挺一个
作者: 1千克=1024克    时间: 2015-3-4 22:15
瞻仰一下
作者: 若辰    时间: 2015-3-4 22:19
感觉挺不错的,有意思呢
作者: xufei5789651    时间: 2015-3-4 22:24
好好学习一下
作者: yjsf216    时间: 2015-3-5 00:03
赞币不宜啊~~
作者: 大手牵小手    时间: 2015-3-5 09:25
表示看不懂,不过可以先留着!
作者: mxdeheima    时间: 2015-3-5 10:23
看着挺好,顶一个
作者: 落雪    时间: 2015-3-5 10:44
来学习学习,尽管有些还看不懂
作者: 西西小枫    时间: 2015-3-5 11:25
楼主好厉害,学习了。
作者: Neil_Qian    时间: 2015-3-5 13:19
挺有意思的,谢谢分享
作者: lubowen1990    时间: 2015-3-5 14:23
菜鸟表示看看就好,等学得差不多了在来试试
作者: 何剑钟    时间: 2015-3-5 17:21
学习,学习
作者: zaphod    时间: 2015-3-5 17:55
学习一下,先看看
作者: 840800102    时间: 2015-3-5 18:58
太有意思了 。
作者: shepqrst    时间: 2015-3-5 21:37
有点看不懂
作者: 轻羽涉池    时间: 2015-3-5 22:42
有意思,不过我还没看到这块儿
作者: 轻羽涉池    时间: 2015-3-6 20:21
代码复制了,
作者: 班凤飞    时间: 2015-3-6 20:58
来学习技术的:lol
作者: 仰天长啸    时间: 2015-3-6 21:38
我领黑马币的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2