package comtest;
import javaioBufferedReader;
import javaioIOException;
import javaioInputStreamReader;
public class MainRun {
/
@param args
/
public static void main(String[] args) {
try {
BufferedReader strin=new BufferedReader(new InputStreamReader(Systemin));
Systemoutprint("请输入一个字符串:");
String str = strinreadLine();
Systemoutprintln("第一个:"+str);
Systemoutprintln("请输入第二个字符串:");
String str2 = strinreadLine();
Systemoutprintln("第2个:"+str2);
} catch (IOException e) {
eprintStackTrace();
}
}
}
2JDK5以后引入了 JavautilScanner;来处理控制台输入并得到响应的类型数据
package comtest;
import javautilScanner;
public class MainRun {
/
@param args
/
public static void main(String[] args) {
Scanner sc = new Scanner(Systemin);
Systemoutprintln("输入第一个boolean值(true/false):");
if(scnextBoolean()){
Systemoutprintln("输入布尔:真的");
}else{
Systemoutprintln("输入布尔:假的");
}
Systemoutprintln("输入第一个数字:");
Systemoutprintln("输入数字:"+scnextInt());
Systemoutprintln("输入一个字符串:");
Systemoutprintln("输入字符串:"+scnext());
Systemoutprintln("输入一个长整型:");
Systemoutprintln("输入长整型:"+scnextLong());
}
}
Scanner
sc
=
new
Scanner(Systemin);
String
s
=
scnext();
//Scanner类没有提供直接接收一个字符的方法,这里当作字符串来接收;
char
c
=
scharAt(0);
//
调用字符串的charAt()方法取得第一个字符就是了
import javaioBufferedReader;
import javaioIOException;
import javaioInputStreamReader;
/
Systemin 标准输入流。是从键盘获取数据的
键盘录入数据:
A:main方法的args接收参数。
java HelloWorld hello world java
B:Scanner(JDK5以后的)
Scanner sc = new Scanner(Systemin);
String s = scnextLine();
int x = scnextInt()
C:通过字符缓冲流包装标准输入流实现
BufferedReader br = new BufferedReader(new InputStreamReader(Systemin));
/
public class SystemInDemo {
public static void main(String[] args) throws IOException {
// //获取标准输入流
// InputStream is = Systemin;
// //我要一次获取一行行不行呢
// //行。
// //怎么实现呢
// //要想实现,首先你得知道一次读取一行数据的方法是哪个呢
// //readLine()
// //而这个方法在哪个类中呢
// //BufferedReader
// //所以,你这次应该创建BufferedReader的对象,但是底层还是的使用标准输入流
// // BufferedReader br = new BufferedReader(is);
// //按照我们的推想,现在应该可以了,但是却报错了
// //原因是:字符缓冲流只能针对字符流 *** 作,而你现在是字节流,所以不能是用
// //那么,我还就想使用了,请大家给我一个解决方案
// //把字节流转换为字符流,然后在通过字符缓冲流 *** 作
// InputStreamReader isr = new InputStreamReader(is);
// BufferedReader br= new BufferedReader(isr);
BufferedReader br = new BufferedReader(new InputStreamReader(Systemin));
Systemoutprintln("请输入一个字符串:");
String line = brreadLine();
Systemoutprintln("你输入的字符串是:" + line);
Systemoutprintln("请输入一个整数:");
// int i = IntegerparseInt(brreadLine());
line = brreadLine();
int i = IntegerparseInt(line);
Systemoutprintln("你输入的整数是:" + i);
}
}
使用scanner获取屏幕输入
1、定义scanner,能够监听屏幕输入
Scanner sc = new Scanner(Systemin);2、通过nextInt获取输入整数
int i = scnextInt();补充:
new Scanner(Systemin)创建一个Scanner,控制台会一直等待输入,输入信息后,通过nextInt获取输入的整数值
通过输入输出方法取货的值有着很大的局限性,不建议使用。
在Java中有自带的keyPressed时间,是键盘点下事件,在事件方法public
void
this_keyPressed(KeyEvent
e)
中的e就是你键盘点下的键。然后egetKeyCode()用来获取按值。
具体代码如下
添加事件代码
thisaddKeyListener(new
KeyAdapter()
{
public
void
keyPressed(KeyEvent
e)
{
this_keyPressed(e);
}
}
事件代码
public
void
this_keyPressed(KeyEvent
e)
{
egetKeyCode()
}
以上代码都可用编译器自动生成。
//构造一个Scanner对象scanner,利用Systemin作为构造参数
Scanner input= new Scanner(Systemin);
//利用scanner中的方法获得用户的输入
inputnext()--获取字符串对象
inputIntNext()--获取整数数值对象
TextField获取输入的数据,可以使用TextFieldgetText()trim();
其中getText()是获得文本,trim()是用来去掉文本前后的空字符的。
TextField的其他 *** 作可以查看JDK提供的API查看。
以上就是关于java怎么获取控制台输入的字符串全部的内容,包括:java怎么获取控制台输入的字符串、在java中怎么获取输入的单个字符、java接受用户输入代码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)