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

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

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

更新時間:2022-06-09 11:15:42 來源:動力節(jié)點 瀏覽1325次

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

1.使用緩沖閱讀器類

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

輸入被緩沖以實現(xiàn)高效讀取。

包裝代碼很難記住。

執(zhí)行:

// 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);
	}
}

輸入:

動力節(jié)點

輸出:

輔助空間:O(1)

動力節(jié)點

2.使用 Scanner 類

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

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

正則表達(dá)式可用于查找標(biāo)記。

閱讀方式不同步

// 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
您輸入了整數(shù) 12
你輸入了 float 3.4

3.使用控制臺類

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

優(yōu)點:

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

讀取方法是同步的。

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

不適用于非交互環(huán)境(例如 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.使用命令行參數(shù)

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

代碼:

// 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.");
	}
}

命令行參數(shù):

javac GFG1.java
java Main Hello World

輸出:

命令行參數(shù)是:
你好
世界

 

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 麻豆成人在线 | 久久香蕉国产线看观看精品yw | 夜夜爱夜夜做 | 日韩在线欧美高清一区 | 男人草女人视频 | 狠狠干天天爽 | 性欧美成人依依影院 | 欧美性视频在线激情 | 国产欧美日韩综合二区三区 | 国产精品白丝喷水在线观看 | 国产片欧美片亚洲片久久综合 | 欧美国产精品亚洲精品第一区 | 伊人久久大香 | 色综合久久一区二区三区 | 久草小区二区三区四区网页 | 四虎精品在线 | 热99这里只有精品 | 四虎国产成人永久精品免费 | 在线免费一区二区 | 在线观看精品国语偷拍 | 色偷偷久久一区二区三区 | 不卡猪 | 神马影院不卡不卡在线观看 | 成人私人影院www片免费高清 | 欧美xxx网站 | 国产精品视频永久免费播放 | 亚洲精品国产第一区二区图片 | 2021国产精品自产拍在线观看 | 色综久久天天综合绕视看 | 四虎影视在线永久免费观看 | 国产一级免费在线观看 | 日本不卡二 | 国产91在线 | 亚洲 | 亚洲一区二区三区四区热压胶 | 四虎在线免费观看 | 久久国产精品只做精品 | 最新国产精品亚洲 | 四虎三级| 国产精品久久新婚兰兰 | 日本在线精品视频 | 国产美女色视频 |