【问题标题】:<Part> cannot be resolved to a type (Yes, I have imported List and ArrayList)<Part> 无法解析为类型(是的,我已导入 List 和 ArrayList)
【发布时间】:2017-08-24 03:46:30
【问题描述】:

很抱歉用另一个“无法解决的类型”来打扰好人,但我很困惑。我正在用 java 编程,就像我说的那样,我检查了我的导入并检查了我的 Part 类,但我对编程的有限知识似乎正在显现。 请帮我找出错误的原因。

在问题选项卡下,我有两个问题,

ArrayList 无法解析为类型
零件无法解析输入

我想最后一个导致第一个。

我的编译器给了我

原因:java.lang.Error:未解决的编译问题: ArrayList 无法解析为类型 部件无法解析为 PartsBox.View.PartsBoxButtonHandlers.addImportFile_handler(PartsBoxButtonHandlers.java:51) 中的类型 ... 62 更多

带有注释标签的底部区域是 eclipse 告诉我我做错了什么的地方。

package PartsBox.View;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.List;

import javafx.fxml.FXML;
import javafx.scene.control.Button;
import javafx.scene.control.TableView;
import javafx.stage.FileChooser;
import javafx.stage.Stage;

public class PartsBoxButtonHandlers {

List<String> headerItems;
List<ArrayList<String>> itemTable;
List<Part> parts;

@FXML
private Button addImportFile_button;
@FXML
private Button saveLib_button;
@FXML
private Button addManual_button;
@FXML
private Button clearTable_button;
@FXML
private Button exportMissing_button;
@FXML
private Button exportBOM_button;
@FXML
private Button clearBOM_button;
@FXML
private TableView<Part> libraryTable;



public void addImportFile_handler(){

    FileChooser chooser = new FileChooser();
    chooser.setTitle("Open Files");
    List<File> files = chooser.showOpenMultipleDialog(new Stage());

    // ----------------------------------------

        parts = new ArrayList<Parts>();

    // ----------------------------------------

这是零件类

package PartsBox.View;

import java.util.ArrayList;

public class Part {

private ArrayList<String> part;

public Part(int headerSize){
    part = new ArrayList<String>();
    for(int j = 0 ; j < headerSize; j++){
        part.add("");
         }
     }

     public ArrayList<String> getPartListArray(){
         return part;
     }

     public void appendHeaderSpace(){
        part.add("");
     }
     public void insertPartDetail(String s, int n){
        part.set(n, s);
     }

}

【问题讨论】:

  • 您的 Eclipse 配置中未正确配置 JDK。

标签: java eclipse arraylist javafx compiler-errors


【解决方案1】:

你的班级名称是Part,而不是Parts

所以这里改成Part

 part = new ArrayList<Part>();

另外,您将 ArrayList 声明为 part 而不是 parts。也相应地改变它。

【讨论】:

  • 谢谢,太晚了,我累了。应该是等明天再发吧。多么愚蠢的错误
【解决方案2】:

从类名 Part 中删除 (s)。应该说

parts = new ArrayList<Part>();

不是

parts = new ArrayList<Parts>();

如果您使用 IDE,它会对您有所帮助。

【讨论】:

  • 好的,现在你改变了。
  • 我没有改变任何东西,只是格式化了它,因为我是 stackoverflow 的新手并且想要适当的缩进:)
  • 查看编辑列表,您将能够看到您发布的第一个答案。
  • 这是您的第一个答案:从 Part 中删除复数。应该说parts = new ArrayList();不是零件 = 新的 ArrayList();
  • 这是因为我没有在代码标签内格式化我的代码,而 之间的东西被删除了
猜你喜欢
  • 2012-11-22
  • 1970-01-01
  • 2015-05-28
  • 2013-02-02
  • 1970-01-01
  • 2023-04-11
  • 2020-09-13
  • 1970-01-01
  • 2017-02-17
相关资源
最近更新 更多