当前位置: 首页 > 知识库问答 >
问题:

Java中的编译错误:找不到符号。

翟展
2023-03-14

我有这样的代码:获取一个文本文件,并将其转换为字符串,然后将字符串的部分分离为ArrayList的不同元素。

import java.util.Scanner;
import java.io.*;
import java.util.ArrayList;

public class Grocery{

    public Grocery(){

        File inFile = new File ("lists.txt");
        Scanner input = new Scanner (inFile);
        String grocery;
        {
             grocery = input.nextLine();
        }
    }

    public void makeSmallerLists(){
        String listLine;
        String line;
        ArrayList<String> smallList = new ArrayList<String>();
        while(input.hasNextLine()){
            line = input.nextLine;
            if(line.equals("<END>")){
                smallList.add(listLine);
            } else{
                listLine = listLine + "\n" + line;
            }
        }
    }
}

然而,当我试图编译它时,它给了我两个错误:

javac Message.java Message.java:31:找不到符号symbol:变量输入位置:类html" target="_blank">消息while(input.HasNextLine()){^Message.java:32:找不到符号symbol:变量输入位置:类消息行=input.NextLine;^

我怎么解决这个?我真的不知道怎么了。

我修正了这个错误,现在我的错误是$javac message.java message.java:34:无法找到符号符号:variable nextLine location:class java.util.scanner line=input.nextLine;^

           ^

现在怎么了?

共有1个答案

宇文峰
2023-03-14
 Scanner input = new Scanner (inFile);

输入对构造函数是本地的,您不能在它之外访问,您正在尝试在MakesMallerLists()方法中访问。将其作为实例成员,以便它可以通过而不是静态上下文使用。

public class Grocery{

  Scanner input;

和在构造函数中

public Grocery(){

            File inFile = new File ("lists.txt");
             input = new Scanner (inFile);
 类似资料:
  • 问题内容: 嘿,我刚开始我的第一本Java编程书籍,所以这应该很容易解决。弄乱我对条件句的新知识,发现标题错误。 这是代码: 当我尝试编译时: 问题答案: 错误消息告诉您变量“输入”在您的作用域中不存在。您可能想使用Scanner对象,但将其命名为“ x”,而不是“ input”。 应该修复它。

  • 问题内容: 当代码到达递归调用增量时,我收到错误找不到符号,我不知道为什么?这是增量代码。任何帮助将不胜感激。 编辑:我真的是Java的新手,所以可以做的答案越基本越好。好的,所以我收到的错误是:BigNatural.java.35:找不到符号符号方法增量()位置:类java.lang.String temp.increment() 并在此处清除所有其他问题,是整个代码。 }公共类BigNatur

  • 我有一段代码,它将一个文本文件转换成一个字符串,然后将字符串的一部分分离成arraylist的不同元素。 但是,当我尝试编译此文件时,它会给我两个错误: JAVAC Message.javaMessage.java:31:找不到符号符号:变量输入位置:类消息同时(input.hasNextLine()){ ^ Message.java:32:找不到符号符号:变量输入位置:类消息行=input.ne

  • 嘿,我刚刚开始我的第一本关于Java的编程书,所以这应该是一个简单的修复。把我对条件句的新知识弄得乱七八糟的,结果我得到了标题错误。 代码如下: 当我尝试编译:

  • 问题内容: 美好的一天,我在同一目录中有两个类Map和Field。我成功地编译了Field.java,但是当我编译Map.java时,我得到了: 这是两个类的代码: 对于Field.java(如有必要): 我分别编译了Field.java和Map.java:javac Field.java没有返回任何错误,但是javac Map.java返回了以上错误。 问题答案: 我仍然不清楚您的问题到底在哪里

  • 我一直在尝试使用Eclipse和Forge编译Minecraft mod,但我只是遇到错误,我想这是与链接Minecraft库有关,但不确定这是我的代码 我正在遵循一个指南,应该在最后得到一条“构建成功”的消息。指南是https://blog.usejournal.com/a-beginners-guide-to-modding-Minecraft-9A42536495F6 这里有个错误