0

我有这个构造函数,它接收一组jmusic注释,并且我试图将每个单独的注释设置为一个链接列表中的一个单独的节点,该链接列表SoloNodes只包含一个单独的注释。该构造函数中的大多数方法都是我自己编写的,但它们很容易解释。我必须做什么才能使它生成一个链表?

public Solo(Phrase myPhrase)
{

    int length=myPhrase.length();
    head=new SoloNode();
    SoloNode next=new SoloNode();
    for(int i=1; i<=length;i++)
    {
       head.setNote(myPhrase.getNote(i));
       next=head.copyNode();
       head.setNext(next);
       head=next;
       i++;
    }
 }
4

1 回答 1

0

我想这就是您要查找的代码:

private SoloNode head;

public Solo(Phrase myPhrase)
{
    int length = myPhrase.length();
    SoloNode node = new SoloNode();
    head = node;
    for (int i = 0; i < length; i++) {
        node.setNote(myPhrase.getNote(i));
        if (i + 1 < length) {
            node.setNext(new SoloNode());
            node = node.getNext();
        }
    }
}

我假设您使用的类 SoloNode 看起来像这样

我也假设它myPhrase.getNote(i)从索引 0(不是 1)开始,因为这是它在 Java 中的常见工作方式。

运行此代码后,SoloNode 将填充来自 myPhrase 的数据并从一个链接到下一个。您可以从getNext()当前导航到下一个。只有最后一个 SoloNode 才会返回null

于 2013-05-12T19:47:27.997 回答