有猜字母游戏,其游戏规则为:程序随机产生5个按照一定顺序排列的字符作为猜测的结果,由玩家来猜测此字符串。玩家可以猜测多次,每猜测一次,则由系统提示结果。如果猜测的完全正确,则游戏结束,计算玩家的游戏得分并输出;如果没有猜对,则提示猜测的结果,如猜对了几个字符,以及猜对了几个字符的位置等信息,并提示玩家游戏继续。
方法/步骤
1、importjava.util.Arrays;importjava.util.Scanner;importjavax.swing.InputMap;publicclassDemo1{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);char[]arr=Arrays();intscore=500;System.out.println(Arrays.toString(arr));Strings="exit";while(true){intcount=0;intposition=0;
2、char职邗珩垃[]input=Input();//char[]exit=Input();//Stringexit=sc.next().trim().toUpperCase();f泠贾高框or(inti=0;i<input.length;i++){for(intj=0;j<arr.length;j++){if(input[i]==(arr[j])){count++;}if(input[i]==(arr[j])&&i==j){position++;}}}if(count==5&&position==5){System.out.println("恭喜全对!"+"得分:"+score);break;}score-=5;System.out.println("有"+count+"个字母一致,有"+position+"个位置一致!"+"得分:"+score);}
3、}publicstaticchar[]Arrays()咯悝滩镞{char[]arr=newchar[5];char[]a={'A'荑樊综鲶,'B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};intindex=0;arr[index++]=a[(int)(Math.random()*26)];loop:while(true){charz=a[(int)(Math.random()*26)];for(inti=0;i<index;i++){if(arr[i]==(z)){continueloop;}}
4、arr[index++]=z;if(index==arr.length){break;}}returnarr;}publicstaticchar[]Input(){char[]arr={};System.out.println("请输入五个大写字母:");Scannersc=newScanner(System.in);Strings=sc.next();for(inti=0;i<s.length();i++){arr=Arrays.copyOf(arr,arr.length+1);arr[i]=s.charAt(i);}returnarr;}}
5、方法:将一定的逻辑功能封装起来,方便随用随拿定义方法:5要素修饰符:publicstatic用public修饰的所有类都可以调用此方法返回值类型:可以是基本数据类型和引用数据类型方法名:自己定义的表示符遵循驼峰命名法(第一个单词首字母小写;后面每个首字母大写)参数列表:可以有1---N个,也可以没有,相当于声明一个局部变量;方法体:编写的业务逻辑例子:publicstaticinsum(inta,intb){intsum=a+b;returnsum;}备注:在方法里面不能够再定义别的方法;
6、方法的重载:方法名相同,返回值类型和参数列表,参数类型不同;只有返回值类型不同,报错,不叫重载上例:publicstaticdoublesum(doublea,doubleb,intc){参数类型不同,参数列表intsum=a+b;returnsum;}返回值类型:有的方法有返回值,有的方法没有返回值有返回值的用return关键字来将方法里面的运算结果传给调用他的引用如果没有返回值,需用void关键字来表示没有返回值,没有返回值的也可以使用return关键字,此时return关键字表示方法调用结束;