/[classpath]/classpath/java/lang/CharSequence.java
ViewVC logotype

Diff of /classpath/java/lang/CharSequence.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by mark, Tue Jan 22 22:26:59 2002 UTC revision 1.4 by ericb, Sat Mar 9 04:01:12 2002 UTC
# Line 1  Line 1 
1  /* java.lang.CharSequence -- Anything that has an indexed sequence of chars  /* CharSequence.java -- Anything that has an indexed sequence of chars
2     Copyright (C) 2001 Free Software Foundation, Inc.     Copyright (C) 2001, 2002 Free Software Foundation, Inc.
3    
4  This file is part of GNU Classpath.  This file is part of GNU Classpath.
5    
# Line 7  GNU Classpath is free software; you can Line 7  GNU Classpath is free software; you can
7  it under the terms of the GNU General Public License as published by  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation; either version 2, or (at your option)  the Free Software Foundation; either version 2, or (at your option)
9  any later version.  any later version.
10    
11  GNU Classpath is distributed in the hope that it will be useful, but  GNU Classpath is distributed in the hope that it will be useful, but
12  WITHOUT ANY WARRANTY; without even the implied warranty of  WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Line 44  package java.lang; Line 44  package java.lang;
44   * <code>CharBuffer</code> to give a uniform way to get chars at a certain   * <code>CharBuffer</code> to give a uniform way to get chars at a certain
45   * index, the number of characters in the sequence and a subrange of the   * index, the number of characters in the sequence and a subrange of the
46   * chars. Indexes start at 0 and the last index is <code>length()-1</code>.   * chars. Indexes start at 0 and the last index is <code>length()-1</code>.
47   * <p>   *
48   * Even when classes implement this interface they are not always   * <p>Even when classes implement this interface they are not always
49   * exchangeble because they might implement their compare, equals or hash   * exchangeble because they might implement their compare, equals or hash
50   * function differently. This means that in general one should not use a   * function differently. This means that in general one should not use a
51   * <code>CharSequence</code> as keys in collections since two sequences   * <code>CharSequence</code> as keys in collections since two sequences
# Line 54  package java.lang; Line 54  package java.lang;
54   * represented by different classes.   * represented by different classes.
55   *   *
56   * @author Mark Wielaard (mark@klomp.org)   * @author Mark Wielaard (mark@klomp.org)
  *  
57   * @since 1.4   * @since 1.4
58     * @status updated to 1.4
59   */   */
60    public interface CharSequence
61  public interface CharSequence {  {
62      /**
63      /**     * Returns the character at the given index.
64       * Returns the character at the given index.     *
65       *     * @param i the index to retrieve from
66       * @exception IndexOutOfBoundsException when <code>i &lt; 0</code> or     * @return the character at that location
67       * <code>i &gt; length()-1</code>.     * @throws IndexOutOfBoundsException if i &lt; 0 || i &gt;= length() - 1
68       */     */
69      char charAt(int i);    char charAt(int i);
70    
71      /**    /**
72       * Returns the length of the sequence.     * Returns the length of the sequence. This is the number of 16-bit
73       */     * characters in the sequence, which may differ from the length of the
74      int length();     * underlying encoding.
75       *
76      /**     * @return the sequence length
77       * Returns a new <code>CharSequence</char> of the indicated range.     */
78       *    int length();
79       * @exception IndexOutOfBoundsException when <code>begin &lt; 0</code>,  
80       *         <code>end &lt; 0</code>, <code>end &gt; length()</code> or    /**
81       *         <code>begin &gt; end</code>     * Returns a new <code>CharSequence</char> of the indicated range.
82       */     *
83      CharSequence subSequence(int begin, int end);     * @param begin the start index (inclusive)
84       * @param end the end index (exclusive)
85      /**     * @return a subsequence of this
86       * Returns the complete <code>CharSequence</code> as a <code>String</code>.     * @throws IndexOutOfBoundsException if begin &gt; end || begin &lt; 0 ||
87       * Classes that implement this interface should return a <code>String</code>     *         end &gt; length()
88       * which contains only the characters in the sequence in the correct order.     */
89       */    CharSequence subSequence(int begin, int end);
90      String toString();  
91      /**
92       * Returns the complete <code>CharSequence</code> as a <code>String</code>.
93       * Classes that implement this interface should return a <code>String</code>
94       * which contains only the characters in the sequence in the correct order.
95       *
96       * @return the character sequence as a String
97       */
98      String toString();
99  }  }

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26