国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Java中 Scanner和BufferedReader的區別

mushang / 3635人閱讀

摘要:它本質上是使用正則表達式去讀取不同的數據類型。類為了能夠高效的讀取字符序列,從字符輸入流和字符緩沖區讀取文本。用和兩種方式實現以下場景用命令行輸入一個數字,如果輸出小于的所以質數,包括自己。

java.util.Scanner類是一個簡單的文本掃描類,它可以解析基本數據類型和字符串。它本質上是使用正則表達式去讀取不同的數據類型。

java.io.BufferedReader類為了能夠高效的讀取字符序列,從字符輸入流和字符緩沖區讀取文本。

用Scanner和BufferedReader兩種方式實現以下場景:
用命令行輸入一個數字m,如果m >1 輸出小于m的所以質數,包括m自己。

Scanner 例子:

package sjtejcys;

import java.util.Scanner;

public class Primes {
    public static void main(String[] args) {
        System.out.println("請輸入一個數字:");
        Scanner sc = new Scanner(System.in);
        int m = sc.nextInt();
        if(m>1){
            if(m ==2)
                System.out.println(m);
            else 
            {
                int j = 0;
                System.out.println(2);
                for(int i = 3;i<=m;i++){
                    for(j =2;j

BufferedReader 例子:

package sjtejcys;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class PrimesBF {
    public static void main(String[] args) {
        try {
            System.out.println("請輸入一個數字:");
            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
            String str = null;
            while ((str = br.readLine()) != null) {
                int m = Integer.parseInt(str);
                if (m > 1) {
                    if (m == 2)
                        System.out.println(m);
                    else {
                        int j = 0;
                        System.out.println(2);
                        for (int i = 3; i <= m; i++) {
                            for (j = 2; j < m; j++)
                                if (i % j == 0)
                                    break;
                            if (j == i)
                                System.out.println(i);
                        }
                    }
                }
            }

            br.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

簡單來說:
BufferedReader 是先把數據讀到緩存區然后在寫到硬盤里
Scanner是直接往硬盤些數據
BufferedReader 的效率比Scanner高

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/66766.html

相關文章

  • javasocket

    摘要:服務器端線程實現首先將服務器獨立成一個線程服務器線程接受客戶端連接請求在構造函數中我們初始化服務器的,然后等待客戶端的連接。 這次在java實驗的時候,要求使用server socket編寫服務器和客戶端的網絡通信。最開始認為應該是挺簡單的,但是后來發現低估了它。出現了不少的問題,所以也在這里與大家分享。 問題描述 服務器程序的處理規則如下:1) 向客戶端程序發送Verifying S...

    Ajian 評論0 收藏0
  • Java? 教程(掃描)

    掃描 編程I/O通常涉及轉換人們喜歡使用的整齊格式的數據,為了幫助你完成這些工作,Java平臺提供了兩個API,掃描器API將輸入分解為與數據位相關聯的單個標記,格式化API將數據組裝成格式良好、可讀的形式。 Scanner類型的對象對于將格式化輸入分解為標記并根據其數據類型轉換單個標記非常有用。 將輸入分解為標記 默認情況下,掃描器使用空格分隔標記(空格字符包括空格、制表符和行終止符,有關完整列...

    dantezhao 評論0 收藏0
  • 《十萬字Java入門練習100例》1-10例——紙上得來終覺淺,絕知此事要躬行

    摘要:代碼實現在控制臺打印總結本篇文章帶大家搭好環境,并體驗了控制臺打印。輸出結果總結熟練掌握取余和整除運算,大有作用。終止本次循環,繼續執行下一次循環。 ?本文收錄...

    keithyau 評論0 收藏0
  • Java基礎知識整理

    摘要:有兩個重要的子類異常和錯誤,二者都是異常處理的重要子類,各自都包含大量子類。錯誤是程序無法處理的錯誤,表示運行應用程序中較嚴重問題。異常由虛擬機拋出。迭代器通常被稱為輕量級對象,因為創建它的代價小。 面向對象和面向過程的區別 面向過程 優點: 性能比面向對象高,因為類調用時需要實例化,開銷比較大,比較消耗資源;比如單片機、嵌入式開發、Linux/Unix等一般采用面向過程開發,性能是...

    hankkin 評論0 收藏0
  • Java 輸入/輸出 I/O流 RandomAccessFile

    摘要:當使用節點流進行輸入輸出時,程序直接連接到實際的數據源,和時間的輸入輸出節點連接處理流則用于對一個已存在的流進行連接或封裝,通過封裝后的流來實現數據讀寫功能,處理流也被稱為高級流。 文件的編碼 文本文件就是字節序列,可以是任意編碼形式。在中文操作系統上直接創建文本文件,則該文本文件只能識別ANSI編碼,其他編碼方式會產生亂碼 package imooc.io; import java...

    Eirunye 評論0 收藏0

發表評論

0條評論

mushang

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<