Did I write this constructor properly?(我是否正确地编写了这个构造函数?)
本文介绍了我是否正确地编写了这个构造函数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在为我的数据结构类处理一个项目,该项目要求我编写一个类来实现INT的链表。使用Node的内部类。包括下面的方法。编写一个测试程序,使您能够以任何顺序使用您想要的任何数据来测试所有方法。我必须创建三个不同的构造函数。其中一个构造函数是一个构造函数,它接受一个整型数组,并创建一个包含所有整型的链表。我试着做了下面的代码。但我不确定我写的代码是否正确?是否有人可以验证我是否正确编写了代码,或者是否可以让我知道需要更改哪些内容才能正确编写代码?
import java.util.Random;
public class LinkedListOfIntsTest {
Node head;
int[] array;
Node other;
private class Node {
int value;
Node nextNode;
public Node(int value, Node nextNode) {
this.value = value;
this.nextNode = nextNode;
}
}
public LinkedListOfIntsTest() {
}
public LinkedListOfIntsTest(int[] other) {
array = new int[other.length];
}
推荐答案
否,整个想法是将数组转换为LinkedList
,而不仅仅是存储数组。因此,您应该从类的字段中删除Node other
和int[] array
。
执行转换的一种方法是将数组的每个元素转换为Node
,在执行过程中链接到前一个元素,如下所示。
public LinkedListOfIntsTest(int[] other) {
Node[] nodes = new Node[other.length];
for( int index = 0; index < other.length; index++ ) {
nodes[index] = new Node(other[index], null);
if (index > 0) {
nodes[index - 1].nextNode = nodes[index];
}
}
head = nodes[0];
}
这里,nodes
只是一个局部变量,因为在构造函数完成后您不再需要它。
这篇关于我是否正确地编写了这个构造函数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:我是否正确地编写了这个构造函数?


基础教程推荐
猜你喜欢
- RabbitMQ:消息保持“未确认"; 2022-01-01
- 如何对 Java Hashmap 中的值求和 2022-01-01
- Spring AOP错误无法懒惰地为此建议构建thisJoinPoin 2022-09-13
- 无法复制:“比较方法违反了它的一般约定!" 2022-01-01
- 问题http://apache.org/xml/features/xinclude测试日志4j 2 2022-01-01
- 修改 void 函数的输入参数,然后读取 2022-01-01
- 使用堆栈算法进行括号/括号匹配 2022-01-01
- Struts2 URL 无法访问 2022-01-01
- REST Web 服务返回 415 - 不支持的媒体类型 2022-01-01
- 存储 20 位数字的数据类型 2022-01-01