扫描仪 nextLine() 异常:未找到行

2023-12-06

我正在为静态方法执行扫描程序,并发生此异常:

Exception in thread "main" java.util.NoSuchElementException: No line found

我的修改方法倾向于从控制台获取 2 个字符串作为输入,但它不起作用。NOTE:我没用过scanner.close();

static ArrayList<Book> modBook(){
    Book tempbook = Book.searchTitle();

    if(tempbook !=null){
        Scanner sc = new Scanner(System.in);
        int i = BookList.indexOf(tempbook);

        System.out.println("Please enter title:");
        String booktitle = sc.nextLine();
        System.out.println("Please enter author:");
        String bookauthor = sc.nextLine();

        tempbook.setTitle(booktitle);
        tempbook.setAuthor(bookauthor);
        BookList.set(i, tempbook); 

    }
    return BookList;
}

我的搜索方法:

static Book searchTitle(){
    try (Scanner input = new Scanner(System.in)) {
        String booktitle;
        System.out.println("Please enter title:");
        booktitle = input.nextLine();

        for(Book b : BookList){
            if(b.getTitle() != null && b.getTitle().equals(booktitle)){
                System.out.println(b.toString());
                return (Book) b;
            }
        }        
    }catch(Exception e){e.getMessage(); return null;}

    System.out.println("not found");
    return null;
}

您正在使用两个实例java.util.Scanner在静态方法中。您必须仅使用一个实例java.util.Scanner。删除 java.util.Scanner 的两个实例并将其添加为全局变量。

static Scanner input = new Scanner(System.in);

然后使用输入法ONLY完成代码中的所有阅读。确保在完成后关闭输入。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

扫描仪 nextLine() 异常:未找到行 的相关文章

随机推荐

  • 旋转时固体物体的持续角度

    我是新来的Unity and Oculus 我有一堆图像 它们的路径和其他信息是加载自JSON file 我正在尝试在 VR 房间中渲染它 并希望为用户提供一种体验 他可以使用以下命令在该房间内移动这些图像Oculus Touch 我放置了
  • 如何将证书传递给 WSTrust 以获得 Saml 令牌

    下面是使用 WSTrustChannelFactory 获取 token 的示例 从这里 var stsBinding new WS2007HttpBinding stsBinding Security Mode SecurityMode
  • 在python中使用PIL以相同的裁剪尺寸裁剪整个图像

    我的 PIL python 逻辑有一些问题 我的目标是从左上角到右下角位置完全裁剪一张 64x64 大小的图像 我可以进行一次裁剪操作 但是当我尝试通过循环完全裁剪图像时 我被中间的循环情况卡住了 在第一个循环中 我可以裁剪 0 0 64
  • PowerMock + Emma - 私有静态方法和其他方法的代码覆盖率显示为 0% [重复]

    这个问题在这里已经有答案了 我从以下位置引用了 PowerMock 使用 PowerMockito 模拟私有方法并在这里应用了相同的逻辑 另外 我在 eclipse STS 中安装了 EMMA 开源工具 但是当我运行代码时 我看到代码覆盖率
  • 查找包含特定值的数组的文档

    如果我有这个架构 person name String favoriteFoods Array 在哪里favoriteFoods数组由字符串填充 我如何使用猫鼬找到所有将 寿司 作为他们最喜欢的食物的人 我希望得到类似的东西 PersonM
  • 使用 Pandas Groupby 和 Apply 函数时处理 None 值

    我有一个Dataframe in Pandas以一个字母和两个日期作为列 我想使用以下方法计算前一行的两个日期列之间的工作日shift 前提是Letter值是相同的 使用 groupby 我正在这样做 apply 这种方法一直有效 直到我传
  • PdfContentStreamEditor 在 PDF 文件上旋转图像

    我希望这是一个简单的问题 我正在尝试使用 iTextSharp 修改一些 PDF 文件 但是 iTextSharp 放在文件末尾的 XMP 元数据似乎破坏了 PDF 文件的布局 而且我不太熟悉 PDF 格式 完全明白为什么 You can
  • 在 ANTLR4 中使用什么来解决歧义(而不是语法谓词)?

    在 ANTLR v3 中 句法谓词可用于解决例如悬空 else 问题 ANTLR4 似乎接受具有类似歧义的语法 但在解析过程中它会报告这些歧义 例如 line 2 29 reportAmbiguity d 0 e ambigAlts 1 2
  • 列表中的矩阵相乘

    我想将列表的多个矩阵相乘 我知道这适用于单个矩阵 x1 lt c 2 2 2 3 1 2 4 6 1 2 4 y1 lt c 5 4 3 3 4 2 1 6 4 2 3 x2 lt c 8 2 7 3 1 2 2 2 1 2 6 y2 lt
  • 渐变在 IE 10/11 中不起作用

    这里我的 CSS 可以让渐变在任何浏览器中工作 包括 IE 版本 9 IE9 wrapper background moz linear gradient top 0f1925 000 repeat scroll 0 0 transpare
  • 如果字符串在 .NET 中是不可变的,那么为什么 Substring 需要 O(n) 时间?

    鉴于字符串在 NET 中是不可变的 我想知道为什么它们被设计成这样string Substring 需要 O substring Length 时间 而不是O 1 即 有什么权衡 如果有的话 更新 我非常喜欢这个问题 我刚刚在博客上写了它
  • 获取WPF路径的长度

    我用画了一条线PathGeometry 参考来自获取几何长度我使用 GetFlattenedPathGeometry 方法获取路径的长度 该方法会将路径转换为一系列直线 并将直线长度相加 参考的代码是 public static doubl
  • 如何在matplotlib中制作两个滑块

    我想在 matplotlib 中制作两个滑块来手动更改捕食者 猎物模型中的 N 和 P 值 import numpy as np import matplotlib pyplot as plt from scipy integrate im
  • 1 位位图数据如何转换为 8 位(24bpp)?

    假设我有 4 个位图 例如 CMYK 它们都是 1 位 像素并且具有不同的颜色 并且我想将它们转换为 8 位 颜色 24bpp 位图 我该怎么做 如果数据如下所示 the Cyan separation CCCC CCCC CCCC CCC
  • 在 java 中使用 printf 而不是 format 的任何理由,反之亦然

    我正在学习 Java 格式化并一直在使用 printf 和 format 方法 对我来说 这些似乎表现完全相同 我有什么理由应该使用其中之一而不是另一个 是否被认为是更新和 或更好的标准 如果是的话 为什么 您使用它们的情况可能会有所不同
  • AppEngine Dev Server 上的 Google KMS - 日志记录混乱

    这是一个已知的问题 https issuetracker google com issues 63253097 进一步我关于让 Google KMS 与 App Engine 配合使用的问题 我正在提出一个关于相关但有问题的副作用的新问题
  • 您尚未完成合并(MERGE_HEAD 存在)

    我创建了一个名为 f 的分支 并向 master 进行了结账 当我尝试git pull命令我收到此消息 You have not concluded your merge MERGE HEAD exists Please commit yo
  • jTable 行数 VS 模型行数

    我有一个jTable从数据库查询加载数据 此负载产生 32 个结果 因此有 32 行TableModel With myTable getRowCount 我正确得到 32 然后我创建一个新的空模型并将其加载到表中 之后 如果我打电话myT
  • 如何避免 Firebase 中的数据被覆盖

    这是我在 Firebase 中添加记录的代码 外部有一个名为restauCount的变量 其值为 int 为1 public void sendMessage int restauCount 1 String identifier Rest
  • 扫描仪 nextLine() 异常:未找到行

    我正在为静态方法执行扫描程序 并发生此异常 Exception in thread main java util NoSuchElementException No line found 我的修改方法倾向于从控制台获取 2 个字符串作为输入