Scanner scanner = new Scanner (System.in);
System.out.print("Enter your name");
name = scanner.next(); // Get what the user types.
43
最简单的方法之一是使用 Scanner 对象,如下所示:
import java.util.Scanner;
Scanner reader = new Scanner(System.in); // Reading from System.in
System.out.println("Enter a number: ");
int n = reader.nextInt(); // Scans the next token of the input as an int.
//once finished
reader.close();
1
您可以根据要求使用以下任何选项 .
扫描仪类
import java.util.Scanner;
Scanner scan = new Scanner(System.in);
String s = scan.next();
int i = scan.nextInt();
BufferedReader和InputStreamReader类
import java.io.BufferedReader;
import java.io.InputStreamReader;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = br.readLine();
int i = Integer.parseInt(br.readLine());
DataInputStream类
import java.io.DataInputStream;
DataInputStream dis = new DataInputStream(System.in);
int i = dis.readInt();
Scanner input = new Scanner(System.in);
System.out.println("Please enter your name : ");
s = input.next(); // getting a String value
System.out.println("Please enter your age : ");
i = input.nextInt(); // getting an integer
System.out.println("Please enter your salary : ");
d = input.nextDouble(); // getting a double
看看它有何不同: input.next(); , i = input.nextInt(); , d = input.nextDouble();
import java.util.Scanner;
public class PrintNumber {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num = 0;
int sum = 0;
System.out.println(
"Please enter a number to show its digits");
num = scan.nextInt();
System.out.println(
"Here are the digits and the sum of the digits");
while (num > 0) {
System.out.println("==>" + num % 10);
sum += num % 10;
num = num / 10;
}
System.out.println("Sum is " + sum);
}
}
InputStreamReader inp = new InputStreamReader(system.in);
BufferedReader br = new BufferedReader(inp);
3
以下是使用 java.util.Scanner 的问题的程序:
import java.util.Scanner;
public class Example {
public static void main(String[] args) {
int input = 0;
System.out.println("The super insano calculator");
System.out.println("enter the corrosponding number:");
Scanner reader3 = new Scanner(System.in);
System.out.println(
"1. Add | 2. Subtract | 3. Divide | 4. Multiply");
input = reader3.nextInt();
int a = 0, b = 0;
Scanner reader = new Scanner(System.in);
System.out.println("Enter the first number");
// get user input for a
a = reader.nextInt();
Scanner reader1 = new Scanner(System.in);
System.out.println("Enter the scend number");
// get user input for b
b = reader1.nextInt();
switch (input){
case 1: System.out.println(a + " + " + b + " = " + add(a, b));
break;
case 2: System.out.println(a + " - " + b + " = " + subtract(a, b));
break;
case 3: System.out.println(a + " / " + b + " = " + divide(a, b));
break;
case 4: System.out.println(a + " * " + b + " = " + multiply(a, b));
break;
default: System.out.println("your input is invalid!");
break;
}
}
static int add(int lhs, int rhs) { return lhs + rhs; }
static int subtract(int lhs, int rhs) { return lhs - rhs; }
static int divide(int lhs, int rhs) { return lhs / rhs; }
static int multiply(int lhs, int rhs) { return lhs * rhs; }
}
1
只是一个额外的细节 . 如果您不想冒内存/资源泄漏的风险,则应在完成后关闭扫描程序流:
myScanner.close();
请注意,java 1.7及更高版本将此作为编译警告(不要问我怎么知道:-)
-1
import java.util.Scanner;
class Daytwo{
public static void main(String[] args){
System.out.println("HelloWorld");
Scanner reader = new Scanner(System.in);
System.out.println("Enter the number ");
int n = reader.nextInt();
System.out.println("You entered " + n);
}
}
3
Scanner input=new Scanner(System.in);
int integer=input.nextInt();
String string=input.next();
long longInteger=input.nextLong();
2
Scanner input = new Scanner(System.in);
String inputval = input.next();
289
在 main() 旁边添加 throws IOException ,然后
DataInputStream input = new DataInputStream(System.in);
System.out.print("Enter your name");
String name = input.readLine();
8
在java中获取输入非常简单,您所要做的就是:
import java.util.Scanner;
class GetInputFromUser
{
public static void main(String args[])
{
int a;
float b;
String s;
Scanner in = new Scanner(System.in);
System.out.println("Enter a string");
s = in.nextLine();
System.out.println("You entered string " + s);
System.out.println("Enter an integer");
a = in.nextInt();
System.out.println("You entered integer " + a);
System.out.println("Enter a float");
b = in.nextFloat();
System.out.println("You entered float " + b);
}
}
3
import java.util.Scanner;
public class Myapplication{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
int a;
System.out.println("enter:");
a = in.nextInt();
System.out.println("Number is= " + a);
}
}
2
你可以使用BufferedReader获得这样的用户输入:
InputStreamReader inp = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(inp);
// you will need to import these things.
这就是你应用它们的方式
String name = br.readline();
因此,当用户在控制台中输入他的名字时,“String name”将存储该信息 .
如果它是您要存储的数字,代码将如下所示:
int x = Integer.parseInt(br.readLine());
跳这有帮助!
-1
可以是这样的......
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
System.out.println("Enter a number: ");
int i = reader.nextInt();
for (int j = 0; j < i; j++)
System.out.println("I love java");
}
package inputTest;
import java.util.Scanner;
import java.util.InputMismatchException;
public class InputTest {
public static void main(String args[]) {
Scanner reader = new Scanner(System.in);
System.out.println("Please enter integers. Type 0 to exit.");
boolean done = false;
while (!done) {
System.out.print("Enter an integer: ");
try {
int n = reader.nextInt();
if (n == 0) {
done = true;
}
else {
// do something with the input
System.out.println("\tThe number entered was: " + n);
}
}
catch (InputMismatchException e) {
System.out.println("\tInvalid input type (must be an integer)");
reader.nextLine(); // Clear invalid input from scanner buffer.
}
}
System.out.println("Exiting...");
reader.close();
}
}
Example
Please enter integers. Type 0 to exit.
Enter an integer: 12
The number entered was: 12
Enter an integer: -56
The number entered was: -56
Enter an integer: 4.2
Invalid input type (must be an integer)
Enter an integer: but i hate integers
Invalid input type (must be an integer)
Enter an integer: 3
The number entered was: 3
Enter an integer: 0
Exiting...
请注意,如果没有 nextLine() ,错误输入将在无限循环中重复触发相同的异常 . 您可能希望根据具体情况使用 next() ,但要知道像 this has spaces 这样的输入会产生多个异常 .
5
import java.util.Scanner;
public class userinput {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Name : ");
String name = input.next();
System.out.print("Last Name : ");
String lname = input.next();
System.out.print("Age : ");
byte age = input.nextByte();
System.out.println(" " );
System.out.println(" " );
System.out.println("Firt Name: " + name);
System.out.println("Last Name: " + lname);
System.out.println(" Age: " + age);
}
}
3
class ex1 {
public static void main(String args[]){
int a, b, c;
a = Integer.parseInt(args[0]);
b = Integer.parseInt(args[1]);
c = a + b;
System.out.println("c = " + c);
}
}
// Output
javac ex1.java
java ex1 10 20
c = 30
24 回答
您可以使用Scanner类或Console类
您可以使用BufferedReader获取用户输入 .
它将在
accStr
中存储String
值,因此您必须使用Integer.parseInt将其解析为int
.以下是如何获得键盘输入:
最简单的方法之一是使用
Scanner
对象,如下所示:您可以根据要求使用以下任何选项 .
扫描仪类
BufferedReader和InputStreamReader类
DataInputStream类
DataInputStream
类中的readLine
方法已被弃用 . 要获取String值,您应该使用以前的BufferedReader解决方案控制台类
显然,这种方法在某些IDE中不能很好地工作 .
您可以创建一个简单的程序来询问用户的姓名并打印回复使用输入的内容 .
或者要求用户输入两个数字,您可以添加,乘法,减去或除以这些数字,并打印用户输入的答案,就像计算器的行为一样 .
所以你需要Scanner类 . 您必须
import java.util.Scanner;
并在您需要使用的代码中输入是变量名称 .
看看它有何不同:
input.next();
,i = input.nextInt();
,d = input.nextDouble();
根据String,int和double对其余部分采用相同的方式 . 不要忘记代码顶部的import语句 .
另请参阅博客文章"Scanner class and getting User Inputs" .
这里,程序要求用户输入一个数字 . 之后,程序打印数字的数字和数字的总和 .
要读取行或字符串,可以使用
BufferedReader
对象和InputStreamReader
对象,如下所示:使用
System
类来获取输入 .http://fresh2refresh.com/java-tutorial/java-input-output/:
以下是使用
java.util.Scanner
的问题的程序:只是一个额外的细节 . 如果您不想冒内存/资源泄漏的风险,则应在完成后关闭扫描程序流:
请注意,java 1.7及更高版本将此作为编译警告(不要问我怎么知道:-)
在
main()
旁边添加throws IOException
,然后在java中获取输入非常简单,您所要做的就是:
你可以使用BufferedReader获得这样的用户输入:
这就是你应用它们的方式
因此,当用户在控制台中输入他的名字时,“String name”将存储该信息 .
如果它是您要存储的数字,代码将如下所示:
跳这有帮助!
可以是这样的......
这是一个使用
System.in.read()
函数的简单代码 . 这段代码只写出输入的内容 . 如果您只想输入一次,则可以摆脱while循环,如果您愿意,可以将答案存储在字符数组中 .我喜欢以下内容:
例如,我会这样做:
以下是已接受答案的更加发达的版本,它解决了两个常见需求:
重复收集用户输入,直到输入退出值
处理无效的输入值(本例中为非整数)
Code
Example
请注意,如果没有
nextLine()
,错误输入将在无限循环中重复触发相同的异常 . 您可能希望根据具体情况使用next()
,但要知道像this has spaces
这样的输入会产生多个异常 .