Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import java.util.Objects;
- public class Anchor {
- private Element first = null;
- public Anchor() { }
- public void insertAtTheFront(final int x) {
- final Element newElement = new Element(x);
- if(first != null)
- newElement.setNextElement(first);
- first = newElement;
- }
- public void insertAtTheEnd(final int x) {
- final Element newElement = new Element(x);
- if(first == null) {
- first = newElement;
- }
- else {
- Element element = first;
- //set 'element' to last element in list
- while(element.getNextElement() != null)
- element = element.getNextElement();
- element.setNextElement(newElement);
- }
- }
- public void removeFirst() {
- if(first != null){
- first = first.getNextElement();
- }
- }
- public void removeLast() {
- if(first != null) {
- Element preLastElement = first;
- //Set 'preLastElement' to point to 1 element before last one
- for(Element element = first; element.getNextElement() != null; element = element.getNextElement()){
- if(element.getNextElement().getNextElement() == null){
- preLastElement = element;
- break;
- }
- }
- preLastElement.setNextElement(null);
- }
- }
- @Override
- public String toString() {
- String str = "List [";
- if(first != null) {
- Element element = first;
- do {
- str += element.getValue() + " ";
- element = element.getNextElement();
- } while (element != null);
- }
- return str + "]";
- }
- @Override
- public boolean equals(Object o) {
- if (o == null || getClass() != o.getClass())
- return false;
- final Anchor otherAnchor = (Anchor) o;
- Element otherAnchorElement = otherAnchor.first;
- Element thisElement = first;
- do {
- if(thisElement == null || otherAnchorElement == null)
- return thisElement == otherAnchorElement;
- if(thisElement.getValue() != otherAnchorElement.getValue())
- return false;
- thisElement = thisElement.getNextElement();
- otherAnchorElement = otherAnchorElement.getNextElement();
- } while(otherAnchorElement != null && thisElement != null);
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement