我已经找到了这段代码,无法找出解决方法。在运行代码时,为什么不提示用户输入而不是Java确定没有输入?错误跟踪如下。
import java.util.*;
public class SortAsInserted {
public static void main(String[] args) {
int array_size = GetArraySize();
//System.out.println(array_size);
String[] myArray = new String[array_size];
for (int i = 0; i < array_size; i++){
String next_string = GetNextString();
System.out.println(next_string);
}
}
//public static String[] SortInsert(String nextString){
//}
public static int GetArraySize(){
Scanner input = new Scanner(System.in);
System.out.print("How many items are you entering?: ");
int items_in_array = input.nextInt();
input.close();
return items_in_array;
}
public static void PrintArray(String[] x) {
for (int i = 0; i < x.length; i++){
System.out.print(x[i]);
}
}
public static String GetNextString(){
Scanner input = new Scanner(System.in);
System.out.println("Enter the next string: ");
String next_string = input.nextLine();
input.close();
return next_string;
}
这是错误-
How many items are you entering?: 2
Enter the next string:
Exception in thread "main" java.util.NoSuchElementException: No line found
at java.util.Scanner.nextLine(Unknown Source)
at SortAsInserted.GetNextString(SortAsInserted.java:40)
at SortAsInserted.main(SortAsInserted.java:10)
简单的答案是当您关闭扫描仪时-
基础输入流也会关闭:http
:
//docs.oracle.com/javase/7/docs/api/java/util/Scanner.html#close()
要修复此问题,请在主菜单中创建一次:
public class SortAsInserted {
static Scanner input;
public static void main(String[] _) {
input = new Scanner(System.in);
....
input.close();
}
问题内容: 我在代码的第34行上不断收到LineUnavailableException:https://www.refheap.com/21223 错误显示为。 我正在创建Sound类的多个实例(在我的refheap粘贴中实现)。似乎最初的实例没有问题。但是,当我开始使用相同的音频文件制作Sound对象的新实例时,便开始出现此错误。 知道如何解决吗? EIDT:我认为这个问题的 想法可能是我需要
我正在尝试使用JMeter向在本地主机上运行的应用程序发送请求,但由于java.net.Socket异常,许多请求都失败了。不过,我在控制台中没有看到任何异常。 我读了这些问题1和问题2,但没有多大帮助。 我的代码如下: 存储库 我的 JMeter 配置的屏幕截图
问题内容: 为什么在代码的指定位置出现ConcurrentModificationException?我无法弄清楚自己在做什么错… 正在使用该方法在列表中找到分钟,将其删除并返回其值 问题答案: 一旦修改了从其获得的Collection,则不应认为Iterator可用。(对于java.util.concurrent。*集合类,放宽了此限制。) 您首先要获得一个Iterator ,然后进行修改。修改
问题内容: 执行以下方法时: 被扔。这可能是什么原因? 问题答案: 这可能是什么原因? 我不知道其余的内容,但是我遇到的大多数PC使用8位或16位的“位深度”,而使用24位。它表示非常精细的记录质量。如果8位是“电话质量”,而16位是“ CD质量”,则24位将是“主录音质量”。
到目前为止,我有这个: 和这个: 当我测试这个时,它不能采取双倍数字,我收到这个消息: 我该如何解决这个问题?
问题内容: var x int done := false go func() { x = f(…); done = true } while done == false { } 这是Go代码。我的恶魔告诉我,这是UB代码。为什么? 问题答案: Go Memory Model不保证该程序将始终遵守在goroutine中写入x的值。go常规销毁 部分中提供了一个类似的错误程序作为示例。 在本节中,G