十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
使用java的Scanner类,能够接受用户的输入(包括整数和字符串)。有如下用法:
创新互联专注于龙湖网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供龙湖营销型网站建设,龙湖网站制作、龙湖网页设计、龙湖网站官网定制、成都微信小程序服务,打造龙湖网络公司原创品牌,更为您提供龙湖网站排名全网营销落地服务。
1.用Scanner类封装system.in输入流;
2.用sc.hasNext()判断是否有内容,有则用sc.nextInt()取出整数。
如下代码供你学习一下:
/**
* @Title: ScannerInput.java
* @Package com.dusd.coding
* @Description: TODO
* @author Administrator
* @date 2015-6-29 上午9:38:28
* @version V1.0
*/
package com.dusd.coding;
import java.util.Scanner;
public class ScannerInput {
/**
* @Title: main
* @Description: TODO
* @author dusd
* @date 2015-6-29 上午9:38:28
* @param args
* @throws
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入值,以回车结束:");
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
//接受整数
int i = sc.nextInt();
System.out.println("获得整数:"+i);
}
}
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
* System.in 标准输入流。是从键盘获取数据的
*
* 键盘录入数据:
* A:main方法的args接收参数。
* java HelloWorld hello world java
* B:Scanner(JDK5以后的)
* Scanner sc = new Scanner(System.in);
* String s = sc.nextLine();
* int x = sc.nextInt()
* C:通过字符缓冲流包装标准输入流实现
* BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
*/
public class SystemInDemo {
public static void main(String[] args) throws IOException {
// //获取标准输入流
// InputStream is = System.in;
// //我要一次获取一行行不行呢?
// //行。
// //怎么实现呢?
// //要想实现,首先你得知道一次读取一行数据的方法是哪个呢?
// //readLine()
// //而这个方法在哪个类中呢?
// //BufferedReader
// //所以,你这次应该创建BufferedReader的对象,但是底层还是的使用标准输入流
// // BufferedReader br = new BufferedReader(is);
// //按照我们的推想,现在应该可以了,但是却报错了
// //原因是:字符缓冲流只能针对字符流操作,而你现在是字节流,所以不能是用?
// //那么,我还就想使用了,请大家给我一个解决方案?
// //把字节流转换为字符流,然后在通过字符缓冲流操作
// InputStreamReader isr = new InputStreamReader(is);
// BufferedReader br= new BufferedReader(isr);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入一个字符串:");
String line = br.readLine();
System.out.println("你输入的字符串是:" + line);
System.out.println("请输入一个整数:");
// int i = Integer.parseInt(br.readLine());
line = br.readLine();
int i = Integer.parseInt(line);
System.out.println("你输入的整数是:" + i);
}
}
1。JAVA初学者知道输出的类方法System.out.println("Hello,java!");
但是却对输入,即在控制台console中接收用户输入的数据不太清楚。
输入类Scanner的用法。
[java] view plaincopy
public class InputFromConsole {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String name = s.nextLine();
int ival = s.nextInt();
System.out.println(ival + "," + name);
}
}
2.首先创建一个Scanner对象s,构造函数的初始值为System.in,再利用s.nextInt()来接收一个int型数据ival的值,用s.nextLine()来接收String类型的name,然后分别输出。
当编译时会提示错误,这是因为Scanner类在一个名为util的包中。
在程序开头加上一句import java.util.*;即可解决问题。
[java] view plaincopy
import java.util.*;
public class InputFromConsole {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
String name = s.nextLine();
int ival = s.nextInt();
System.out.println(ival + "," + name);
}
}
目前,还没有,就比如你输入一个字符串,你总不能也能求出绝对值吧!所以,就现在的技术看,只有做判断,判断你输入的是一个什么数?字符串,或者整型,浮点型等等,对于数字的可以转换,对于字符串,你只有提示输入数字了!怎么判断,上网查吧,网上多呢,判断数字的都行....
public class Util{
public static void main(String[] args){
java.util.Scanner sc = new java.util.Scanner(System.in);
String[] arr = new String[5];
for(int i = 0; i arr.length; i++){
arr[i] = sc.next();
}
//这里使用util.Arrays的代码输出数组
System.out.println(java.util.Arrays.toString(arr));
}
}
扩展资料:
java中接受用户输入的其他方法
package 控制台接受输入;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.Buffer;
import java.util.Scanner;
public class InputCode {
public static void main(String[] args) throws IOException {
/*
* Scanner类中的方法
* 完美
*/
Scanner input =new Scanner(System.in);
System.out.println("please input your name ");
String name=input.nextLine();
System.out.println(name);
/*
* 缺点:只能接受用户输入的一个字符
*/
System.out.println("enter your name");
char name1 = 0;
try {
//inputstream中的read()方法放回输入流中下一个字符
name1 = (char) System.in.read();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(name1);
/*
* InputStreamReader和BufferedReader方法
* 优点:可以获取字符串
* 缺点:获取的是int或者string人需要强转
*/
//通常,Reader 所作的每个读取请求都会导致对底层字符或字节流进行相应的读取请求。因此,建议用 BufferedReader
//包装所有其 read() 操作可能开销很高的 Reader(如 FileReader 和 InputStreamReader)。例如,
//BufferedReader in= new BufferedReader(new FileReader("foo.in"));
System.out.println("enter your name");
InputStreamReader input1=new InputStreamReader(System.in);
BufferedReader in=new BufferedReader(input1);
String name2=in.readLine();
System.out.println(name2);
}
}