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

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

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

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

在 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

輸出:

命令行參數是:
你好
世界

 

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产小视频在线观看 | 亚洲日本va中文字幕在线不卡 | 九九热免费 | 国产精品一区二区三区免费视频 | 欧美同房免姿势108费视频 | 狠狠色丁香婷婷综合久久来 | 欧美专区亚洲专区 | 国产剧情一区二区 | 国产精品一级香蕉一区 | a毛片在线还看免费网站 | 91手机在线视频 | 五月一区二区久久综合天堂 | 日韩欧美一二三 | 深夜男人网站 | 亚洲涩福利高清在线 | 久久国产精品男女热播 | 3d动漫精品成人一区二区三 | 日日操美女| 成人国产精品 | 午夜免费体验 | 91福利视频网站 | 欧美日韩视频精品一区二区 | 四虎成人影院网址 | 欧美高清一区二区 | 成人性生交大片免费看午夜a | 日本亚洲成高清一区二区三区 | 国产成人青青热久免费精品 | 九色国产在视频线精品视频 | 欧美一级爆毛片 | 久久大香伊蕉在人线国产昨爱 | 日日操夜夜爱 | 夜色福利久久久久久777777 | 婷婷色在线 | 在线成人免费观看国产精品 | 欧美成人精品在线 | 国产性较精品视频免费 | 色综合天 | 宅男看片午夜大片啪啪mv | www黄在线观看 | 国内外一级毛片 | 永久黄网站色视频免费观看 |