大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 小白必看:Java怎么從控制臺輸入

小白必看:Java怎么從控制臺輸入

更新時間:2022-06-09 11:15:42 來源:動力節點 瀏覽1394次

在 Java 中,有四種不同的方式可以在命令行環境(控制臺)中讀取用戶的輸入。

1.使用緩沖閱讀器類

這是Java經典的取輸入方式,在JDK1.0中引入。此方法通過將 System.in(標準輸入流)包裝在 InputStreamReader 中來使用,InputStreamReader 包裝在 BufferedReader 中,我們可以在命令行中讀取用戶的輸入。

輸入被緩沖以實現高效讀取。

包裝代碼很難記住。

執行:

// Java program to demonstrate BufferedReader
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Test {
	public static void main(String[] args)
		throws IOException
	{
		// Enter data using BufferReader
		BufferedReader reader = new BufferedReader(
			new InputStreamReader(System.in));
		// Reading data using readLine
		String name = reader.readLine();
		// Printing the read line
		System.out.println(name);
	}
}

輸入:

動力節點

輸出:

輔助空間:O(1)

動力節點

2.使用 Scanner 類

這可能是接受輸入的最首選方法。Scanner 類的主要目的是使用正則表達式解析原始類型和字符串,但是,它也可用于在命令行中讀取用戶的輸入。

從標記化輸入中解析基元(nextInt()、nextFloat()、...)的便捷方法。

正則表達式可用于查找標記。

閱讀方式不同步

// Java program to demonstrate working of Scanner in Java
import java.util.Scanner;
class GetInputFromUser {
	public static void main(String args[])
	{
		// Using Scanner for Getting Input from User
		Scanner in = new Scanner(System.in);
		String s = in.nextLine();
		System.out.println("You entered string " + s);
		int a = in.nextInt();
		System.out.println("You entered integer " + a);
		float b = in.nextFloat();
		System.out.println("You entered float " + b);
	}
}

輸入:

GeeksforGeeks
12
3.4

輸出:

您輸入了字符串 GeeksforGeeks
您輸入了整數 12
你輸入了 float 3.4

3.使用控制臺類

它已成為從命令行讀取用戶輸入的首選方式。此外,它可以用于讀取類似密碼的輸入,而不用回顯用戶輸入的字符;也可以使用格式字符串語法(如 System.out.printf())。

優點:

讀取密碼而不回顯輸入的字符。

讀取方法是同步的。

可以使用格式字符串語法。

不適用于非交互環境(例如 IDE)。

// Java program to demonstrate working of System.console()
// Note that this program does not work on IDEs as
// System.console() may require console
public class Sample {
	public static void main(String[] args)
	{
		// Using Console to input data from user
		String name = System.console().readLine();
		System.out.println("You entered string " + name);
	}
}

輸入:

GeeksforGeeks

輸出:

您輸入了字符串 GeeksforGeeks

4.使用命令行參數

最常用于競爭性編碼的用戶輸入。命令行參數以字符串格式存儲。Integer 類的 parseInt 方法將字符串參數轉換為 Integer。同樣,對于執行期間的浮動和其他。args[] 的用法出現在這種輸入形式中。信息的傳遞發生在程序運行期間。命令行提供給 args[]。這些程序必須在 cmd 上運行。

代碼:

// Program to check for command line arguments
class Hello {
	public static void main(String[] args)
	{
		// check if length of args array is
		// greater than 0
		if (args.length > 0) {
			System.out.println(
				"The command line arguments are:");
			// iterating the args array and printing
			// the command line arguments
			for (String val : args)
				System.out.println(val);
		}
		else
			System.out.println("No command line "
							+ "arguments found.");
	}
}

命令行參數:

javac GFG1.java
java Main Hello World

輸出:

命令行參數是:
你好
世界

 

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲精品在线视频观看 | 欧美色精品天天在线观看视频 | 视色tv| 国产精品亚洲第五区在线 | 四虎1515hhwocw| 国产在线不卡视频 | 亚洲欧美自拍一区 | 一区二区三区四区五区 | 亚洲精品亚洲一区二区 | 国产系列 视频二区 | 一级视频片 | 欧美一级网址 | 国产精品免费播放 | 国产成人免费网站在线观看 | 九九视频只有精品六 | 日本视频a| 国产精久久一区二区三区 | 国产福利午夜 | 四虎影视免费永久在线观看 | 99热免费观看 | 成人精品亚洲 | 久久精品阿娇 | 91chinese 永久免费 | 国产成人精品无缓存在线播放 | 四虎影院海外永久 | 久久99在线| 中文字幕在线精品不卡 | 日韩a一级欧美一级 | 欧美日本一本线在线观看 | 五月激激激综合网色播免费 | 视频在线成人 | 亚洲欧美日韩国产精品一区 | 国产美女亚洲精品久久久毛片 | 亚洲国产美女视频 | 免费观看国产网址你懂的 | 变态捡到女婴h养成调教 | 狠狠色噜噜狠狠狠合久 | 九九视频精品在线 | 国产最新一区二区三区天堂 | 久久国产热视频 | 九九99热久久精品在线6手机 |