小编 Br*_*ian的帖子

无法引用另一个类中的方法

我几乎完全是Java和编程的新手(我的主要学位是Law,但我希望能够打开自己的编程,因为我真的相信它会在几年内成为一项必不可少的技能).

我已经创建了两个课程,LabClass并且Student重点是让学生加入课堂,同时为他们提供注册学分.

Student是我正在尝试访问的班级中的方法:

public void addCredits(int additionalPoints)
{
    credits += additionalPoints;
}
Run Code Online (Sandbox Code Playgroud)

LabClass是我正在尝试使用的班级方法:

public void enrollStudent(Student newStudent)
{
    if(students.size() == capacity) {
        System.out.println("The class is full, you cannot enrol.");
    }
    else {
        students.add(newStudent);
    }
    students.addCredits(50);
}
Run Code Online (Sandbox Code Playgroud)

我不明白为什么BlueJ说它找不到方法"addCredits".我是一个真正的初学者,所以如果这是一个愚蠢的问题我很抱歉,但任何帮助将不胜感激!

java methods

5
推荐指数
1
解决办法
59
查看次数

访问LinkedHashMap中最后一个对象中的方法

我有一个LinkedHashMap包含一个对象at key和一个at value.

我用过了代码

yourShots.keySet().toArray()[yourShots.size()-1]
Run Code Online (Sandbox Code Playgroud)

返回的最后一个对象keys.但是,我无法访问该对象具有的方法.

我已经使用该getClass()方法确定我确实拥有正确类型的对象,但无法调用该方法.我只是得到了无法找到该方法的错误.

难道我做错了什么?

java arrays hashmap linkedhashmap bluej

4
推荐指数
1
解决办法
157
查看次数

使用嵌套列表时IndexOutOfBoundsException

我正在用Java构建一个基本的战舰式游戏,并使用嵌套列表来表示游戏网格.但是,当我试图放下一艘船时,我一直得到IndexOutOfBoundsException.

游戏板具有如下构造函数

public Board(){
    theSea = new ArrayList<ArrayList<ShipInterface>>(10);
    for(int i = 0; i < theSea.size(); i++){
        theSea.set(i, new ArrayList<ShipInterface>(10));
    }
}
Run Code Online (Sandbox Code Playgroud)

放置船舶的方法如下:

public void placeShip(ShipInterface ship, Position position, boolean isVertical) throws InvalidPositionException, ShipOverlapException{
    for(int i=0; i<ship.getSize(); i++){
        theSea.get((position.getX()-1) + i).set(position.getY()-1, ship);
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,我收到了错误 theSea.get((position.getX()-1) + i).set(position.getY()-1, ship);

我是初学者,如果我错过了一些明显的代码,我很抱歉!

java nested arraylist bluej

0
推荐指数
1
解决办法
48
查看次数

标签 统计

java ×3

bluej ×2

arraylist ×1

arrays ×1

hashmap ×1

linkedhashmap ×1

methods ×1

nested ×1