Java中Scanner的常用方法總結(jié)(一次學(xué)懂)
Scanner類是一個(gè)可以幫助用戶鍵盤輸入內(nèi)容的一個(gè)類。
一.基本的Scanner輸入
①輸入整數(shù)、小數(shù)
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int a = scanner.nextInt(); double b = scanner.nextDouble(); System.out.println(a); System.out.println(b); } }
運(yùn)行截圖
②輸入一維數(shù)組
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt();//定義數(shù)組長(zhǎng)度為n int[] arr = new int[n];//定義一個(gè)長(zhǎng)度為n,名叫arr的數(shù)組 for (int i = 0; i < n; i++) { arr[i]=scanner.nextInt(); } System.out.print("Scanner輸入的數(shù)組為:"); for (int i = 0 ; i < n ; i++) { System.out.print(arr[i]+" "); } } }
運(yùn)行截圖
輸入二維數(shù)組
import java.util.Scanner; public class Test2 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int m = scanner.nextInt(); int[][] mat = new int[n][m]; System.out.println("請(qǐng)輸入整數(shù)型的二維數(shù)組:"); for (int i = 0; i < n; i++) { for (int j = 0; j < m; j++) { mat[i][j]=scanner.nextInt(); } } for (int i = 0; i < n; i++) { System.out.print("["); for (int j = 0; j < m; j++) { if(j==m-1) { System.out.print(mat[i][j]); }else { System.out.print(mat[i][j]+","); } } System.out.print("]"); System.out.println(); } } }
運(yùn)行截圖
③輸入字符串?dāng)?shù)組
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); String[] arr = new String[n]; for(int i = 0 ; i < n ; i ++) { arr[i]=scanner.next(); } System.out.println("輸入的字符串?dāng)?shù)組為:"); for (int i = 0; i < arr.length; i++) { System.out.print(arr[i]); } } }
運(yùn)行截圖
二.例【猜數(shù)字】
創(chuàng)建ScannerDemo類,首先在主方法中創(chuàng)建一個(gè)隨機(jī)數(shù),然后再創(chuàng)建一個(gè)while循環(huán)不斷獲取用戶輸入的數(shù)字,讓用戶輸入的數(shù)字與隨機(jī)數(shù)比較,給出“大于”或“小于”的提示,直到用戶輸入的數(shù)字與隨機(jī)數(shù)相等才結(jié)束循環(huán)。
import java.util.Random; import java.util.Scanner; public class ScannerDemo { public static void main(String[] args) { Random r = new Random(); int num = r.nextInt(100); int input = -1; Scanner scanner = new Scanner(System.in); while(true) { System.out.println("猜一猜隨機(jī)數(shù)是多少?"); input=scanner.nextInt(); if (input>num) { System.out.println("你輸入的數(shù)字大了!"); }else if(input<num) { System.out.println("你輸入的數(shù)字小了!"); }else if(input==num) { break; }else { System.out.println("您的輸入有誤!"); } } System.out.println("恭喜你答對(duì)了!"); scanner.close(); } }
運(yùn)行截圖
附:Scanner可以指定任意 符號(hào),字符等作為分割符;
范例:
String s = "you are Beautiful!you are kind! you are smart!"; Scanner scanner = new Scanner(s); scanner.useDelimiter("!"); while (scanner.hasNext()) System.out.println(scanner.next());
結(jié)果:
總結(jié)
到此這篇關(guān)于Java中Scanner的常用方法總結(jié)的文章就介紹到這了,更多相關(guān)Java Scanner常用方法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java19新特性中外部函數(shù)與內(nèi)存API
Java19引入的外部函數(shù)與內(nèi)存API(預(yù)覽功能)是Project Panama一部分,旨在簡(jiǎn)化Java與本地代碼及非堆內(nèi)存的交互,提供更低層次的編程能力,解決了傳統(tǒng)JNI調(diào)用的復(fù)雜性、安全性和性能局限,特別適合高性能計(jì)算和系統(tǒng)編程領(lǐng)域,感興趣的可以了解一下2024-09-09Java8新特性之StampedLock_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
本文從synchronized、Lock到Java8新增的StampedLock進(jìn)行對(duì)比分析,對(duì)Java8新特性之StampedLock相關(guān)知識(shí)感興趣的朋友一起看看吧2017-06-06PowerJob的ServerDiscoveryService工作流程源碼解讀
這篇文章主要為大家介紹了PowerJob的ServerDiscoveryService工作流程源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12springboot引用kettle實(shí)現(xiàn)對(duì)接oracle數(shù)據(jù)的示例代碼
這篇文章主要介紹了springboot引用kettle實(shí)現(xiàn)對(duì)接oracle數(shù)據(jù),其實(shí)kettle集成到springboot里面沒(méi)有多少代碼,這個(gè)功能最主要的還是ktr文件的編寫(xiě),只要ktr編寫(xiě)好了,放到指定文件夾下,寫(xiě)個(gè)定時(shí)任務(wù)就完事了,需要的朋友可以參考下2022-12-12判斷二叉樹(shù)是否為完全二叉樹(shù)的實(shí)例
這篇文章主要介紹了判斷二叉樹(shù)是否為完全二叉樹(shù)的實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-05-05SpringMVC使用hibernate-validator進(jìn)行參數(shù)校驗(yàn)最佳實(shí)踐記錄
這篇文章主要介紹了SpringMVC使用hibernate-validator進(jìn)行參數(shù)校驗(yàn)最佳實(shí)踐,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-05-05