(系统)基于I/O文件处理的猜拳系统
来源:互联网 发布:冷笑话 知乎 编辑:程序博客网 时间:2024/06/08 09:51
//电脑出拳类public class Computer { private int num; public Computer() { super(); Random random = new Random(); this.num = random.nextInt(3) + 1; } public int getNum() { return num; } public void setNum(int num) { this.num = num; } public String ComputerJudge() { String string = "出错"; switch (num) { case 1: string = "剪刀"; break; case 2: string = "石头"; break; case 3: string = "布"; break; default: break; } return string; }
//玩家出拳类public class User { private int num; public int getNum() { return num; } public void setNum(int num) { this.num = num; } public User(int num) { super(); this.num = num; } public String userJudge() { String string = null; switch (num) { case 1: string = "剪刀"; break; case 2: string = "石头"; break; case 3: string = "布"; break; default: break; } return string; }}
//胜负判定类public class Judge { private String userWin = "用户 胜"; private String computerWin = "用户 负"; private String noWin = "平局"; public String judge(Computer computer, User user) { if (computer.getNum() == 1) { switch (user.getNum()) { case 1: return noWin; case 2: return userWin; case 3: return computerWin; default: break; } } else if (computer.getNum() == 2) { switch (user.getNum()) { case 1: return userWin; case 2: return noWin; case 3: return computerWin; default: break; } } else { switch (user.getNum()) { case 1: return userWin; case 2: return computerWin; case 3: return noWin; default: break; } } return computerWin; }}
import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.ObjectInputStream.GetField;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Scanner;//主程序入口public class File1 { public static void main(String[] args) throws IOException { // 判断是否有这个文件夹。没有就创建 File file = new File("d:/game"); if (!file.exists()) { file.mkdir(); } // 判断是否有这个文件,没有就创建 File file2 = new File("d:/game/user.txt"); if (!file2.exists()) { file2.createNewFile(); } // 读取文件中的数据 FileInputStream file3 = new FileInputStream("d:/game/user.txt"); byte[] data = new byte[1024]; int len; while ((len = file3.read(data)) != -1) { String string = new String(data, 0, len); System.out.println(string); } file3.close(); // ---------------------以上是准备工作------------------------ // ----------------------游戏开始-------------------------- Date date = new Date(); FileOutputStream fos = new FileOutputStream("d:/game/user.txt", true); SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd"); String dateString = sf.format(date); System.out.println(dateString); fos.write("\r\n".getBytes()); fos.write(dateString.getBytes()); fos.flush(); fos.close(); System.out.println("开始游戏"); String key = "N"; int k = 1; do { FileOutputStream fos1 = new FileOutputStream("d:/game/user.txt", true); System.out.println("请输入数字:1-剪刀,2-石头,3-布"); Scanner scanner = new Scanner(System.in); User user = new User(scanner.nextInt()); Computer computer = new Computer(); System.out.println("电脑出了" + computer.ComputerJudge()); Judge judge = new Judge(); System.out.println(judge.judge(computer, user)); String string = new String("第" + k + "局," + "电脑出了" + computer.ComputerJudge() + ",用户出了" + user.userJudge() + " " + judge.judge(computer, user)); fos1.write("\r\n".getBytes()); fos1.write(string.getBytes()); fos1.flush(); fos1.close(); System.out.println("是否继续Y/N"); key = scanner.next(); k++; } while (key.equals("Y")); }}
第一次玩
第二次玩
可以看到,此时历史纪录被显示
查看电脑中的指定文件
可以看到,历史战绩已经被存储在本地
阅读全文
0 0
- (系统)基于I/O文件处理的猜拳系统
- 文件I/O编程学习笔记一(基于linux系统的文件编程)
- Java的I/O系统
- vxWorks的I/O系统
- Linux系统文件I/O编程(三)---I/O多路复用
- Linux系统文件I/O编程(三)---I/O多路复用
- Linux系统下的文件I/O操作
- linuxC系统编程——文件的I/O操作
- linux系统下的文件I/O操作
- Linux系统调用与文件I/O
- Linux系统学习笔记:文件I/O
- UNIX系统文件I/O总结
- 内存映射文件-Java I/O系统
- 文件加锁-JAVA I/O系统
- Java I/O系统文件简单操作
- 文件I/O与系统编程
- Java I/O系统 文件读写
- java IO系统--文件I/O
- 智能小车24:openwrt的入门体验
- Chapter 4
- K 近邻算法 @ Python
- IOS 高仿boss直聘---优雅使用UIButton与UIScrollView打造滑动标签
- li 样式 不显示 overflow:hidden 导致Li前面样式不见的解决办法
- (系统)基于I/O文件处理的猜拳系统
- HYSBZ
- Chapter 5
- 在mfc中使用cef实现webkit的浏览器(一)-准备工作
- Flat front-end application structure
- Hadoop学习笔记 4
- AndroidStudio中使用代码管理软件添加忽略文件
- 插入排序 Java
- FastDFS分布式文件系统