Class SubSequence

  • All Implemented Interfaces:
    java.lang.CharSequence

    public class SubSequence
    extends java.lang.Object
    implements java.lang.CharSequence
    A CharSequence which is a by-reference subsequence of another CharSequence. This is particularly useful for regex matching without excessive string copying.

    Surprisingly, core Java does not seem to have this capability (apart from Segment, which seems misplaced in the Swing library); all of String.subSequence(int, int), StringBuffer.subSequence(int, int) and StringBuilder.subSequence(int, int) internally copy the requested string segment.

    Author:
    Curtis Rueden
    • Constructor Summary

      Constructors 
      Constructor Description
      SubSequence​(java.lang.CharSequence seq, int offset)  
      SubSequence​(java.lang.CharSequence seq, int offset, int length)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      char charAt​(int index)  
      int length()  
      SubSequence subSequence​(int start, int end)  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.lang.CharSequence

        chars, codePoints
    • Constructor Detail

      • SubSequence

        public SubSequence​(java.lang.CharSequence seq,
                           int offset)
      • SubSequence

        public SubSequence​(java.lang.CharSequence seq,
                           int offset,
                           int length)
    • Method Detail

      • length

        public int length()
        Specified by:
        length in interface java.lang.CharSequence
      • charAt

        public char charAt​(int index)
        Specified by:
        charAt in interface java.lang.CharSequence
      • subSequence

        public SubSequence subSequence​(int start,
                                       int end)
        Specified by:
        subSequence in interface java.lang.CharSequence
      • toString

        public java.lang.String toString()
        Specified by:
        toString in interface java.lang.CharSequence
        Overrides:
        toString in class java.lang.Object