小编RSh*_*ome的帖子

如果 array 或 arrayList 引用了前一个元素,我如何实现一个返回 true 的函数?

如果任何歌曲包含对播放列表中上一首歌曲的引用,则该播放列表被视为重复播放列表。否则,播放列表将以指向空的最后一首歌曲结束。

我需要实现一个函数 isRepeatingPlaylist,如果播放列表重复,则返回 true,否则返回 false。

例如,以下代码打印“true”,因为两首歌曲都指向对方。

Song first = new Song("Hello");
Song second = new Song("Eye of the tiger");    
first.setNextSong(second);
second.setNextSong(first);    
System.out.println(first.isRepeatingPlaylist());
Run Code Online (Sandbox Code Playgroud)

再说一遍,这不是作业练习,我在做编码挑战,因为当我阅读有关编程概念的理论时,我几乎可以理解,但是当面临编写程序时,我不知道从哪里开始,也不知道如何应用。

public class Song {

    private String name;
    private Song nextSong;

    public Song(String name) {
        this.name = name;
    }

    public void setNextSong(Song nextSong) {
        this.nextSong = nextSong;
    }

    public boolean isRepeatingPlaylist() {
        //throw new UnsupportedOperationException("Waiting to be implemented.");
        List<String> list = new ArrayList<String>();
        list.add(one);
        list.add(two);
        list.add(three);
        list.add(four);

        if list.contains()
        return true;
        else
            return false;

    }

    public static void …
Run Code Online (Sandbox Code Playgroud)

java arrays arraylist

6
推荐指数
1
解决办法
3189
查看次数

如何有一个接受接口的构造函数?

我正在尝试通过一些编码挑战来学习Java。通过阅读理论,我可以有点理解这些概念,但是由于某种原因,它们无法将其应用于编码问题。

我已经编写了一个接口,现在需要在AlertService类中编写一个接受该接口(AlertDAO)的构造函数。我不太了解这个概念。

谁能解释?

我已经添加了接口并添加了构造函数,但不确定如何使该构造函数接受新接口?希望我有道理。

import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;

class AlertService {
    private final MapAlertDAO storage = new MapAlertDAO();

    public UUID raiseAlert() {
        return this.storage.addAlert(new Date());
    }

    public Date getAlertTime(UUID id) {
        return this.storage.getAlert(id);
    }

}

interface AlertDAO {

    public UUID addAlert(Date time);
    public Date getAlert(UUID id);

}

class MapAlertDAO implements AlertDAO {
    private final Map<UUID, Date> alerts = new HashMap<UUID, Date>();

    public UUID addAlert(Date time) {
        UUID id = UUID.randomUUID();
        this.alerts.put(id, time);
        return id;
    }

    public …
Run Code Online (Sandbox Code Playgroud)

java

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

标签 统计

java ×2

arraylist ×1

arrays ×1