gpt4 book ai didi

java - 具有初始值的链表构造函数

转载 作者:行者123 更新时间:2023-11-30 03:37:10 25 4
gpt4 key购买 nike

我正在开发一个链接列表项目,但我在构造函数方面遇到了很大的麻烦。

我已经实现了默认构造函数(创建空列表。AKA data = null,size = 0),但另一个构造函数真的让我感到困惑!!!!!

我想实现一个构造函数,它创建一个包含 valueS/elementS (String[]) 的链表。我的第一个想法是“小菜一碟,我所要做的就是:

  • 使用默认构造函数创建一个空链表
  • 在 for 循环中使用 for-each 循环。for-each 循环是迭代字符串数组并将它们添加到我的空链表中。需要 for 循环来跟踪索引。”

这是我的代码:

public LinkedList(String[] data)
{
LinkedList l = new LinkedList();

for (int i = 0; i <= data.length; i++)
{

for (String d : data)
{
l.add(d, i);
i++;
}

}
}

我使用此构造函数测试了我的代码,但它不起作用。我知道某个地方有一个愚蠢的错误,但我的逻辑/思维是盲目的,看不到它。

最佳答案

好吧,您在编写的构造函数中不再真正引用“this”。您创建一个链接列表 l 并修改该链接列表,但您从未真正处理“此”。我也同意其他人的观点,第二个 for 循环是不必要的。

这还允许您使用 this(),这是一个值得了解的很酷的功能。帮助您保持代码干燥且无错误。

public LinkedList(String[] data){
this(); //Call the default constructor to set up default properties
for (String d : data){
add(d); //Call on this
}
}

关于java - 具有初始值的链表构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27576300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com