gpt4 book ai didi

java - 我的输入只读取了三个命令,并且对它读取的命令没有任何作用?

转载 作者:行者123 更新时间:2023-11-30 07:49:30 26 4
gpt4 key购买 nike

我必须编写一个用户界面,它从命令屏幕获取数据并使用它来访问链接列表类中的方法。它们都在同一个文件中,并且节点类已经编写并且可以正常编译。如果有人能帮我弄清楚为什么它只读取三个命令,例如 idog、icat、p,然后说 java.io.IOException: Stream Closed。我还检查了添加空格(即命令 idog cat、ibird、p)是否会影响它读取的行数,但事实并非如此。异常(exception)情况也是一样。任何提示将不胜感激。

public static void main(String[] args){
linkedlist link= new linkedlist();
int n=0;
System.out.println("Type a command\n");
try{
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
s=in.readLine();
while(in.readLine()!=null){
s=in.readLine();
char first=s.charAt(0);
int space= s.indexOf(" ");
while(space<=n){
if(first=='i'){
String w=s.substring(space);
link.insert(w);
}
if(first=='d'){
String w=s.substring(space);
link.delete(w);
link.printlist();
}
if(first=='f'){
String w=s.substring(space);
link.find(w);
link.printlist();
}
if(first== 'p'){
link.printlist();
}
n++;
}
in.close();
}
}catch(Exception e) {System.out.println("Ack!: " + e);}
}

最佳答案

流关闭错误意味着您在关闭后尝试写入。像这样设置代码格式:

Open in stream on this line before try
try {
Do processing here
.....
}
catch(Exception e)
{
....
}
finally
{
close stream here
}

finally block 将运行在运行 try/catch 后需要运行的代码,因此将流放在此处附近。

关于java - 我的输入只读取了三个命令,并且对它读取的命令没有任何作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33464786/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com