Java使用者輸入
在Java程式中,我們可以透過3種方式在命令列環境下讀取使用者的輸入來取得使用者輸入,Java BufferedReader類別、Java Scanner類別和Console類別。讓我們詳細討論一下課程。我們使用 Scanner 類別來取得使用者輸入。程式要求使用者輸入一個整數、一個字串和浮點數,然後將其列印在顯示器上。 java.util 中存在掃描器類,因此我們可以將此套件新增到我們的軟體中。首先,我們建立一個 Scanner 類別物件並使用 Scanner 類別方法。
Java 使用者輸入的 3 種方式
可以透過三種方式讀取使用者輸入:
廣告 該類別中的熱門課程 JAVA 掌握 - 專業化 | 78 課程系列 | 15 次模擬測驗開始您的免費軟體開發課程
網頁開發、程式語言、軟體測試及其他
- Java BufferedReader 類別
- Java 掃描器類別
- 使用控制台類別
這三個類別在下面提到;讓我們詳細討論它們:
1. Java BufferedReader 類別
它擴展了讀者類別。 BufferedReader 從字符輸入流讀取輸入並緩衝字符,以便有效率地讀取所有輸入。預設大小較大,適合緩衝。當使用者發出任何讀取請求時,相應的請求就會傳送給讀取器,讀取器發出字元或位元組流的讀取請求;因此,BufferedReader 類別會包裝在另一個輸入流(例如FileReader 或InputStreamReaders)周圍。
例如:
BufferedReader reader = new BufferedReader(new FileReader("foo.in"));
BufferedReader 可以使用 readLine() 方法逐行讀取資料。
BufferedReader 可以讓程式碼的效能更快。
建構子
BufferedReader 有兩個建構函數,如下:
1。 BufferedReader(Reader reader):用於建立使用輸入緩衝區預設大小的緩衝輸入字元流。
2。 BufferedReader(Reader reader, input size):用於建立緩衝輸入字元流,該流使用為輸入緩衝區提供的大小。
功能
- int read:用於讀取單一字元。
- int read(char[] cbuffer, int offset, int length): 用來讀取陣列指定部份的字元。
- String readLine (): 用於逐行讀取輸入。
- boolean ready(): 用於測試輸入緩衝區是否已準備好讀取。
- 長跳過:用於跳過字元。
- void close():它關閉輸入流緩衝區和與此流關聯的系統資源。
當使用者從鍵盤輸入字元時,它會被裝置緩衝區讀取,然後從 System.in 傳遞到緩衝讀取器或輸入流讀取器並儲存在輸入緩衝區中。
代碼:
import java.util.*; import java.lang.*; import java.io.*; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /*package whatever //do not write package name here */ class BufferedReaderDemo { public static void main (String[] args) throws NumberFormatException, IOException { System.out.println("Enter your number"); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int t = Integer.parseInt(br.readLine()); System.out.println("Number you entered is: " + t); System.out.println("Enter your string"); String s = br.readLine(); System.out.println("String you entered is: " + s); } }
輸出:
從InputStreamReader和BufferedReader讀取的程式:
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class BufferedReaderDemo { public static void main(String args[]) throws IOException{ InputStreamReader reader = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(reader); System.out.println("What is your name?"); String name=br.readLine(); System.out.println("Welcome "+name); } }
輸出:
2. Java 掃描器類別
java.util。 Scanner 類別是用於從鍵盤讀取使用者輸入的類別之一。它可以在 util 包中找到。掃描器類別使用預設主要是空格的分隔符號來中斷使用者輸入。掃描器有很多方法可以讀取許多基本類型的控制台輸入,例如 double、int、float、long、Boolean、short、byte 等。這是 java 中獲取輸入的最簡單的方法。 Scanner 類別實作 Iterator 和 Closeable 介面。掃描器提供了 nextInt() 和許多原始類型方法來讀取原始類型的輸入。 next() 方法用於字串輸入。
Constructors
- Scanner(File source): It constructs a scanner to read from a specified file.
- Scanner(File source, String charsetName): It constructs a scanner to read from a specified file.
- Scanner(InputStream source), Scanner(InputStream source, String charsetName): It constructs a scanner to read from a specified input stream.
- Scanner(0Readable source): It constructs a scanner to read from a specified readable source.
- Scanner(String source): It constructs a scanner to read from a specified string source.
- Scanner(ReadableByteChannel source): It constructs a scanner to read from a specified channel source.
- Scanner(ReadableByteChannel source, String charsetName): It constructs a scanner to read from a specified channel source.
Functions
Below are mentioned the method to scan the primitive types from console input through Scanner class.
- nextInt(),
- nextFloat(),
- nectDouble(),
- nextLong(),
- nextShort(),
- nextBoolean(),
- nextDouble(),
- nextByte(),
Program to read from Scanner Class:
Using scanner class. import java.util.Scanner; /*package whatever //do not write package name here */ class ScannerDemo { public static void main (String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter your number"); int t = sc.nextInt(); System.out.println("Number you entered is: " + t); System.out.println("Enter your string"); String s = sc.next(); System.out.println("String you entered is: " + s); } }
Output:
3. Using console Class
Using the console class to read the input from the command-line interface. It does not work on IDE.
Code:
public class Main { public static void main(String[] args) { // Using Console to input data from user System.out.println("Enter your data"); String name = System.console().readLine(); System.out.println("You entered: "+name); } }
Output:
以上是Java使用者輸入的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。

Java 8引入了Stream API,提供了一種強大且表達力豐富的處理數據集合的方式。然而,使用Stream時,一個常見問題是:如何從forEach操作中中斷或返回? 傳統循環允許提前中斷或返回,但Stream的forEach方法並不直接支持這種方式。本文將解釋原因,並探討在Stream處理系統中實現提前終止的替代方法。 延伸閱讀: Java Stream API改進 理解Stream forEach forEach方法是一個終端操作,它對Stream中的每個元素執行一個操作。它的設計意圖是處

PHP適合web開發,特別是在快速開發和處理動態內容方面表現出色,但不擅長數據科學和企業級應用。與Python相比,PHP在web開發中更具優勢,但在數據科學領域不如Python;與Java相比,PHP在企業級應用中表現較差,但在web開發中更靈活;與JavaScript相比,PHP在後端開發中更簡潔,但在前端開發中不如JavaScript。

PHP和Python各有優勢,適合不同場景。 1.PHP適用於web開發,提供內置web服務器和豐富函數庫。 2.Python適合數據科學和機器學習,語法簡潔且有強大標準庫。選擇時應根據項目需求決定。

PHPhassignificantlyimpactedwebdevelopmentandextendsbeyondit.1)ItpowersmajorplatformslikeWordPressandexcelsindatabaseinteractions.2)PHP'sadaptabilityallowsittoscaleforlargeapplicationsusingframeworkslikeLaravel.3)Beyondweb,PHPisusedincommand-linescrip

PHP成為許多網站首選技術棧的原因包括其易用性、強大社區支持和廣泛應用。 1)易於學習和使用,適合初學者。 2)擁有龐大的開發者社區,資源豐富。 3)廣泛應用於WordPress、Drupal等平台。 4)與Web服務器緊密集成,簡化開發部署。

PHP適用於Web開發和內容管理系統,Python適合數據科學、機器學習和自動化腳本。 1.PHP在構建快速、可擴展的網站和應用程序方面表現出色,常用於WordPress等CMS。 2.Python在數據科學和機器學習領域表現卓越,擁有豐富的庫如NumPy和TensorFlow。
