用java打印字符
我正在尝试逐字符打印给定字符串:用java打印字符,java,Java,我正在尝试逐字符打印给定字符串: public static void main(String[] args) { char c; Scanner scaner = new Scanner(System.in); int length = scaner.next().length(); System.out.println(length); int i = 0; while (i < length) { c = scaner
public static void main(String[] args) {
char c;
Scanner scaner = new Scanner(System.in);
int length = scaner.next().length();
System.out.println(length);
int i = 0;
while (i < length) {
c = scaner.next().charAt(i);
System.out.println(c);
i++;
}
}
publicstaticvoidmain(字符串[]args){
字符c;
Scanner scaner=新扫描仪(System.in);
int length=scaner.next().length();
系统输出打印长度;
int i=0;
while(i
一旦此代码达到
int length=scaner.next().length()代码>它不会继续。什么原因导致这种情况?您应该将扫描的值存储在临时变量中
char c;
Scanner scaner = new Scanner(System.in);
// Storing scanned value
String nextStr = scaner.next();
int length = nextStr.length();
System.out.println(length);
int i = 0;
while(i < length){
c = nextStr.charAt(i);
System.out.println(c);
i++;
}
charc;
Scanner scaner=新扫描仪(System.in);
//存储扫描值
字符串nextStr=scaner.next();
int length=nextStr.length();
系统输出打印长度;
int i=0;
while(i
在原始代码中,您在循环中反复调用next
,但这不会返回原始扫描值,而是返回下一行输入。您应该将扫描值存储在临时变量中
char c;
Scanner scaner = new Scanner(System.in);
// Storing scanned value
String nextStr = scaner.next();
int length = nextStr.length();
System.out.println(length);
int i = 0;
while(i < length){
c = nextStr.charAt(i);
System.out.println(c);
i++;
}
charc;
Scanner scaner=新扫描仪(System.in);
//存储扫描值
字符串nextStr=scaner.next();
int length=nextStr.length();
系统输出打印长度;
int i=0;
while(i
在原始代码中,您在循环中反复调用next
,但这不会返回原始扫描值,而是返回下一行输入。调用next()后需要输入一些内容
亚历山大的回答也是如此
行:int length=scaner.next().length()代码>获取下一行,然后检查长度。
因此,您已经得到了下一行,再次调用next()会要求不同的输入
这就是为什么您应该始终将next()的返回值存储在变量中的原因 调用next()后需要输入一些内容
亚历山大的回答也是如此
行:int length=scaner.next().length()代码>获取下一行,然后检查长度。
因此,您已经得到了下一行,再次调用next()会要求不同的输入
这就是为什么您应该始终将next()的返回值存储在变量中的原因 在你输入内容之前,它不会进入下一行。在你输入内容之前,它不会进入下一行。根据作者的说法,这不是问题所在。一旦代码点击int length=scaner.next().length(),代码就会停止根据作者的说法,这不是问题所在。一旦代码点击int length=scaner.next().length(),代码就会停止代码>。