我是一名 Java 初学者,目前正在从事一个几乎完成的项目。
我需要删除、修改和提取列表的元素(这是一个基本元素,尽管我知道有 arrayList(s)。)这让我自己发疯,因为我确切地知道我需要做什么,但我不是得到我需要的东西开始编程。
package lec05;
import java.util.*;
/**
*
* @author ulacit
*/
public class Lista {
Celda head;
public Lista() {
head = null;
}
public void add(Person aPerson) {
if (head == null) { // list = empty
head = new Celda(aPerson);
} else if (aPerson.getId() < head.getInfo().getId()) { // add element - left
Celda aux = new Celda(aPerson);
aux.setNext(head);
head = aux;
} else if (head.getNext() == null) { // add 1 element - right
Celda aux = new Celda(aPerson);
head.setNext(aux);
} else { // more than 1 - add at the end or in the middle
Celda actual = head;
while (actual.getNext() != null
&& actual.getNext().getInfo().getId() < aPerson.getId()) {
actual = actual.getNext();
}
Celda aux = new Celda(aPerson);
aux.setNext(actual.getNext());
actual.setNext(aux);
}
}
public boolean (int id) {
Celda aux = head;
while (aux != null && aux.getInfo().getId() < id) {
aux = aux.getNext();
}
return (aux != null && aux.getInfo().getId() == id);
}
public Person restore(int id) {
Celda aux = head;
while (aux != null && aux.getInfo().getId() < id) {
aux = aux.getNext();
}
if (aux != null && aux.getInfo().getId() == id) {
return aux.getInfo();
} else {
return null;
}
}
public void remove(int id) {
}
public void modify(int id, String name) {
}
public Persona extract(int id) {
}
@Override
public String toString() {
String s = "List{";
Celda aux = head;
while (aux != null) {
s += aux.getInfo() + ", ";
aux = aux.getNext();
}
return s;
}
}