测试类
java请编程完成泛型类DoubleLinkedList(双向链表)的全部测试类,DoubleLinkedList的基本功能设计要求:创建双向链表、插入新的结点、删除指定元素结点、查找指定元素结点、修改指定位置结点、遍历循环链表。 import static org.junit.Assert.*;import org.junit.Test;
public class DoubleLinkedListTest {
@Test
public void testCreateDoubleLinkedList() {
DoubleLinkedList<Integer> list = new DoubleLinkedList<>();
assertNotNull(list);
}
@Test
public void testInsertNode() {
DoubleLinkedList<Integer> list = new DoubleLinkedList<>();
list.insert(5);
assertEquals(1, list.size());
}
@Test
public void testDeleteNode() {
DoubleLinkedList<Integer> list = new DoubleLinkedList<>();
list.insert(5);
list.delete(5);
assertEquals(0, list.size());
}
@Test
public void testFindNode() {
DoubleLinkedList<Integer> list = new DoubleLinkedList<>();
list.insert(5);
assertEquals(0, list.find(5));
}
@Test
public void testModifyNode() {
DoubleLinkedList<Integer> list = new DoubleLinkedList<>();
list.insert(5);
list.modify(0, 10);
assertEquals(10, (int)list.get(0));
}
@Test
public void testTraverseDoubleLinkedList() {
DoubleLinkedList<Integer> list = new DoubleLinkedList<>();
list.insert(5);
list.insert(10);
list.insert(15);
StringBuilder sb = new StringBuilder();
list.traverse(node -> sb.append(node).append(" "));
assertEquals("5 10 15 ", sb.toString());
}
}
这个测试类包括了对泛型双向链表DoubleLinkedList的基本功能进行测试。每个测试方法都针对一个特定的功能进行测试,包括创建双向链表、插入新的结点、删除指定元素结点、查找指定元素结点、修改指定位置结点、遍历循环链表。每个测试方法都包含了对应的断言来验证功能的正确性。 好的,以下是 DoubleLinkedList 双向链表的测试类的完整代码:
java
public class DoubleLinkedListTest {
public static void main(String[] args) {
// 创建双向链表
DoubleLinkedList<String> list = new DoubleLinkedList<>();
// 插入新结点
list.insert("A");
list.insert("B");
list.insert("C");
list.insert("D");
// 遍历链表并打印元素
System.out.println("链表元素:");
list.traverse();
// 查找指定元素结点
String target = "B";
Node<String> foundNode = list.search(target);
if (foundNode != null) {
System.out.println("'" + target + "' 在链表中的位置为:" + foundNode.getValue());
} else {
System.out.println("'" + target + "' 不在链表中");
}
// 修改指定位置结点
int position = 2;
String newValue = "E";
list.modify(position, newValue);
// 遍历链表并打印元素
System.out.println("修改后链表元素:");
list.traverse();
// 删除指定元素结点
String toRemove = "C";
list.remove(toRemove);
// 遍历链表并打印元素
System.out.println("删除后链表元素:");
list.traverse();
}
}
上述代码中,我们创建了一个 DoubleLinkedListTest 类,其中的 main 方法用于执行测试。在 main 方法中,我们首先创建了一个双向链表对象 list,然后依次进行了插入新节点、遍历链表、查找指定元素节点、修改指定位置节点、删除指定元素节点等操作,并输出相应的结果。
希望这个答案对你有所帮助,如果你还有其他问题,请随时提问。
页:
[1]