返回信息流Scanner inScanner=new Scanner(System.in);
String s=new String();
while(inScanner.hasNext()){
s=inScanner.nextLine();
}
这是个死循环,必须要ctrl+z才可以,
怎么样判断输入空行的时候结束。
这是一条镜像帖。来源:北邮人论坛 / java / #29276同步于 2014/4/12
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
[问题]Java 怎么以空行,空格,制表符结束输入啊
Lordshang
2014/4/12镜像同步10 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
【 在 shan10211865 的大作中提到: 】
: if (s="\r\n")
: break;
: or
: ...................
不行,试过很多啦,都不行。你的语法都有问题,
我是这么觉得的,当输入流是由system.in的话,会一直阻塞监听键盘,这时如果由监听键盘有没有下一个字符来结束循环是行不通的,一直是true。只能在while里面由从键盘得出的字符来进行结束的判断
if(s==“结束字符”) break;
或者
修改while判断语句,while(in...!=''){}//这里具体要求是啥自己填
不知道语法有什么问题
【 在 Lordshang 的大作中提到: 】
:
: 不行,试过很多啦,都不行。你的语法都有问题,
楼主这样为何不行:
Scanner inScanner=new Scanner(System.in);
String s=new String();
while(inScanner.hasNext()){
s=inScanner.nextLine();
if(s.equals(""))break;
}
【 在 kissyou 的大作中提到: 】
: 楼主这样为何不行:
: Scanner inScanner=new Scanner(System.in);
: String s=new String();
: ...................
不知道啊,等大神来解释
【 在 kissyou 的大作中提到: 】
: 我试了下s.equals("end") 你输入 end 就可以结束啊。
是的,用quit,这些String就行,但是空String就不行。
【 在 kissyou 的大作中提到: 】
: 弱弱的等大神出现。
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner inScanner=new Scanner(System.in);
String inputString=inScanner.nextLine();
while(inputString!=null&&!inputString.equals("")){
System.out.println(inputString);
inputString=inScanner.nextLine();
}
}
}
这样是可以的