[英]JAVA char input
我的代码在获取第一个值后没有将输入输入到char变量中。
import java.io.*;
import java.lang.Character;
public class Test
{
public static void main(String args[])throws IOException
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
char s;
for(int i=0;i<3;i++)
{
System.out.print("->");
s=(char)br.read();
System.out.print(s);
}
}
}
我得到这个输出
->a
->>
我不会这样
->a
a
->b
b
->c
c
根据Java Docs: 这里
read()函数一次读取一个字符。
提供的输入:a,然后按Enter。
br.read()在迭代中读取以下字符:前三个迭代中a-> \\ r-> \\ n。 如果循环超过3个,它将再次提示用户输入。
您可以通过以下两种方式解决问题:
public static void main(String args[])throws IOException
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
char s;
for(int i=0;i<3;i++)
{
System.out.print("->");
s=(char)br.read();
System.out.print(s);
}
}
public static void main(String args[])throws IOException
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String s;
for(int i=0;i<3;i++)
{
System.out.print("->");
s=br.readLine();
System.out.print(s);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.