欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java獲取控制臺輸入的兩種方法小結(jié)

 更新時間:2022年11月19日 08:45:20   作者:我想脫離小碼農(nóng)  
這篇文章主要介紹了Java獲取控制臺輸入的兩種方法小結(jié),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Java獲取控制臺輸入的方法

在學(xué)習(xí)網(wǎng)絡(luò)編程中,有需要從控制臺輸入數(shù)據(jù),進(jìn)行兩個線程之間的通信,其中,涉及到了讀取控制臺輸入的兩種不同的操作,筆者在這里進(jìn)行記錄,以供大家分享。

方法一、InputStreamReader

  • 本身只能單個字符地讀取數(shù)據(jù)
  • 通過BufferedStreamReader包裝后,存在緩存,支持整行整行地讀取數(shù)據(jù)
  • 只能讀取字符/字符串,如想獲取其他類型的數(shù)據(jù),仍需要進(jìn)行類型轉(zhuǎn)換

檢測實(shí)例如下:

? ? public static User getUser2() throws IOException {
? ? ? ? BufferedReader br = new
? ? ? ? ? ? ? ? BufferedReader(new InputStreamReader(System.in));
? ? ? ? System.out.println("請輸入賬號");
? ? ? ? String username = br.readLine();
? ? ? ? System.out.println("請輸入密碼");
? ? ? ? String password = br.readLine();
? ? ? ? br.close();
? ? ? ? return new User(username,password);
? ? }

方法二、Scanner

在獲取控制臺輸入的方法中,創(chuàng)建Scanner對象來獲取是最佳的方法,其有以下優(yōu)勢:

  • 可以獲取各種類型的數(shù)據(jù),如String、Int、Float等,且不需要進(jìn)行轉(zhuǎn)換
  • 支持諸多的文本掃描內(nèi)容,如hasNextLine()方法可以檢測是否存在下一行數(shù)據(jù)等

檢測實(shí)例如下:

? ? public static User getUser(){
? ? ? ? Scanner scanner = new Scanner(System.in);
? ? ? ? System.out.println("請輸入賬號");
? ? ? ? String username = scanner.nextLine();
? ? ? ? System.out.println("請輸入密碼");
? ? ? ? String password = scanner.nextLine();
? ? ? ? return new User(username,password);
? ? }

Java接收控制臺輸入

1.接收整數(shù)類型輸入

public static void main(String[] args) {
java.util.Scanner sc=new Scanner(System.in);
?? ??? ?System.out.println("請輸入將要計(jì)算階乘的整數(shù)n:");
?? ??? ?int n=sc.nextInt(); //接收整數(shù)類型輸入
?? ??? ?sc.close();
}

2.接收字符串類型輸入

public static void main(String[] args) {
?? ??? ?java.util.Scanner sc=new java.util.Scanner(System.in);
?? ??? ?System.out.println("請輸入需要判斷是否為十進(jìn)制的數(shù)字");
?? ??? ?String n=sc.nextLine();//接收字符串
?? ??? ?sc.close();
}

3.接收單個字符輸入

法一》直接獲取一個字符

?public static void main(String[] args) throws Exception //注意拋出異常?
{
?? ??? ?java.util.Scanner sc=new java.util.Scanner(System.in);
?? ??? ?System.out.println("請輸入一個字符:");
?? ??? ?
?? ??? ? char n=(char)System.in.read(); //直接獲取一個字符
? ? ? ? ?sc.close();
}

法二》先接收一個字符串,再接收其第一個字符

public static void main(String[] args) ?//注意 throws Exception可以不寫
{
?? ??? ?java.util.Scanner sc=new java.util.Scanner(System.in);
?? ??? ?System.out.println("請輸入一個字符:");
?? ??? ?char n=sc.next().charAt(0);//先從控制臺接收字符串,再接收它的第一個字符
?? ??? ?sc.close();
}

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java對象為null的問題解決

    Java對象為null的問題解決

    如果一個對象為空,但是此時我們調(diào)用它的方法,就會遇到NullPointerException問題,本文主要介紹了Java對象為null的問題解決,具有一定的參考價值,感興趣的可以了解一下
    2024-02-02
  • Spring入門到精通之注解開發(fā)詳解

    Spring入門到精通之注解開發(fā)詳解

    Spring是輕代碼而重配置的框架,配置比較繁重,影響開發(fā)效率,所以注解開發(fā)是一種趨勢。本文將通過示例為大家詳細(xì)講講Spring如何實(shí)現(xiàn)注解開發(fā),感興趣的可以學(xué)習(xí)一下
    2022-07-07
  • Java中鎖的分類與使用方法

    Java中鎖的分類與使用方法

    這篇文章主要給大家介紹了關(guān)于Java中鎖分類與使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Netty簡單的入門代碼示例

    Netty簡單的入門代碼示例

    這篇文章主要介紹了Netty簡單的入門代碼示例,Netty 的內(nèi)部實(shí)現(xiàn)是很復(fù)雜的,但是 Netty 提供了簡單易用的API從網(wǎng)絡(luò)處理代碼中解耦業(yè)務(wù)邏輯,Netty 是完全基于 NIO 實(shí)現(xiàn)的,所以整個 Netty 都是異步的,需要的朋友可以參考下
    2023-12-12
  • Java基礎(chǔ)之Thymeleaf的簡單使用

    Java基礎(chǔ)之Thymeleaf的簡單使用

    這篇文章主要介紹了Java基礎(chǔ)之Thymeleaf的簡單使用,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)java基礎(chǔ)的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • springboot關(guān)于容器啟動事件總結(jié)

    springboot關(guān)于容器啟動事件總結(jié)

    在本篇文章里小編給大家整理的是一篇關(guān)于springboot容器啟動事件相關(guān)知識點(diǎn),需要的朋友們學(xué)習(xí)下。
    2019-10-10
  • SpringBoot多種場景傳參模式

    SpringBoot多種場景傳參模式

    傳參是非常常見的,本文主要介紹了SpringBoot多種場景傳參模式,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • java自定義注解實(shí)現(xiàn)前后臺參數(shù)校驗(yàn)的實(shí)例

    java自定義注解實(shí)現(xiàn)前后臺參數(shù)校驗(yàn)的實(shí)例

    下面小編就為大家?guī)硪黄猨ava自定義注解實(shí)現(xiàn)前后臺參數(shù)校驗(yàn)的實(shí)例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • JAVA IO的3種類型區(qū)別解析

    JAVA IO的3種類型區(qū)別解析

    這篇文章主要介紹了JAVA IO的3種類型解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • SWT(JFace)體驗(yàn)之ProgressBar

    SWT(JFace)體驗(yàn)之ProgressBar

    SWT(JFace)體驗(yàn)之ProgressBar 實(shí)現(xiàn)代碼。
    2009-06-06

最新評論