未知數據

          從頭看Java

             ::  :: 聯系 :: 聚合  :: 管理
            28 Posts :: 0 Stories :: 10 Comments :: 0 Trackbacks

          1. Scanner是jdk1.5新增的工具類,jdk1.4以前使用字符流來實現
          2. Scanner可以方便的獲取用戶的鍵盤輸入
          3. Scanner是一個基于正則表達式的文本掃描器,可以從文件,輸入流,字符串中解析出基本類型值和字符串值.
          4. Scanner主要使用兩個方法來掃描輸入
          hasNextXxx():是否還有下一個輸入項.如果是字符串可以省略XXX
          nexXXX():獲取下一個輸入項.
          5. Scanner默認使用空白(包括空格,tab空白和回車等)作為多個輸入項之間的分隔符.可以使用useDelimiter()修改分隔符.   

          代碼清單:

          import java.io.BufferedReader;
          import java.io.File;
          import java.io.InputStreamReader;
          import java.util.Scanner;
           
          public class ScannerTest {
              
              public static Scanner sc = null;
              
              // scanner是jdk1.5的工具類,在1.4中使用字符包裝流(BufferedReader)來讀取鍵盤輸入
              // System.in是字節流,InputStreamReader是轉換流
              // 與scanner的區別是,bufferedReader只能讀取String對象,不能讀取其他基本類型的輸入項
              public static void fromKey0() throws Exception {
                  BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
                  while (br.readLine() != null) {
                      System.out.println("鍵盤輸入的內容:"+br.readLine());
                  }
              }
              
              // 從鍵盤輸入int,只會獲取鍵盤輸入的int類型,其他的類型不會打印
              public static void fromKeyInt() {
                  sc = new Scanner(System.in);
                  while (sc.hasNextInt()) {
                      System.out.println("鍵盤輸入的內容:"+sc.nextInt());
                  }
              }
           
              // 從鍵盤輸入的內容,將空格等空白視為輸入項的分隔符
              public static void fromKey() {
                  sc = new Scanner(System.in);
                  while (sc.hasNext()) {
                      System.out.println("鍵盤輸入的內容:"+sc.next());
                  }
              }
              
              // 修改分隔符為"\n",這樣除非輸入回車換行,否則會當作一個輸入項來處理
              public static void fromKey1() {
                  sc = new Scanner(System.in);
                  sc.useDelimiter("\n");
                  while (sc.hasNext()) {
                      System.out.println("鍵盤輸入的內容:"+sc.next());
                  }
              }
              
              // 同樣的,scanner也可以從文件中讀取內容,nextLine()可以每次讀取一行,和上面設置分隔符為"\n"是同樣的效果
              public static void fromFile() throws Exception {
                  sc = new Scanner(new File("c:\\bcmwl5.log"));
                  while (sc.hasNextLine()) {
                      System.out.println("文件中的內容:"+sc.nextLine());
                  }
              }
              
              public static void main(String[] args) throws Exception{
                  
                  
                  fromKeyInt();
                  //fromFile();
                  //fromKey();
                  //fromKey1();
           
              }
           
          }
          posted on 2009-02-03 08:50 wangjc 閱讀(3003) 評論(0)  編輯  收藏 所屬分類: 從頭看Java
          主站蜘蛛池模板: 泸西县| 德化县| 龙南县| 甘洛县| 敦化市| 那曲县| 达拉特旗| 临漳县| 壶关县| 原平市| 上饶县| 丹凤县| 额尔古纳市| 望江县| 宜兴市| 塔城市| 西青区| 铅山县| 乐山市| 肇庆市| 通海县| 赤水市| 阳江市| 贵溪市| 原平市| 咸阳市| 景德镇市| 阳城县| 乐至县| 黄山市| 策勒县| 怀宁县| 西宁市| 松江区| 永城市| 中牟县| 自贡市| 綦江县| 新竹县| 张家川| 湾仔区|