猜拳游戏项目(涉及知识点Scanner、Random、For、数组、Break、Continue等)
package day03.d3.xunhuankongzhi; import java.util.Scanner; public class CaiQuan { public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String[] arr = { "石头", "剪刀", "布" };
while (true) {
System.err.println("请选择你要出的手势:");
int you;
for(;;){
you = sc.nextInt();
if(you>=0&&you<3){
System.err.println("你出的是" + arr[you]);
break;
}else{
System.err.println("你出的手势无效,请重新选择你要出的手势!");
continue;
}
} int comp = (int) (Math.random() * 3);
System.err.println("电脑出的是:" + arr[comp]);
padDuan(you, comp);
System.err.println("是否继续下一局(Y/N):");
String str;
boolean bool;
for (;;) {
str = sc.nextLine();
if (str.equals("Y")) {
bool = true;
break;
} else if (str.equals("N")) {
bool = false;
break;
} else {
System.err.println("输入有误,请重新输入!是否继续下一局(Y/N):");
continue;
}
} if (bool) { } else {
break;
} }
} public static void padDuan(int x, int y) {
if (x == y) {
System.err.println("英雄所见略同!");
} else if ((x == 0 && y == 1) || (x == 1 && y == 2)
|| (x == 2 && y == 0)) {
System.err.println("恭喜你,你赢了!");
} else {
System.err.println("很遗憾,你输了,请再接再厉!");
}
}
}
猜拳游戏项目(涉及知识点Scanner、Random、For、数组、Break、Continue等)的更多相关文章
- java基础知识点补充---二维数组
#java基础知识点补充---二维数组 首先定义一个二维数组 int[][] ns={ {1,2,3,4}, {5,6,7,8}, {9,10,11,12}, {13,14,15,16} }; 实现遍 ...
- Scanner,Random,匿名对象-------------------java基础学习第七天
1.API 2.Scanner 功能:通过键盘输入数据到程序中. 引用类型的一般使用步骤: 导包 Import 包路径.类名称 只有java.lang 包写的类不需要导包,其他都需要 2.创建 类名称 ...
- java第3天:Scanner,Random,ArrayList
第一章:Scanner从入门到放弃 1 API的概述和使用步骤 API简称应用程序编程接口,是JDK给我们提供好的可以直接使用的类和方法,是程序员随手使用的字典. *** 2 Scanner的概述 2 ...
- 引用数据类型 Scanner Random
Scanner类 数据类型 变量名 = new 数据类型(); 每种引用数据类型都有其功能,我们可以调用该类型实例的功能. 变量名.方法名(); Scanner类是引用数据类型的一种,我们可以使 ...
- WorkSkill整理之 java用Scanner 类输入数组并打印
输入不确定长度的数组 import java.util.*; public static void main(String[] args){ System.out.println("请输入一 ...
- ES6之主要知识点(六)数组
引自http://es6.ruanyifeng.com/#docs/array 1.扩展运算符(...) 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用 ...
- todolist作业涉及知识点
window.event对象详细介绍 1.event代表事件的状态,例如触发event对象的元素.鼠标的位置及状态.按下的键等等.event对象只在事件发生的过程中才有效.event的某些属性只对特定 ...
- JavaScipt30(第十个案例)(主要知识点:选中一个数组中间相连部分进行操作的一种思路)
承接上文,第九个案例就不说了,是控制台的一些东西,一般用的很少,了解下就行了,想用的时候再翻api.这是第10个案例: 需要实现的效果是:点击一个checkbox,然后按下shift点击另一个chec ...
- 项目1_001_涉及知识点(Django任务追踪平台)
随机推荐
- adjtimex修改tick值用法举例
测试 用户态下内核时钟计数间隔,默认都是100HZ.因此单个tick代表了10^4 us. 可以设置每个tick代表的时钟长度,因此把tick增加1(即增加为10001us)的影响是每天时间快8.64 ...
- python爬虫11 | 这次,将带你爬取b站上的NBA形象大使蔡徐坤和他的球友们
在上一篇中 python爬虫10 | 网站维护人员:真的求求你们了,不要再来爬取了!! 小帅b给大家透露了我们这篇要说的牛逼利器 selenium + phantomjs 如果你看了 python爬虫 ...
- 腾讯云,搭建python开发环境
准备工作 任务时间:5min ~ 10min Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.首先我们来看看系统中是否已经存在 Python ,并安装一些开发工具包: 安装前准备 ...
- hdu2007 平方和与立方和【C++】
平方和与立方和 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Sub ...
- Myeclipse学习总结(1)——Myeclipse优化配置
作为企业级开发最流行的工具,用Myeclipse开发java web程序无疑是最合适的,java web前端采用jsp来显示,myeclipse默认打开jsp的视图有卡顿的现象,那么如何更改jsp默认 ...
- CentOS 7.3降低内核版本为7.2
查看当前内核版本: [root@nineep ~]# uname -r 2.3.10.0-514.2.2.el7.x86_64 查看当前发行版本: [root@nineep ~]# cat /etc ...
- [POJ1226]Substrings(后缀数组)
传送门 给定 n 个字符串,求出现或反转后出现在每个字符串中的最长子串. 算法分析: 这题不同的地方在于要判断是否在反转后的字符串中出现.其实这并没有加大题目的难度. 只需要先将每个字符串都反过来写一 ...
- Django获取当前页面的URL——小记
获取带参数URL:request.get_all_path() 获取不带参数URL:request.path 获取主机地址:request.get_host()
- VI 快捷操作 【持续更新】
2014-9-23 一. 大小写转换 vim中大小写转化的命令是 gu或者gU 形象一点的解释就是小u意味着转为小写:大U意味着转为大写. 剩下的就是对这两个命令的限定(限定操作的行,字母,单词) ...
- centos7安装opennms-17.0.0
https://blog.csdn.net/jiangzhexi/article/details/52036858 http://www.jb51.net/os/RedHat/281470.html