Class Combinations.SingletonIterator

  • All Implemented Interfaces:
    java.util.Iterator<int[]>
    Enclosing class:
    Combinations

    private static class Combinations.SingletonIterator
    extends java.lang.Object
    implements java.util.Iterator<int[]>
    Iterator with just one element to handle degenerate cases (full array, empty array) for combination iterator.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private boolean more
      True on initialization, false after first call to next
      private int[] singleton
      Singleton array
    • Constructor Summary

      Constructors 
      Constructor Description
      SingletonIterator​(int[] singleton)
      Create a singleton iterator providing the given array.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean hasNext()  
      int[] next()  
      void remove()
      Not supported
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface java.util.Iterator

        forEachRemaining
    • Field Detail

      • singleton

        private final int[] singleton
        Singleton array
      • more

        private boolean more
        True on initialization, false after first call to next
    • Constructor Detail

      • SingletonIterator

        SingletonIterator​(int[] singleton)
        Create a singleton iterator providing the given array.
        Parameters:
        singleton - array returned by the iterator
    • Method Detail

      • hasNext

        public boolean hasNext()
        Specified by:
        hasNext in interface java.util.Iterator<int[]>
        Returns:
        True until next is called the first time, then false
      • next

        public int[] next()
        Specified by:
        next in interface java.util.Iterator<int[]>
        Returns:
        the singleton in first activation; throws NSEE thereafter
      • remove

        public void remove()
        Not supported
        Specified by:
        remove in interface java.util.Iterator<int[]>