黑马程序员技术交流社区
标题:
夯哥让写的小游戏,赚点黑马币o(╯□╰)o
[打印本页]
作者:
18253594213
时间:
2015-5-28 21:26
标题:
夯哥让写的小游戏,赚点黑马币o(╯□╰)o
本帖最后由 18253594213 于 2015-5-28 21:52 编辑
import java.util.*;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//登陆类
new LoginView().login();
}
}
//登陆页面
class LoginView {
//键盘录入用户输入用户名和密码
public void login()
{
System.out.println("请输入用户名:");
Scanner userInput1 = new Scanner(System.in);
String userName = userInput1.nextLine();
if(userName.equals("exit"))
{
System.out.println("您已成功退出该系统~~~");
System.exit(0);
}
System.out.println("请输入密码:");
Scanner userInput2 = new Scanner(System.in);
String userPwd = userInput2.nextLine();
testPrint(userName,userPwd);
}
//校验用户名和密码
public void testPrint(String userName,String userPwd)
{
if(userName.equals("admin") && userPwd.equals("admin"))
{
System.out.println("欢迎您进入小游戏系统");
WelComeView wcl = new WelComeView();
wcl.welCome();
}
else
{
System.out.println("对不起,您输入的用户名密码有误,请重新输入");
login();
}
}
}
//游戏主页面
class WelComeView {
public void welCome()
{
System.out.println("******************* 欢迎登陆小游戏 ******************");
System.out.println("** 1:请输入两个数字,然后就得到这个两个数字范围内的整数和 **");
System.out.println("** 2:请输入两个数字,即可得到两个数字的和 **");
System.out.println("** 3:求最大值 **");
System.out.println("** 4:输出一个九九乘法表 **");
System.out.println("** 5:请输入两个数字,咱们来交换这两个变量 **");
System.out.println("** 6:猜数字小游戏 **");
System.out.println("** 0:退出游戏 **");
System.out.println("***************************************************");
System.out.println("请输入您要玩的游戏选项(输入游戏对应的数字即可)");
Scanner userSelect = new Scanner(System.in);
int x = userSelect.nextInt();
UserChoose uc = new UserChoose();
uc.userSelect(x);
}
public void choseShape()
{
System.out.println("*********** 请选择九九乘法表输出形状 *****************");
System.out.println("** 1:矩形形式 **");
System.out.println("** 2:正三角 **");
System.out.println("** 3:倒三角 **");
System.out.println("***************************************************");
Scanner userSelect = new Scanner(System.in);
int cho = userSelect.nextInt();
Function ft = new Function();
ft.printJJB(cho);
}
}
//用户选择处理类
class UserChoose {
public void userSelect(int choose)
{
Function fun = new Function();
switch (choose)
{
//退出游戏
case 0:
fun.logOut();
break;
//请输入两个数字,然后就得到这个两个数字范围内的整数和
case 1:
fun.getBetweenSum();
break;
//请输入两个数字,即可得到两个数字的和
case 2:
fun.getSum();
break;
//求最大值
case 3:
fun.getMax();
break;
//输出一个九九乘法表
case 4:
new WelComeView().choseShape();
break;
//请输入两个数字,咱们来交换这两个变量
case 5:
fun.swpNum();
break;
//猜数字小游戏
case 6:
fun.gussNumber();
break;
default:
{
System.out.println("对不起,你输入的选项不存在,请重新输入");
WelComeView wcv = new WelComeView();
}
}
}
}
//相关功能类
class Function {
//退出该系统
public void logOut()
{
System.out.println("您已成功退出该系统~~~");
System.exit(0);
}
//请输入两个数字,然后就得到这个两个数字范围内的整数和
public void getBetweenSum()
{
System.out.println("请输入首数字");
Scanner sc1 = new Scanner(System.in);
int start = sc1.nextInt();
System.out.println("请输入尾数字");
Scanner sc2 = new Scanner(System.in);
int end = sc2.nextInt();
int sum = 0;
for(int i = start; i <= end; i++)
{
sum = sum + i;
}
System.out.println(start +"和"+ end +"两数字范围内的整数和为:"+sum);
new WelComeView().welCome();
}
//请输入两个数字,即可得到两个数字的和
public void getSum()
{
System.out.println("请输入第一个数字");
Scanner sc1 = new Scanner(System.in);
int a = sc1.nextInt();
System.out.println("请输入第二个数字");
Scanner sc2 = new Scanner(System.in);
int b = sc2.nextInt();
int sum = 0;
sum = a + b;
System.out.println(a +"和"+ b +"两数字范围内的整数和为:"+sum);
new WelComeView().welCome();
}
//求最大值
public void getMax()
{
System.out.println("请输入第一个数字");
Scanner sc1 = new Scanner(System.in);
int a = sc1.nextInt();
System.out.println("请输入第二个数字");
Scanner sc2 = new Scanner(System.in);
int b = sc2.nextInt();
System.out.println(a +"和"+ b +"两数字较大的数字为:"+(a > b ? a : b));
new WelComeView().welCome();
}
//请输入两个数字,咱们来交换这两个变量
public void swpNum()
{
System.out.println("请输入第一个数字");
Scanner sc1 = new Scanner(System.in);
int a = sc1.nextInt();
System.out.println("请输入第二个数字");
Scanner sc2 = new Scanner(System.in);
int b = sc2.nextInt();
System.out.println("您输入的数据为:" + a + ", " + b);
a = a + b;
b = a - b;
a = a - b;
System.out.println("交换后的数据为:" + a + ", " + b);
new WelComeView().welCome();
}
//选择打印九九乘法表形状:
public void printJJB(int x)
{
switch(x)
{
case 1:
squareShape();
break;
case 2:
equilateralTriangle();
break;
case 3:
nabla();
break;
}
}
//矩形形状
public void squareShape()
{
for (int i = 1; i < 10 ; i++ )
{
for(int k = 1; k < i; k++)
{
System.out.print(i +"*"+ k +"="+ i * k+"\t");
}
for (int j = i; j <= 9 ; j++ )
{
System.out.print(i +"*"+ j +"="+ i * j+"\t");
}
System.out.println();
}
new WelComeView().welCome();
}
//正三角形状
public void equilateralTriangle()
{
for (int i = 1; i < 10 ; i++ )
{
for (int j = 1; j <= i ; j++ )
{
System.out.print(j +"*"+ i +"="+ i * j+"\t");
}
System.out.println();
}
new WelComeView().welCome();
}
//倒三角形状
public void nabla()
{
for (int i = 9; i > 0 ; i-- )
{
for (int j = 1; j <= i ; j++ )
{
System.out.print(j +"*"+ i +"="+ i * j+"\t");
}
System.out.println();
}
new WelComeView().welCome();
}
//猜数字小游戏
public void gussNumber()
{
int number = (int)(Math.random()*100+1);
while(true)
{
Scanner sc = new Scanner(System.in);
System.out.println("请输入你猜的数据(1-100):");
int gussNumber = sc.nextInt();
if(gussNumber == number)
{
System.out.println("恭喜你,猜对了");
break;
}
else if(gussNumber < number)
{
System.out.println("你猜的数据:"+gussNumber+"小了");
}
else if(gussNumber > number)
{
System.out.println("你猜的数据:"+gussNumber+"大了");
}
}
new WelComeView().welCome();
}
}
复制代码
作者:
TOBESKY
时间:
2015-5-28 21:44
顶 果然大神。。。。。。。。。。。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2