Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法识别包时出现问题_Java_Package - Fatal编程技术网

Java 无法识别包时出现问题

Java 无法识别包时出现问题,java,package,Java,Package,我正在尝试用a*搜索创建一个解谜算法。一切都应该是正确的,但是当我尝试使用我实现的一个新的“MoveUp-MoveDown-MoveLeft-MoveRight”类时遇到了一个问题,我得到了一个错误(声明的包“rushhour”与预期的包不匹配) 向下移动 package rushhour; import search.Action; import search.State; public class MoveDown implements Action{ int carNum;

我正在尝试用a*搜索创建一个解谜算法。一切都应该是正确的,但是当我尝试使用我实现的一个新的“MoveUp-MoveDown-MoveLeft-MoveRight”类时遇到了一个问题,我得到了一个错误(声明的包“rushhour”与预期的包不匹配)

向下移动

package rushhour;

import search.Action;
import search.State;

public class MoveDown implements Action{

    int carNum;
    int nPositions;

    public MoveDown(int carNum, int nPositions){
        this.carNum = carNum;
        this.nPositions = nPositions;
    }

    public int getCost() {
        return 1;
    }

    public String toString(){
        return "move down";
    }

}
然后我使用它的类看起来像这样

package rushhour;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

import javax.lang.model.element.Element;

import search.Action;
import search.State;


public class GameState implements search.State {

    boolean[][] occupiedPositions;
    List<Car> cars; // target car is always the first one    
    int nrRows;
    int nrCols;
...
...
...
public boolean isLegal(Action action) {


        if(action instanceof MoveDown){

            Car car = cars.get(((MoveDown) action).carNum); 
            int nextPos = car.getRow() + car.getLength() + ((MoveDown) action).nPositions;
package-rushhour;
导入java.io.BufferedReader;
导入java.io.FileReader;
导入java.io.FileWriter;
导入java.io.PrintWriter;
导入java.util.ArrayList;
导入java.util.HashMap;
导入java.util.HashSet;
导入java.util.List;
导入java.util.Map;
导入java.util.Set;
导入javax.lang.model.element.element;
导入搜索。操作;
输入搜索。状态;
公共类GameState实现search.State{
布尔[][]占用位置;
列出车辆;//目标车辆始终是第一辆
int nrRows;
int-nrCols;
...
...
...
公共布尔isLegal(操作){
if(移动的动作实例){
Car Car=cars.get((向下移动)动作).carNum);
int nextPos=car.getRow()+car.getLength()+((MoveDown)action).nPositions;

希望文件夹层次结构与包层次结构匹配(反之亦然)

如果您的类路径是
/src/main/java/
,那么您的文件应该如下所示:

/src/main/java/rushour/GameState.java
/src/main/java/rushour/MoveDown.java
/src/main/java/search/Action.java
/src/main/java/search/State.java

希望文件夹层次结构与包层次结构匹配(反之亦然)

如果您的类路径是
/src/main/java/
,那么您的文件应该如下所示:

/src/main/java/rushour/GameState.java
/src/main/java/rushour/MoveDown.java
/src/main/java/search/Action.java
/src/main/java/search/State.java

我会反过来说,文件夹层次结构必须与包层次结构匹配。我想这只是一个视角问题。:-@Andreas True!我用这些关键信息更新了我的答案。我会反过来说,文件夹层次结构必须与包层次结构匹配。我想这只是一个视角问题。:-)@Andreas True!我用这些关键信息更新了我的答案。