有一個(gè)java.util.Scanner類可以使用
創(chuàng)新互聯(lián)公司是一家專注于成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)與策劃設(shè)計(jì),株洲網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:株洲等地區(qū)。株洲做網(wǎng)站價(jià)格咨詢:18980820575
import?java.util.Scanner;//我不想打很多,以下用到Scanner的都是java.util.Scanner
public?class?InputTest{
public?static?void?main(String[]?args){
Scanner?input=new?Scanner(System.in);//輸入主要是System.in
System.out.print("請(qǐng)輸入一個(gè)0~9的數(shù):");
do
{//如果使用者不是輸入0~9的數(shù)時(shí),我們要他重新輸入
int?a=input.nextInt();//此時(shí)會(huì)讓執(zhí)行System.in,再由Scanner轉(zhuǎn)為int形態(tài)
if(a0)
{
System.out.print("你輸入的值過(guò)小,請(qǐng)重新輸入:");
continue;//回到回圈一開(kāi)始
}
else?if(a9)
{
System.out.print("你輸入的值過(guò)大,請(qǐng)重新輸入:");
continue;//回到回圈一開(kāi)始
}
else?break;//如果符合就跳出回圈
}while(true);
System.out.println("你輸入的值為:"+a);
}
}
希望能幫到你。
int num = (int)(Math.random()*100)+1;
Scanner sc = new Scanner(System.in);? ?
int guessNum = -1;
while (guessNum != num) {
System.out.println("請(qǐng)輸入1-100之間整數(shù)");
guessNum = sc.nextInt();
if (guessNum == num) {
System.out.println("中啦");
} elseif (guessNum num) {
System.out.println("小啦");
} else {
System.out.println("大了");
}
}
擴(kuò)展資料:
編寫(xiě)思路
1、成1-100之間隨機(jī)數(shù)
(int)(Math.random()*100)+1;
提示用戶輸入數(shù)字,
Scanner??sc=new?Scanner(System.in);
int?guessNum?= sc.nextInt();
需要將隨機(jī)數(shù)和用戶輸入的數(shù)字進(jìn)行比較。
猜一次:
Scanner sc = new Scanner(System.in);
int num = (int)(Math.random()*100)+1;
System.out.println("請(qǐng)輸入0-100之間整數(shù)");
int guessNum = sc.nextInt();
if (guessNum == num) {
System.out.println("中啦");
}?elseif?(guessNum num) {
System.out.println("小啦");
}?else?{
System.out.println("大了");
}
二、使用while循環(huán)
publicstaticvoid main(String[] args) {
int num = (int)(Math.random()*100)+1;
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("請(qǐng)輸入1-100之間整數(shù)");
int guessNum = sc.nextInt();
if (guessNum == num) {
System.out.println("中啦");
} elseif (guessNum num) {
System.out.println("小啦");
} else {
System.out.println("大了");
}
}
}
三、最后用while() 括號(hào)中的條件表達(dá)式,當(dāng)用戶猜測(cè)的數(shù)和系統(tǒng)生成的數(shù)字不相等時(shí),就需要繼續(xù)循環(huán)。
package?day06;
import?java.util.Scanner;
//猜字符游戲
public?class?GuessingGame?{
//主方法
public?static?void?main(String[]?args)?{
Scanner?scan?=?new?Scanner(System.in);
int?count?=?0;?//猜錯(cuò)的次數(shù)
char[]?chs?=?generate();?//隨機(jī)生成的字符數(shù)組
System.out.println(chs);?//作弊
while(true){?//自造死循環(huán)
System.out.println("猜吧!");
String?str?=?scan.next().toUpperCase();?//獲取用戶輸入的字符串
if(str.equals("EXIT")){?//判斷str是否是EXIT
System.out.println("下次再來(lái)吧!");
break;
}
char[]?input?=?str.toCharArray();?//將字符串轉(zhuǎn)換為字符數(shù)組
int[]?result?=?check(chs,input);??//對(duì)比
if(result[0]==chs.length){?//位置對(duì)為5
int?score?=?chs.length*100?-?count*10;?//一個(gè)字符100分,錯(cuò)一次減10分
System.out.println("恭喜你猜對(duì)了,得分:"?+?score);
break;?//猜對(duì)時(shí)跳出循環(huán)
}else{?//沒(méi)猜對(duì)
count++;?//猜錯(cuò)次數(shù)增1
System.out.println("字符對(duì):"+result[1]+"個(gè),位置對(duì):"+result[0]+"個(gè)");
}
}
}
//隨機(jī)生成5個(gè)字符數(shù)組
public?static?char[]?generate(){
char[]?chs?=?new?char[5];
char[]?letters?=?{?'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'};
boolean[]?flags?=?new?boolean[letters.length];?//1.
for(int?i=0;ichs.length;i++){
int?index;
do{
index?=?(int)(Math.random()*letters.length);?//0到25
}while(flags[index]==true);?//2.
chs[i]?=?letters[index];
flags[index]?=?true;?//3.
}
return?chs;
}
//對(duì)比隨機(jī)數(shù)組與用戶輸入的數(shù)組
public?static?int[]?check(char[]?chs,char[]?input){
int[]?result?=?new?int[2];
for(int?i=0;ichs.length;i++){
for(int?j=0;jinput.length;j++){
if(chs[i]==input[j]){?//字符對(duì)
result[1]++;?//字符對(duì)個(gè)數(shù)增1
if(i==j){?//位置對(duì)
result[0]++;?//位置對(duì)個(gè)數(shù)增1
}
break;
}
}
}
return?result;
}
}