package com.fasterxml.jackson.databind.util;

Node of a forward-only linked list.
Author:tatu
/** * Node of a forward-only linked list. * * @author tatu */
public final class LinkedNode<T> { private final T value; private LinkedNode<T> next; public LinkedNode(T value, LinkedNode<T> next) { this.value = value; this.next = next; } public void linkNext(LinkedNode<T> n) { if (next != null) { // sanity check throw new IllegalStateException(); } next = n; } public LinkedNode<T> next() { return next; } public T value() { return value; }
Convenience method that can be used to check if a linked list with given head node (which may be null to indicate empty list) contains given value
Params:
  • node – Head node of the linked list
  • value – Value to look for
Type parameters:
  • <ST> – Type argument that defines contents of the linked list parameter
Returns:True if linked list contains the value, false otherwise
/** * Convenience method that can be used to check if a linked list * with given head node (which may be null to indicate empty list) * contains given value * * @param <ST> Type argument that defines contents of the linked list parameter * @param node Head node of the linked list * @param value Value to look for * @return True if linked list contains the value, false otherwise */
public static <ST> boolean contains(LinkedNode<ST> node, ST value) { while (node != null) { if (node.value() == value) { return true; } node = node.next(); } return false; } }