org.jfree.util

## Class LineBreakIterator

- java.lang.Object
- - org.jfree.util.LineBreakIterator

- All Implemented Interfaces:
    java.util.Iterator

      public class LineBreakIterator
      extends java.lang.Object
      implements java.util.Iterator

  An iterator that breaks text into lines. The result is equal to BufferedReader.readLine().
  Author:
    Thomas Morgner

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `DONE` A useful constant.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `LineBreakIterator()` Default constructor.
    `LineBreakIterator(java.lang.String text)` Creates a new line break iterator.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `getText()` Returns the text to be broken up.
    `boolean` | `hasNext()` Returns `true` if the iteration has more elements.
    `java.lang.Object` | `next()` Returns the next element in the iteration.
    `int` | `nextPosition()` Returns the position of the next break.
    `int` | `nextWithEnd()` Same like next(), but returns the End-Of-Text as if there was a linebreak added (Reader.readLine() compatible)
    `void` | `remove()` Removes from the underlying collection the last element returned by the iterator (optional operation).
    `void` | `setText(java.lang.String text)` Sets the text to be broken up.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### DONE

          public static final int DONE

      A useful constant.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### LineBreakIterator

          public LineBreakIterator()

      Default constructor.

    - #### LineBreakIterator

          public LineBreakIterator(java.lang.String text)

      Creates a new line break iterator.
      Parameters:
        `text` - the text to be broken up.

  - ### Method Detail

    - #### nextPosition

          public int nextPosition()

      Returns the position of the next break.
      Returns:
        A position.

    - #### nextWithEnd

          public int nextWithEnd()

      Same like next(), but returns the End-Of-Text as if there was a linebreak added (Reader.readLine() compatible)
      Returns:
        The next position.

    - #### getText

          public java.lang.String getText()

      Returns the text to be broken up.
      Returns:
        The text.

    - #### setText

          public void setText(java.lang.String text)

      Sets the text to be broken up.
      Parameters:
        `text` - the text.

    - #### hasNext

          public boolean hasNext()

      Returns `true` if the iteration has more elements. (In other words, returns `true` if `next` would return an element rather than throwing an exception.)
      Specified by:
        `hasNext` in interface `java.util.Iterator`
      Returns:
        `true` if the iterator has more elements.

    - #### next

          public java.lang.Object next()

      Returns the next element in the iteration.
      Specified by:
        `next` in interface `java.util.Iterator`
      Returns:
        the next element in the iteration.

    - #### remove

          public void remove()

      Removes from the underlying collection the last element returned by the iterator (optional operation). This method can be called only once per call to `next`. The behavior of an iterator is unspecified if the underlying collection is modified while the iteration is in progress in any way other than by calling this method.
      Specified by:
        `remove` in interface `java.util.Iterator`
      Throws:
        `java.lang.UnsupportedOperationException` - if the `remove` operation is not supported by this Iterator.
        `java.lang.IllegalStateException` - if the `next` method has not yet been called, or the `remove` method has already been called after the last call to the `next` method.