从控制台读取Java字符串
时间:2020-02-23 14:36:47 来源:igfitidea点击:
今天,我们将研究从Java中的控制台读取字符串的不同方法。
从控制台读取Java字符串
我们可以使用以下类从控制台读取输入。
- 缓冲读取器
- 扫描器
使用BufferedReader从控制台读取Java字符串
BufferedReader类来自Java IO包。
我们可以使用BufferedReader从字符输入流中读取文本。
下面是一个简单的程序,可从控制台读取字符串数据并以小写形式打印。
package com.theitroad.examples;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class JavaReadFromConsoleBufferedReader {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter Input String:");
String input = br.readLine();
br.close();
System.out.println("Input String in Lower Case = " + new String(input).toLowerCase());
}
}
下面是上述程序的一个示例运行所产生的输出。
Enter Input String: Java Developer Input String in Lower Case = java developer
使用扫描仪从控制台读取Java
如果您注意到上面的代码,则BufferedReader并不灵活,并且选项非常有限。
我们只能将输入数据读取为String。
因此,Java 1.5中引入了Scanner类,以便可以从控制台中读取许多选项。
我们可以使用Scanner类将String,原始数据类型(如int,long等)读取为String。
我们还可以读取不同基数的输入数字(如二进制)并将其读取为整数。
让我们看一下如何使用Scanner类从控制台读取输入数据。
package com.theitroad.examples;
import java.util.Scanner;
public class JavaReadStringFromConsoleScanner {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Please enter a String:");
String input = sc.nextLine();
System.out.println("Input String in Upper Case = " + input.toUpperCase());
System.out.println("Please enter a integer in Binary Format:");
int i = sc.nextInt(2);
System.out.println("Number in Decimal = " + i);
sc.close();
}
}
下面是上述程序在执行时产生的输出,并且在Console中提供了输入。
Please enter a String: Java Read String using Scanner Class Input String in Upper Case = JAVA READ STRING USING SCANNER CLASS Please enter a integer in Binary Format: 110110 Number in Decimal = 54

