从事网站开发方向,网站vi设计公司,vi设计都包括什么,东莞浩智网站建设多少钱满意答案sylvia10172019.01.20采纳率#xff1a;48% 等级#xff1a;7已帮助#xff1a;460人简单的Dos小游戏开始学习java#xff0c;这周只简单的学习了C的基本语法#xff1a;输入输出#xff0c;判断循环#xff0c;因此用这些东西在java上瞎写了一个DOS小游戏。…满意答案sylvia10172019.01.20采纳率48% 等级7已帮助460人简单的Dos小游戏开始学习java这周只简单的学习了C的基本语法输入输出判断循环因此用这些东西在java上瞎写了一个DOS小游戏。import java.util.*;public class Demo {static int A0,D0,H10,MONEY0;static int a11,d11,h15,lv1;static String receive;//用来接收指令public static void main(String[] args){sop(输入star开始游戏);receivein();//调用命令行输入方法if(receive.equals(star)){star();}else{sop(error:receive);}}public static void star(String flag){//开始1sop(输入1,2,3中的一个值领取物品);flagin();if(flag.equals(1)){A4;D;show();}else if(flag.equals(2)){A3;D2;show();}else{MONEY50;show();}star2();}public static void star2(String flag){//开始2sop(输入f/S决定去战斗/商店);flagin();if(flag.equals(f)){f();}else if(flag.equals(s)){s();}else{star2();}}public static void f(String flag){//战斗//int key0;a11;//初始化botd11;h15;lv11;do{sop(当前战斗等级为lv1);a12*lv1;d12*lv1;h15*lv1;sop(bot为);showbot();sop(是否开始战斗y/n);flagin();if(flag.equals(y)){//输入y继续Hfight(H);//进入fight模式if(H0){//判断HMONEY5*lv1;lv1;sop(win);show();}else{over();}}else{//输入其他退回到satr2star2();}if(lv19){boss();}sop(继续\ny/n);flagin();}while(flag.equals(y));star2();}public static void s(String flag){//商店sop(输入1/2/3选择攻击/防御/生命,任意键退出);flagin();if(flag.equals(1)MONEY10){A;MONEY-10;show();s();}else if(flag.equals(2)MONEY10){D;MONEY-10;show();s();}else if(flag.equals(3)MONEY10){H10;MONEY-10;show();s();}else if(flag.equals(pay)){sop(这位土豪选择了充钱攻击10防御5);A50;D25;show();s();}else if(MONEY10){sop(你的钱不够);star2();}else{star2();}}public static void boss(String flag){//BOSSflagin();if(flag.equals(y)){h1100;d130;h1500;fight(H);}else{sop(你被抓到了GG);try{Thread.sleep(1000);}catch(Exception e){}over();}if(H0){win();}else{over();}}public static int fight(int H){//fight模式while(true){if(Ad1){sop(你被一招秒了);try{Thread.sleep(1000);}catch(Exception e){}over();}h1h1-(A-d1);sop(你对bot造成了(A-d1)点伤害);try{Thread.sleep(1000);}catch(Exception e){}if(h10){sop(bot被打败了);try{Thread.sleep(1000);}catch(Exception e){}h15;//return H;break;}HH-(a1-D);//???????????????????????????sop(bot对你造成了(a1-D)点伤害);try{Thread.sleep(1000);}catch(Exception e){}if(H0){sop(你死了);try{Thread.sleep(1000);}catch(Exception e){}over();break;}}return H;}public static void show(){//显示自己数值sop(A值为A\nD值为D\nH值为H\nMONEY:MONEY);}public static void showbot(){//显示bot数值sop(A值为a1\nD值为d1\nH值为h1);}public static String in(){//命令行输入方法Scanner scnew Scanner(System.in);String strsc.next();return str;}public static void sop(Object obj){//输出语句方法System.out.println(obj);}public static void over(){//失败结束sop(饮恨,游戏结束);System.exit(0);}public static void win(){//胜利sop(通关游戏结束);System.exit(0);}}很多地方都是凭感觉写的有些地方不会写就百度了一下。最后写完发现如下问题1没有了解静态和非静态的区别因此只写了一个类方法都是静态的。2注释的地方想了很久为什么我的H值在每次战斗后又会被重置为10后来发现只写了fight(H)应该写为Hfight(H)。3商店部分“你的钱不够”语句有点小问题不想改了。4刚开始没有在每次战斗后初始化bot的生命值h1导致在攻击过高时h1会变为负值的BUG后来在每次bot被打败后添加了一条h15。5刚开始没有在win()over()方法中添加System.exit(0)导致死亡后还会继续执行战斗方法的尴尬场面。学习到的知识1静态方法只能调用静态成员因为静态成员是随着类的加载而加载的此时非静态成员可能还未加载因此不能调用非静态成员。非静态方法实例化之后可以被静态成员调用。2问题2我想了很久最后发现原来是自己忘记了成员变量和局部变量的区别。figth(H)中的H是局部变量和成员变量H不是一回事局部变量和成员变量可以同名在使用时局部变量具有更高的优先级直接使用同名访问时访问的是局部变量如果要访问成员变量可以用this.变量名访问。(this的用法并不是很清楚)10分享举报