Java中In.readInts()是什么意思?

Python012

Java中In.readInts()是什么意思?,第1张

你问的是Scanner吧

import java.util.Scanner

public class ScannerTest {

public static void main(String[] args) {

Scanner s = new Scanner(System.in)

//receive string

String str = s.next()

//receive integer

Integer i = s.nextInt()

//receive double

Double d = s.nextDouble()

System.out.println(str+i+d)

}

}

意思是从控制台获取一个数字,并赋给你的变量。

楼上说出了改写你这个程序的方法,那么我来说一下你的问题吧.你使用的legs=System.in.read()只能读取用户输入的数据的第一个字节,唧你在控制台输入"13回车"时,当你输入到"1"的时候,其实代码"legs=System.in.read()" 已经运行完,接收到的是"1"这一个字节的ascii码(键盘输入为Ascii码,还没有把这个Ascii码转成Unicode), 顺理成章,下面的"head=System.in.read()"就会读到"3",程序再跑下去,就完了.你按照楼上的方法改写你的代码,应该就能完成你想要的功能.楼上用了一个BufferedReader去处理输入,这个的String str=br.readLine()方法可以读取数据直到读到"\n"(回车)时才把这句字串返回.另外说一下,BufferReader br=new BufferedReader(new InputStreamReader(System.in))还可以加上一个参数:"BufferReader br=new BufferedReader(new InputStreamReader(System.in,"Ascii"))"由于你输入的字符一定是纯英文或Ascii码,所以可以不用写,但如果你需要输入中文,这时就要指定编码为"GBK","UTF-8"等等,不加这个参数,JAVA会使用系统中默认的字符编码去处理这堆字节流,我们的系统默认是"GB2312"的.

system.in.read()做不到,

用输入输出流吧:

很长很多的代码,我学一年才记住的,现在忘了……

查了查:先加这个包:import

java.io.*()主函数代码如下:

public

static

void

main(String[]

args)

throws

IOException{

InputStreamReader

reader

=

new

InputStreamReader(System.in)

BufferedReader

input

=

new

BufferedReader(reader)

String

s

=

input.readLine()/*执行输入流操作*/

int

x

=

Integer.parseInt(s)/*加个int型的转换*/