介紹:
簡(jiǎn)單來(lái)說(shuō),Scanner就是用來(lái)獲取用戶在控制臺(tái)輸入的字符串,也可以獲取一個(gè)文件中的字符串。
(推薦教程:java入門教程)
java.util.Scanner 是 Java5 的特征,一個(gè)可以使用正則表達(dá)式來(lái)解析基本類型和字符串的簡(jiǎn)單文本掃描器。
使用方法介紹:
1、使用不同的 next 方法將得到的標(biāo)記轉(zhuǎn)換為不同類型的值,比如說(shuō)要從獲控制臺(tái)取一個(gè)輸入字符串中的int類型的數(shù)字,使用nextInt。
代碼示例:
Scanner sc = new Scanner(System.in); int i = sc.nextInt();
如果需要從一個(gè)名文為numbers件中去獲取long 類型的數(shù)字。
Scanner sc = new Scanner(new File("numbers")); while (sc.hasNextLong()) { long longNumber = sc.nextLong(); }
(視頻教程推薦:java視頻教程)
2、從帶有空格中的字符串中獲取指定的內(nèi)容
比如刪去字符串 : 1 fish 2 fish red fish blue fish 中的 fish和空格。
代碼示例:
String input = "1 fish 2 fish red fish blue fish"; // 使用正則匹配的方式獲取想要的內(nèi)容 Scanner s = new Scanner(input).useDelimiter("\s*fish\s*"); System.out.println(s.nextInt()); System.out.println(s.nextInt()); System.out.println(s.next()); System.out.println(s.next()); // 打開文件之后切記要關(guān)閉 s.close();
完整代碼示例:
public static void main( String[] args ) { if(args!=null){ println("命令行參數(shù):"); for(String s:args){ println(s); } } Scanner input = new Scanner(System.in); print( "input x exist。" ); String str = null ; do{ println(""); print(":"); str = input.next(); System.out.println("您輸入的是:"+str); }while(!"x".equalsIgnoreCase(str)); System.out.println("你輸入了"x",程序已經(jīng)退出!"); input.close(); // 關(guān)閉資源 } public static void println(String msg){ System.out.println( msg ); } public static void print(String msg){ System.out.print( msg ); }