Я пытаюсь вставить в двусвязный список, используя шаблон стратегии. Я написал этот код, поэтому следует ли ему чистый шаблон стратегии в Java? или что-то я пропустил здесь? Любые предложения будут оценены.
Обновить код:-
doubleLinkedList = new DoubleLinkedList(new ConcreteStrategyAdd());
doubleLinkedList.executeStrategy("john");
doubleLinkedList.executeStrategy("tom");
doubleLinkedList.executeStrategy("carls");
это класс
class DoubleLinkedList {
private Strategy strategy;
private NewLink firstNode;
private NewLink lastNode;
private static NewLink rootNode;
// Constructor
public DoubleLinkedList(Strategy strategy) {
this.strategy = strategy;
}
public void executeStrategy(String a) {
strategy.execute(a, this);
}
// Initializing values in the Constructor for DoubleLinkedList
public DoubleLinkedList() {
rootNode = null;
firstNode = null;
lastNode = null;
}
public boolean isEmpty() {
return rootNode == null;
}
}
Это интерфейс для стратегии
interface Strategy {
void execute(String a, DoubleLinkedList list);
}
//Реализует алгоритм с помощью интерфейса стратегии
public class ConcreteStrategyAdd implements Strategy {
DoubleLinkedList doubleLinkedList = new DoubleLinkedList();
public void execute(String a, DoubleLinkedList list) {
System.out.println("Called ConcreteStrategyAdd's execute()");
//insert here by using the logic
}
}
}
Я обновил код, дайте мне знать, правильно это или нет? Но с этим я не уверен, где я должен поместить свой метод вставки.