1. 随机生成4个0到9的整数,组成一个序列(使用LinkedList<Integer>存储)
例如:3 6 4 4
2. 然后要求用户循环猜这4个数子,在用户每猜一次之后,提示用户有几个数字的位置正确了。
例如:用户输入3 7 2 4 (3和4的位置正确了),则提示用户有2个数字正确(但不提示具体是哪2个数字正确,需要用户自行判断)。
3. 使用LinkedList存储用户每次猜测的数字组合。用户可以随时查看之前自己的输入
例如:3 7 2 4
5 7 2 4
……
4. 用户猜到第10次时,就没有机会,提示猜测失败
package javabase16;
import java.util.LinkedList;
import java.util.Scanner;
public class LinkedList1 {
public static void main(String[] args) {
LinkedList<Integer> LinkedList = new LinkedList<Integer>();
//随机生成4个0-9的数字
int k=0;
do {
for(int i=0;i<4;i++){
LinkedList.add(new Integer((int)((Math.random())*10)));
System.out.print(LinkedList.get(i)+", ");
}
}while(k==1);
LinkedList<Integer> guessnum=new LinkedList<Integer>();
int count=0;
int sub=0;
for(int j=0;j<10;j++){
//用户输入猜的数字
@SuppressWarnings("resource")
Scanner scan=new Scanner(System.in);
System.out.println("请输入您猜的四个数字:");
for(int i=0;i<4;i++){
guessnum.add(scan.nextInt());
}
//判断猜对了多少数字
for(int i=0;i<4;i++){
if(guessnum.get(i).equals(LinkedList.get(i))){
sub+=1;
}
}
System.out.println("您猜对了"+sub+"个数字");
count+=1;
if(count==10){
System.out.println("很遗憾,您已没有机会");
break;
}
else if(sub==4){
System.out.println("恭喜您,四个数字都正确");
break;
}
//用户查看之前的输入
System.out.println("之前输入过的数字:");
int q=0;
for(int i=0;i<guessnum.size();i++){
System.out.print(guessnum.get(i)+"-");
q+=1;
if(q%4==0){
System.out.println("");
}
}
}
}
}