You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by zr...@apache.org on 2018/07/18 12:57:14 UTC

[camel] branch master updated: CAMEL-12663: Java 11 support in camel-api-compo...

This is an automated email from the ASF dual-hosted git repository.

zregvart pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/master by this push:
     new 1d6bc2f  CAMEL-12663: Java 11 support in camel-api-compo...
1d6bc2f is described below

commit 1d6bc2f14d898336df69dc837c26634a3681f1bf
Author: Zoran Regvart <zr...@apache.org>
AuthorDate: Wed Jul 18 14:56:36 2018 +0200

    CAMEL-12663: Java 11 support in camel-api-compo...
    
    ...nent-maven-plugin
    
    Adds parsing logic for Java 11 style javadoc.
---
 .../java/org/apache/camel/maven/JavadocParser.java |    9 +-
 .../org/apache/camel/maven/JavadocParserTest.java  |   17 +-
 .../src/test/resources/Java11_String.html          | 4079 ++++++++++++++++++++
 .../src/test/resources/Java6_String.html           | 3543 +++++++++++++++++
 .../src/test/resources/Java7_String.html           | 3064 +++++++++++++++
 .../src/test/resources/Java8_String.html           | 3609 +++++++++++++++++
 6 files changed, 14310 insertions(+), 11 deletions(-)

diff --git a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/JavadocParser.java b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/JavadocParser.java
index f8ec14f..f714dc2 100644
--- a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/JavadocParser.java
+++ b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/JavadocParser.java
@@ -76,16 +76,19 @@ public class JavadocParser extends Parser {
             if (HTML.Tag.A.equals(htmlTag)) {
                 final SimpleAttributeSet attributes = getAttributes();
                 final Object name = attributes.getAttribute(HTML.Attribute.NAME);
-                if (name != null) {
+                final Object id = attributes.getAttribute(HTML.Attribute.ID);
+                if (name != null || id != null) {
                     final String nameAttr = (String) name;
+                    final String idAttr = (String) id;
                     if (parserState == ParserState.INIT
-                        && ("method_summary".equals(nameAttr) || "method.summary".equals(nameAttr))) {
+                        && ("method_summary".equals(nameAttr) || "method.summary".equals(nameAttr)
+                            || "method_summary".equals(idAttr) || "method.summary".equals(idAttr))) {
                         parserState = ParserState.METHOD_SUMMARY;
                     } else if (parserState == ParserState.METHOD) {
                         if (methodWithTypes == null) {
 
                             final String hrefAttr = (String) attributes.getAttribute(HTML.Attribute.HREF);
-                            if (hrefAttr != null && hrefAttr.contains(hrefPattern)) {
+                            if (hrefAttr != null && (hrefAttr.contains(hrefPattern) || hrefAttr.charAt(0) == '#')) {
                                 // unescape HTML
                                 String methodSignature = hrefAttr.substring(hrefAttr.indexOf('#') + 1);
                                 final int firstHyphen = methodSignature.indexOf('-');
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/JavadocParserTest.java b/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/JavadocParserTest.java
index 8ee9e1e..6181b33 100644
--- a/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/JavadocParserTest.java
+++ b/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/JavadocParserTest.java
@@ -17,7 +17,6 @@
 package org.apache.camel.maven;
 
 import java.io.InputStreamReader;
-import java.net.URL;
 import javax.swing.text.html.parser.DTD;
 
 import org.junit.Assert;
@@ -28,28 +27,30 @@ import org.junit.Test;
  */
 public class JavadocParserTest extends Assert {
 
-    private static final String JAVA6_STRING = "https://docs.oracle.com/javase/6/docs/api/java/lang/String.html";
-    private static final String JAVA7_STRING = "https://docs.oracle.com/javase/7/docs/api/java/lang/String.html";
-    private static final String JAVA8_STRING = "https://docs.oracle.com/javase/8/docs/api/java/lang/String.html";
-
     @Test
     public void testGetMethods() throws Exception {
         final DTD dtd = DTD.getDTD("html.dtd");
         final String javaDocPath = String.class.getName().replaceAll("\\.", "/") + ".html";
         final JavadocParser htmlParser = new JavadocParser(dtd, javaDocPath);
 
-        htmlParser.parse(new InputStreamReader(new URL(JAVA6_STRING).openStream(), "UTF-8"));
+        htmlParser.parse(new InputStreamReader(JavadocParserTest.class.getResourceAsStream("/Java6_String.html"), "UTF-8"));
         assertNull("Java6 getErrorMessage", htmlParser.getErrorMessage());
         assertEquals("Java6 getMethods", 65, htmlParser.getMethods().size());
         htmlParser.reset();
 
-        htmlParser.parse(new InputStreamReader(new URL(JAVA7_STRING).openStream(), "UTF-8"));
+        htmlParser.parse(new InputStreamReader(JavadocParserTest.class.getResourceAsStream("/Java7_String.html"), "UTF-8"));
         assertNull("Java7 getErrorMessage", htmlParser.getErrorMessage());
         assertEquals("Java7 getMethods", 65, htmlParser.getMethods().size());
         htmlParser.reset();
 
-        htmlParser.parse(new InputStreamReader(new URL(JAVA8_STRING).openStream(), "UTF-8"));
+        htmlParser.parse(new InputStreamReader(JavadocParserTest.class.getResourceAsStream("/Java8_String.html"), "UTF-8"));
         assertNull("Java8 getErrorMessage", htmlParser.getErrorMessage());
         assertEquals("Java8 getMethods", 67, htmlParser.getMethods().size());
+        htmlParser.reset();
+
+        htmlParser.parse(new InputStreamReader(JavadocParserTest.class.getResourceAsStream("/Java11_String.html"), "UTF-8"));
+        assertNull("Java11 getErrorMessage", htmlParser.getErrorMessage());
+        assertEquals("Java11 getMethods", 75, htmlParser.getMethods().size());
+        htmlParser.reset();
     }
 }
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java11_String.html b/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java11_String.html
new file mode 100644
index 0000000..29a46f2
--- /dev/null
+++ b/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java11_String.html
@@ -0,0 +1,4079 @@
+<!DOCTYPE HTML>
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<title>String (Java SE 11 &amp; JDK 11 [build 22])</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta name="keywords" content="java.lang.String class">
+<meta name="keywords" content="CASE_INSENSITIVE_ORDER">
+<meta name="keywords" content="length()">
+<meta name="keywords" content="isEmpty()">
+<meta name="keywords" content="charAt()">
+<meta name="keywords" content="codePointAt()">
+<meta name="keywords" content="codePointBefore()">
+<meta name="keywords" content="codePointCount()">
+<meta name="keywords" content="offsetByCodePoints()">
+<meta name="keywords" content="getChars()">
+<meta name="keywords" content="getBytes()">
+<meta name="keywords" content="equals()">
+<meta name="keywords" content="contentEquals()">
+<meta name="keywords" content="equalsIgnoreCase()">
+<meta name="keywords" content="compareTo()">
+<meta name="keywords" content="compareToIgnoreCase()">
+<meta name="keywords" content="regionMatches()">
+<meta name="keywords" content="startsWith()">
+<meta name="keywords" content="endsWith()">
+<meta name="keywords" content="hashCode()">
+<meta name="keywords" content="indexOf()">
+<meta name="keywords" content="lastIndexOf()">
+<meta name="keywords" content="substring()">
+<meta name="keywords" content="subSequence()">
+<meta name="keywords" content="concat()">
+<meta name="keywords" content="replace()">
+<meta name="keywords" content="matches()">
+<meta name="keywords" content="contains()">
+<meta name="keywords" content="replaceFirst()">
+<meta name="keywords" content="replaceAll()">
+<meta name="keywords" content="split()">
+<meta name="keywords" content="join()">
+<meta name="keywords" content="toLowerCase()">
+<meta name="keywords" content="toUpperCase()">
+<meta name="keywords" content="trim()">
+<meta name="keywords" content="strip()">
+<meta name="keywords" content="stripLeading()">
+<meta name="keywords" content="stripTrailing()">
+<meta name="keywords" content="isBlank()">
+<meta name="keywords" content="lines()">
+<meta name="keywords" content="toString()">
+<meta name="keywords" content="chars()">
+<meta name="keywords" content="codePoints()">
+<meta name="keywords" content="toCharArray()">
+<meta name="keywords" content="format()">
+<meta name="keywords" content="valueOf()">
+<meta name="keywords" content="copyValueOf()">
+<meta name="keywords" content="intern()">
+<meta name="keywords" content="repeat()">
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
+<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
+<!--[if IE]>
+<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
+<![endif]-->
+<script type="text/javascript" src="../../../jquery/jquery-3.3.1.js"></script>
+<script type="text/javascript" src="../../../jquery/jquery-migrate-3.0.1.js"></script>
+<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="String (Java SE 11 & JDK 11 [build 22])";
+        }
+    }
+    catch(err) {
+    }
+//-->
+var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":9,"i13":9,"i14":10,"i15":10,"i16":10,"i17":9,"i18":9,"i19":10,"i20":42,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":9,"i33":9,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":10,"i54":10," [...]
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
+var altColor = "altColor";
+var rowColor = "rowColor";
+var tableTab = "tableTab";
+var activeTableTab = "activeTableTab";
+var pathtoroot = "../../../";
+var useModuleDirectories = true;
+loadScripts(document, 'script');</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<header role="banner">
+<nav role="navigation">
+<div class="fixedNav"><div style="padding: 6px; text-align: center; font-size: 80%; font-family: DejaVu Sans, Arial, Helvetica, sans-serif; font-weight: normal;">This specification is not final and is subject to change. Use is subject to <a href="http://www.oracle.com/technetwork/java/javase/terms/license/java11speclicense.html">license terms</a>.</div>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a id="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="../../module-summary.html">Module</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/String.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-files/index-1.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+<div class="aboutLanguage"><div style="margin-top: 9px;"><strong>Java SE 11 &amp; JDK 11</strong> <br><strong>DRAFT 11-ea+22</strong></div></div>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<ul class="navListSearch">
+<li><label for="search">SEARCH:</label>
+<input type="text" id="search" value="search" disabled="disabled">
+<input type="reset" id="reset" value="reset" disabled="disabled">
+</li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+</div>
+<div class="navPadding">&nbsp;</div>
+<script type="text/javascript"><!--
+$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
+//-->
+</script>
+</nav>
+</header>
+<!-- ======== START OF CLASS DATA ======== -->
+<main role="main">
+<div class="header">
+<div class="subTitle"><span class="moduleLabelInType">Module</span>&nbsp;<a href="../../module-summary.html">java.base</a></div>
+<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">java.lang</a></div>
+<h2 title="Class String" class="title">Class String</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="Object.html" title="class in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>java.lang.String</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><code><a href="../io/Serializable.html" title="interface in java.io">Serializable</a></code>, <code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code>, <code><a href="Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;</code></dd>
+</dl>
+<hr>
+<pre>public final class <span class="typeNameLabel">String</span>
+extends <a href="Object.html" title="class in java.lang">Object</a>
+implements <a href="../io/Serializable.html" title="interface in java.io">Serializable</a>, <a href="Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;, <a href="CharSequence.html" title="interface in java.lang">CharSequence</a></pre>
+<div class="block">The <code>String</code> class represents character strings. All
+ string literals in Java programs, such as <code>"abc"</code>, are
+ implemented as instances of this class.
+ <p>
+ Strings are constant; their values cannot be changed after they
+ are created. String buffers support mutable strings.
+ Because String objects are immutable they can be shared. For example:
+ <blockquote><pre>
+     String str = "abc";
+ </pre></blockquote><p>
+ is equivalent to:
+ <blockquote><pre>
+     char data[] = {'a', 'b', 'c'};
+     String str = new String(data);
+ </pre></blockquote><p>
+ Here are some more examples of how strings can be used:
+ <blockquote><pre>
+     System.out.println("abc");
+     String cde = "cde";
+     System.out.println("abc" + cde);
+     String c = "abc".substring(2,3);
+     String d = cde.substring(1, 2);
+ </pre></blockquote>
+ <p>
+ The class <code>String</code> includes methods for examining
+ individual characters of the sequence, for comparing strings, for
+ searching strings, for extracting substrings, and for creating a
+ copy of a string with all characters translated to uppercase or to
+ lowercase. Case mapping is based on the Unicode Standard version
+ specified by the <a href="Character.html" title="class in java.lang"><code>Character</code></a> class.
+ <p>
+ The Java language provides special support for the string
+ concatenation operator (&nbsp;+&nbsp;), and for conversion of
+ other objects to strings. For additional information on string
+ concatenation and conversion, see <i>The Java&trade; Language Specification</i>.
+
+ <p> Unless otherwise noted, passing a <code>null</code> argument to a constructor
+ or method in this class will cause a <a href="NullPointerException.html" title="class in java.lang"><code>NullPointerException</code></a> to be
+ thrown.
+
+ <p>A <code>String</code> represents a string in the UTF-16 format
+ in which <em>supplementary characters</em> are represented by <em>surrogate
+ pairs</em> (see the section <a href="Character.html#unicode">Unicode
+ Character Representations</a> in the <code>Character</code> class for
+ more information).
+ Index values refer to <code>char</code> code units, so a supplementary
+ character uses two positions in a <code>String</code>.
+ <p>The <code>String</code> class provides methods for dealing with
+ Unicode code points (i.e., characters), in addition to those for
+ dealing with Unicode code units (i.e., <code>char</code> values).
+
+ <p>Unless otherwise noted, methods for comparing Strings do not take locale
+ into account.  The <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class provides methods for
+ finer-grain, locale-sensitive String comparison.</div>
+<dl>
+<dt><span class="simpleTagLabel">Implementation Note:</span></dt>
+<dd>The implementation of the string concatenation operator is left to
+ the discretion of a Java compiler, as long as the compiler ultimately conforms
+ to <i>The Java&trade; Language Specification</i>. For example, the <code>javac</code> compiler
+ may implement the operator with <code>StringBuffer</code>, <code>StringBuilder</code>,
+ or <code>java.lang.invoke.StringConcatFactory</code> depending on the JDK version. The
+ implementation of string conversion is typically through the method <code>toString</code>,
+ defined by <code>Object</code> and inherited by all classes in Java.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.0</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Object.html#toString()"><code>Object.toString()</code></a>, 
+<a href="StringBuffer.html" title="class in java.lang"><code>StringBuffer</code></a>, 
+<a href="StringBuilder.html" title="class in java.lang"><code>StringBuilder</code></a>, 
+<a href="../nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, 
+<a href="../../../serialized-form.html#java.lang.String">Serialized Form</a></dd>
+<dt><span class="simpleTagLabel">See <cite>The Java&trade; Language Specification</cite>:</span></dt>
+<dd>15.18.1 String Concatenation Operator +</dd>
+</dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="memberSummary">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Field</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../util/Comparator.html" title="interface in java.util">Comparator</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#CASE_INSENSITIVE_ORDER">CASE_INSENSITIVE_ORDER</a></span></code></th>
+<td class="colLast">
+<div class="block">A Comparator that orders <code>String</code> objects as by
+ <code>compareToIgnoreCase</code>.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Constructor</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">String</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Initializes a newly created <code>String</code> object so that it represents
+ an empty character sequence.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D)">String</a></span>&#8203;(byte[]&nbsp;bytes)</code></th>
+<td class="colLast">
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the platform's default charset.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int)">String</a></span>&#8203;(byte[]&nbsp;ascii,
+      int&nbsp;hibyte)</code></th>
+<td class="colLast">
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="deprecationComment">This method does not properly convert bytes into
+ characters.</div>
+</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int,int)">String</a></span>&#8203;(byte[]&nbsp;bytes,
+      int&nbsp;offset,
+      int&nbsp;length)</code></th>
+<td class="colLast">
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the platform's default charset.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int,int,int)">String</a></span>&#8203;(byte[]&nbsp;ascii,
+      int&nbsp;hibyte,
+      int&nbsp;offset,
+      int&nbsp;count)</code></th>
+<td class="colLast">
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="deprecationComment">This method does not properly convert bytes into characters.</div>
+</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int,int,java.lang.String)">String</a></span>&#8203;(byte[]&nbsp;bytes,
+      int&nbsp;offset,
+      int&nbsp;length,
+      <a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code></th>
+<td class="colLast">
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified charset.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int,int,java.nio.charset.Charset)">String</a></span>&#8203;(byte[]&nbsp;bytes,
+      int&nbsp;offset,
+      int&nbsp;length,
+      <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code></th>
+<td class="colLast">
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,java.lang.String)">String</a></span>&#8203;(byte[]&nbsp;bytes,
+      <a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code></th>
+<td class="colLast">
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,java.nio.charset.Charset)">String</a></span>&#8203;(byte[]&nbsp;bytes,
+      <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code></th>
+<td class="colLast">
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of
+ bytes using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(char%5B%5D)">String</a></span>&#8203;(char[]&nbsp;value)</code></th>
+<td class="colLast">
+<div class="block">Allocates a new <code>String</code> so that it represents the sequence of
+ characters currently contained in the character array argument.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(char%5B%5D,int,int)">String</a></span>&#8203;(char[]&nbsp;value,
+      int&nbsp;offset,
+      int&nbsp;count)</code></th>
+<td class="colLast">
+<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
+ of the character array argument.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int%5B%5D,int,int)">String</a></span>&#8203;(int[]&nbsp;codePoints,
+      int&nbsp;offset,
+      int&nbsp;count)</code></th>
+<td class="colLast">
+<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
+ of the <a href="Character.html#unicode">Unicode code point</a> array
+ argument.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String)">String</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;original)</code></th>
+<td class="colLast">
+<div class="block">Initializes a newly created <code>String</code> object so that it represents
+ the same sequence of characters as the argument; in other words, the
+ newly created string is a copy of the argument string.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.StringBuffer)">String</a></span>&#8203;(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;buffer)</code></th>
+<td class="colLast">
+<div class="block">Allocates a new string that contains the sequence of characters
+ currently contained in the string buffer argument.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.StringBuilder)">String</a></span>&#8203;(<a href="StringBuilder.html" title="class in java.lang">StringBuilder</a>&nbsp;builder)</code></th>
+<td class="colLast">
+<div class="block">Allocates a new string that contains the sequence of characters
+ currently contained in the string builder argument.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
+<!-- ========== METHOD SUMMARY =========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="memberSummary">
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr id="i0" class="altColor">
+<td class="colFirst"><code>char</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#charAt(int)">charAt</a></span>&#8203;(int&nbsp;index)</code></th>
+<td class="colLast">
+<div class="block">Returns the <code>char</code> value at the
+ specified index.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="../util/stream/IntStream.html" title="interface in java.util.stream">IntStream</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#chars()">chars</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns a stream of <code>int</code> zero-extending the <code>char</code> values
+ from this sequence.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#codePointAt(int)">codePointAt</a></span>&#8203;(int&nbsp;index)</code></th>
+<td class="colLast">
+<div class="block">Returns the character (Unicode code point) at the specified
+ index.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#codePointBefore(int)">codePointBefore</a></span>&#8203;(int&nbsp;index)</code></th>
+<td class="colLast">
+<div class="block">Returns the character (Unicode code point) before the specified
+ index.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#codePointCount(int,int)">codePointCount</a></span>&#8203;(int&nbsp;beginIndex,
+              int&nbsp;endIndex)</code></th>
+<td class="colLast">
+<div class="block">Returns the number of Unicode code points in the specified text
+ range of this <code>String</code>.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="../util/stream/IntStream.html" title="interface in java.util.stream">IntStream</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#codePoints()">codePoints</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns a stream of code point values from this sequence.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#compareTo(java.lang.String)">compareTo</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;anotherString)</code></th>
+<td class="colLast">
+<div class="block">Compares two strings lexicographically.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#compareToIgnoreCase(java.lang.String)">compareToIgnoreCase</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</code></th>
+<td class="colLast">
+<div class="block">Compares two strings lexicographically, ignoring case
+ differences.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#concat(java.lang.String)">concat</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</code></th>
+<td class="colLast">
+<div class="block">Concatenates the specified string to the end of this string.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contains(java.lang.CharSequence)">contains</a></span>&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;s)</code></th>
+<td class="colLast">
+<div class="block">Returns true if and only if this string contains the specified
+ sequence of char values.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contentEquals(java.lang.CharSequence)">contentEquals</a></span>&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;cs)</code></th>
+<td class="colLast">
+<div class="block">Compares this string to the specified <code>CharSequence</code>.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contentEquals(java.lang.StringBuffer)">contentEquals</a></span>&#8203;(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;sb)</code></th>
+<td class="colLast">
+<div class="block">Compares this string to the specified <code>StringBuffer</code>.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#copyValueOf(char%5B%5D)">copyValueOf</a></span>&#8203;(char[]&nbsp;data)</code></th>
+<td class="colLast">
+<div class="block">Equivalent to <a href="#valueOf(char%5B%5D)"><code>valueOf(char[])</code></a>.</div>
+</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#copyValueOf(char%5B%5D,int,int)">copyValueOf</a></span>&#8203;(char[]&nbsp;data,
+           int&nbsp;offset,
+           int&nbsp;count)</code></th>
+<td class="colLast">
+<div class="block">Equivalent to <a href="#valueOf(char%5B%5D,int,int)"><code>valueOf(char[], int, int)</code></a>.</div>
+</td>
+</tr>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#endsWith(java.lang.String)">endsWith</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;suffix)</code></th>
+<td class="colLast">
+<div class="block">Tests if this string ends with the specified suffix.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#equals(java.lang.Object)">equals</a></span>&#8203;(<a href="Object.html" title="class in java.lang">Object</a>&nbsp;anObject)</code></th>
+<td class="colLast">
+<div class="block">Compares this string to the specified object.</div>
+</td>
+</tr>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#equalsIgnoreCase(java.lang.String)">equalsIgnoreCase</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;anotherString)</code></th>
+<td class="colLast">
+<div class="block">Compares this <code>String</code> to another <code>String</code>, ignoring case
+ considerations.</div>
+</td>
+</tr>
+<tr id="i17" class="rowColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#format(java.lang.String,java.lang.Object...)">format</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;format,
+      <a href="Object.html" title="class in java.lang">Object</a>...&nbsp;args)</code></th>
+<td class="colLast">
+<div class="block">Returns a formatted string using the specified format string and
+ arguments.</div>
+</td>
+</tr>
+<tr id="i18" class="altColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#format(java.util.Locale,java.lang.String,java.lang.Object...)">format</a></span>&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;l,
+      <a href="String.html" title="class in java.lang">String</a>&nbsp;format,
+      <a href="Object.html" title="class in java.lang">Object</a>...&nbsp;args)</code></th>
+<td class="colLast">
+<div class="block">Returns a formatted string using the specified locale, format string,
+ and arguments.</div>
+</td>
+</tr>
+<tr id="i19" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes()">getBytes</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the
+ platform's default charset, storing the result into a new byte array.</div>
+</td>
+</tr>
+<tr id="i20" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes(int,int,byte%5B%5D,int)">getBytes</a></span>&#8203;(int&nbsp;srcBegin,
+        int&nbsp;srcEnd,
+        byte[]&nbsp;dst,
+        int&nbsp;dstBegin)</code></th>
+<td class="colLast">
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="deprecationComment">This method does not properly convert characters into
+ bytes.</div>
+</div>
+</td>
+</tr>
+<tr id="i21" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes(java.lang.String)">getBytes</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code></th>
+<td class="colLast">
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the named
+ charset, storing the result into a new byte array.</div>
+</td>
+</tr>
+<tr id="i22" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes(java.nio.charset.Charset)">getBytes</a></span>&#8203;(<a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code></th>
+<td class="colLast">
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the given
+ <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>, storing the result into a
+ new byte array.</div>
+</td>
+</tr>
+<tr id="i23" class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getChars(int,int,char%5B%5D,int)">getChars</a></span>&#8203;(int&nbsp;srcBegin,
+        int&nbsp;srcEnd,
+        char[]&nbsp;dst,
+        int&nbsp;dstBegin)</code></th>
+<td class="colLast">
+<div class="block">Copies characters from this string into the destination character
+ array.</div>
+</td>
+</tr>
+<tr id="i24" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hashCode()">hashCode</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns a hash code for this string.</div>
+</td>
+</tr>
+<tr id="i25" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#indexOf(int)">indexOf</a></span>&#8203;(int&nbsp;ch)</code></th>
+<td class="colLast">
+<div class="block">Returns the index within this string of the first occurrence of
+ the specified character.</div>
+</td>
+</tr>
+<tr id="i26" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#indexOf(int,int)">indexOf</a></span>&#8203;(int&nbsp;ch,
+       int&nbsp;fromIndex)</code></th>
+<td class="colLast">
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified character, starting the search at the specified index.</div>
+</td>
+</tr>
+<tr id="i27" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#indexOf(java.lang.String)">indexOf</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</code></th>
+<td class="colLast">
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified substring.</div>
+</td>
+</tr>
+<tr id="i28" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#indexOf(java.lang.String,int)">indexOf</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str,
+       int&nbsp;fromIndex)</code></th>
+<td class="colLast">
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified substring, starting at the specified index.</div>
+</td>
+</tr>
+<tr id="i29" class="rowColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#intern()">intern</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns a canonical representation for the string object.</div>
+</td>
+</tr>
+<tr id="i30" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isBlank()">isBlank</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns <code>true</code> if the string is empty or contains only
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a> codepoints,
+ otherwise <code>false</code>.</div>
+</td>
+</tr>
+<tr id="i31" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isEmpty()">isEmpty</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns <code>true</code> if, and only if, <a href="#length()"><code>length()</code></a> is <code>0</code>.</div>
+</td>
+</tr>
+<tr id="i32" class="altColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#join(java.lang.CharSequence,java.lang.CharSequence...)">join</a></span>&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
+    <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>...&nbsp;elements)</code></th>
+<td class="colLast">
+<div class="block">Returns a new String composed of copies of the
+ <code>CharSequence elements</code> joined together with a copy of
+ the specified <code>delimiter</code>.</div>
+</td>
+</tr>
+<tr id="i33" class="rowColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#join(java.lang.CharSequence,java.lang.Iterable)">join</a></span>&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
+    <a href="Iterable.html" title="interface in java.lang">Iterable</a>&lt;? extends <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&gt;&nbsp;elements)</code></th>
+<td class="colLast">
+<div class="block">Returns a new <code>String</code> composed of copies of the
+ <code>CharSequence elements</code> joined together with a copy of the
+ specified <code>delimiter</code>.</div>
+</td>
+</tr>
+<tr id="i34" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lastIndexOf(int)">lastIndexOf</a></span>&#8203;(int&nbsp;ch)</code></th>
+<td class="colLast">
+<div class="block">Returns the index within this string of the last occurrence of
+ the specified character.</div>
+</td>
+</tr>
+<tr id="i35" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lastIndexOf(int,int)">lastIndexOf</a></span>&#8203;(int&nbsp;ch,
+           int&nbsp;fromIndex)</code></th>
+<td class="colLast">
+<div class="block">Returns the index within this string of the last occurrence of
+ the specified character, searching backward starting at the
+ specified index.</div>
+</td>
+</tr>
+<tr id="i36" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lastIndexOf(java.lang.String)">lastIndexOf</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</code></th>
+<td class="colLast">
+<div class="block">Returns the index within this string of the last occurrence of the
+ specified substring.</div>
+</td>
+</tr>
+<tr id="i37" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lastIndexOf(java.lang.String,int)">lastIndexOf</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str,
+           int&nbsp;fromIndex)</code></th>
+<td class="colLast">
+<div class="block">Returns the index within this string of the last occurrence of the
+ specified substring, searching backward starting at the specified index.</div>
+</td>
+</tr>
+<tr id="i38" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#length()">length</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the length of this string.</div>
+</td>
+</tr>
+<tr id="i39" class="rowColor">
+<td class="colFirst"><code><a href="../util/stream/Stream.html" title="interface in java.util.stream">Stream</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lines()">lines</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns a stream of substrings extracted from this string
+ partitioned by line terminators.</div>
+</td>
+</tr>
+<tr id="i40" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#matches(java.lang.String)">matches</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex)</code></th>
+<td class="colLast">
+<div class="block">Tells whether or not this string matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
+</td>
+</tr>
+<tr id="i41" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#offsetByCodePoints(int,int)">offsetByCodePoints</a></span>&#8203;(int&nbsp;index,
+                  int&nbsp;codePointOffset)</code></th>
+<td class="colLast">
+<div class="block">Returns the index within this <code>String</code> that is
+ offset from the given <code>index</code> by
+ <code>codePointOffset</code> code points.</div>
+</td>
+</tr>
+<tr id="i42" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#regionMatches(boolean,int,java.lang.String,int,int)">regionMatches</a></span>&#8203;(boolean&nbsp;ignoreCase,
+             int&nbsp;toffset,
+             <a href="String.html" title="class in java.lang">String</a>&nbsp;other,
+             int&nbsp;ooffset,
+             int&nbsp;len)</code></th>
+<td class="colLast">
+<div class="block">Tests if two string regions are equal.</div>
+</td>
+</tr>
+<tr id="i43" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#regionMatches(int,java.lang.String,int,int)">regionMatches</a></span>&#8203;(int&nbsp;toffset,
+             <a href="String.html" title="class in java.lang">String</a>&nbsp;other,
+             int&nbsp;ooffset,
+             int&nbsp;len)</code></th>
+<td class="colLast">
+<div class="block">Tests if two string regions are equal.</div>
+</td>
+</tr>
+<tr id="i44" class="altColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#repeat(int)">repeat</a></span>&#8203;(int&nbsp;count)</code></th>
+<td class="colLast">
+<div class="block">Returns a string whose value is the concatenation of this
+ string repeated <code>count</code> times.</div>
+</td>
+</tr>
+<tr id="i45" class="rowColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#replace(char,char)">replace</a></span>&#8203;(char&nbsp;oldChar,
+       char&nbsp;newChar)</code></th>
+<td class="colLast">
+<div class="block">Returns a string resulting from replacing all occurrences of
+ <code>oldChar</code> in this string with <code>newChar</code>.</div>
+</td>
+</tr>
+<tr id="i46" class="altColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#replace(java.lang.CharSequence,java.lang.CharSequence)">replace</a></span>&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;target,
+       <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;replacement)</code></th>
+<td class="colLast">
+<div class="block">Replaces each substring of this string that matches the literal target
+ sequence with the specified literal replacement sequence.</div>
+</td>
+</tr>
+<tr id="i47" class="rowColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#replaceAll(java.lang.String,java.lang.String)">replaceAll</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
+          <a href="String.html" title="class in java.lang">String</a>&nbsp;replacement)</code></th>
+<td class="colLast">
+<div class="block">Replaces each substring of this string that matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a> with the
+ given replacement.</div>
+</td>
+</tr>
+<tr id="i48" class="altColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#replaceFirst(java.lang.String,java.lang.String)">replaceFirst</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
+            <a href="String.html" title="class in java.lang">String</a>&nbsp;replacement)</code></th>
+<td class="colLast">
+<div class="block">Replaces the first substring of this string that matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a> with the
+ given replacement.</div>
+</td>
+</tr>
+<tr id="i49" class="rowColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a>[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#split(java.lang.String)">split</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex)</code></th>
+<td class="colLast">
+<div class="block">Splits this string around matches of the given <a href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
+</td>
+</tr>
+<tr id="i50" class="altColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a>[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#split(java.lang.String,int)">split</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
+     int&nbsp;limit)</code></th>
+<td class="colLast">
+<div class="block">Splits this string around matches of the given
+ <a href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
+</td>
+</tr>
+<tr id="i51" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#startsWith(java.lang.String)">startsWith</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;prefix)</code></th>
+<td class="colLast">
+<div class="block">Tests if this string starts with the specified prefix.</div>
+</td>
+</tr>
+<tr id="i52" class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#startsWith(java.lang.String,int)">startsWith</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;prefix,
+          int&nbsp;toffset)</code></th>
+<td class="colLast">
+<div class="block">Tests if the substring of this string beginning at the
+ specified index starts with the specified prefix.</div>
+</td>
+</tr>
+<tr id="i53" class="rowColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#strip()">strip</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns a string whose value is this string, with all leading
+ and trailing <a href="Character.html#isWhitespace(int)"><code>white space</code></a>
+ removed.</div>
+</td>
+</tr>
+<tr id="i54" class="altColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stripLeading()">stripLeading</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns a string whose value is this string, with all leading
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a> removed.</div>
+</td>
+</tr>
+<tr id="i55" class="rowColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stripTrailing()">stripTrailing</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns a string whose value is this string, with all trailing
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a> removed.</div>
+</td>
+</tr>
+<tr id="i56" class="altColor">
+<td class="colFirst"><code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#subSequence(int,int)">subSequence</a></span>&#8203;(int&nbsp;beginIndex,
+           int&nbsp;endIndex)</code></th>
+<td class="colLast">
+<div class="block">Returns a character sequence that is a subsequence of this sequence.</div>
+</td>
+</tr>
+<tr id="i57" class="rowColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#substring(int)">substring</a></span>&#8203;(int&nbsp;beginIndex)</code></th>
+<td class="colLast">
+<div class="block">Returns a string that is a substring of this string.</div>
+</td>
+</tr>
+<tr id="i58" class="altColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#substring(int,int)">substring</a></span>&#8203;(int&nbsp;beginIndex,
+         int&nbsp;endIndex)</code></th>
+<td class="colLast">
+<div class="block">Returns a string that is a substring of this string.</div>
+</td>
+</tr>
+<tr id="i59" class="rowColor">
+<td class="colFirst"><code>char[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toCharArray()">toCharArray</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Converts this string to a new character array.</div>
+</td>
+</tr>
+<tr id="i60" class="altColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toLowerCase()">toLowerCase</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Converts all of the characters in this <code>String</code> to lower
+ case using the rules of the default locale.</div>
+</td>
+</tr>
+<tr id="i61" class="rowColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toLowerCase(java.util.Locale)">toLowerCase</a></span>&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</code></th>
+<td class="colLast">
+<div class="block">Converts all of the characters in this <code>String</code> to lower
+ case using the rules of the given <code>Locale</code>.</div>
+</td>
+</tr>
+<tr id="i62" class="altColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
+<td class="colLast">
+<div class="block">This object (which is already a string!)</div>
+</td>
+</tr>
+<tr id="i63" class="rowColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toUpperCase()">toUpperCase</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Converts all of the characters in this <code>String</code> to upper
+ case using the rules of the default locale.</div>
+</td>
+</tr>
+<tr id="i64" class="altColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toUpperCase(java.util.Locale)">toUpperCase</a></span>&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</code></th>
+<td class="colLast">
+<div class="block">Converts all of the characters in this <code>String</code> to upper
+ case using the rules of the given <code>Locale</code>.</div>
+</td>
+</tr>
+<tr id="i65" class="rowColor">
+<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#trim()">trim</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns a string whose value is this string, with all leading
+ and trailing space removed, where space is defined
+ as any character whose codepoint is less than or equal to
+ <code>'U+0020'</code> (the space character).</div>
+</td>
+</tr>
+<tr id="i66" class="altColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(boolean)">valueOf</a></span>&#8203;(boolean&nbsp;b)</code></th>
+<td class="colLast">
+<div class="block">Returns the string representation of the <code>boolean</code> argument.</div>
+</td>
+</tr>
+<tr id="i67" class="rowColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(char)">valueOf</a></span>&#8203;(char&nbsp;c)</code></th>
+<td class="colLast">
+<div class="block">Returns the string representation of the <code>char</code>
+ argument.</div>
+</td>
+</tr>
+<tr id="i68" class="altColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(char%5B%5D)">valueOf</a></span>&#8203;(char[]&nbsp;data)</code></th>
+<td class="colLast">
+<div class="block">Returns the string representation of the <code>char</code> array
+ argument.</div>
+</td>
+</tr>
+<tr id="i69" class="rowColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(char%5B%5D,int,int)">valueOf</a></span>&#8203;(char[]&nbsp;data,
+       int&nbsp;offset,
+       int&nbsp;count)</code></th>
+<td class="colLast">
+<div class="block">Returns the string representation of a specific subarray of the
+ <code>char</code> array argument.</div>
+</td>
+</tr>
+<tr id="i70" class="altColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(double)">valueOf</a></span>&#8203;(double&nbsp;d)</code></th>
+<td class="colLast">
+<div class="block">Returns the string representation of the <code>double</code> argument.</div>
+</td>
+</tr>
+<tr id="i71" class="rowColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(float)">valueOf</a></span>&#8203;(float&nbsp;f)</code></th>
+<td class="colLast">
+<div class="block">Returns the string representation of the <code>float</code> argument.</div>
+</td>
+</tr>
+<tr id="i72" class="altColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(int)">valueOf</a></span>&#8203;(int&nbsp;i)</code></th>
+<td class="colLast">
+<div class="block">Returns the string representation of the <code>int</code> argument.</div>
+</td>
+</tr>
+<tr id="i73" class="rowColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(long)">valueOf</a></span>&#8203;(long&nbsp;l)</code></th>
+<td class="colLast">
+<div class="block">Returns the string representation of the <code>long</code> argument.</div>
+</td>
+</tr>
+<tr id="i74" class="altColor">
+<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(java.lang.Object)">valueOf</a></span>&#8203;(<a href="Object.html" title="class in java.lang">Object</a>&nbsp;obj)</code></th>
+<td class="colLast">
+<div class="block">Returns the string representation of the <code>Object</code> argument.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods declared in class&nbsp;java.lang.<a href="Object.html" title="class in java.lang">Object</a></h3>
+<code><a href="Object.html#clone()">clone</a>, <a href="Object.html#finalize()">finalize</a>, <a href="Object.html#getClass()">getClass</a>, <a href="Object.html#notify()">notify</a>, <a href="Object.html#notifyAll()">notifyAll</a>, <a href="Object.html#wait()">wait</a>, <a href="Object.html#wait(long)">wait</a>, <a href="Object.html#wait(long,int)">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="field.detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a id="CASE_INSENSITIVE_ORDER">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>CASE_INSENSITIVE_ORDER</h4>
+<pre>public static final&nbsp;<a href="../util/Comparator.html" title="interface in java.util">Comparator</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt; CASE_INSENSITIVE_ORDER</pre>
+<div class="block">A Comparator that orders <code>String</code> objects as by
+ <code>compareToIgnoreCase</code>. This comparator is serializable.
+ <p>
+ Note that this Comparator does <em>not</em> take locale into account,
+ and will result in an unsatisfactory ordering for certain locales.
+ The <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class provides locale-sensitive comparison.</div>
+<dl>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.2</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a></dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="constructor.detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a id="&lt;init&gt;()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String()</pre>
+<div class="block">Initializes a newly created <code>String</code> object so that it represents
+ an empty character sequence.  Note that use of this constructor is
+ unnecessary since Strings are immutable.</div>
+</li>
+</ul>
+<a id="&lt;init&gt;(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;original)</pre>
+<div class="block">Initializes a newly created <code>String</code> object so that it represents
+ the same sequence of characters as the argument; in other words, the
+ newly created string is a copy of the argument string. Unless an
+ explicit copy of <code>original</code> is needed, use of this constructor is
+ unnecessary since Strings are immutable.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>original</code> - A <code>String</code></dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(char[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(char[]&nbsp;value)</pre>
+<div class="block">Allocates a new <code>String</code> so that it represents the sequence of
+ characters currently contained in the character array argument. The
+ contents of the character array are copied; subsequent modification of
+ the character array does not affect the newly created string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>value</code> - The initial value of the string</dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(char[],int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(char[]&nbsp;value,
+              int&nbsp;offset,
+              int&nbsp;count)</pre>
+<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
+ of the character array argument. The <code>offset</code> argument is the
+ index of the first character of the subarray and the <code>count</code>
+ argument specifies the length of the subarray. The contents of the
+ subarray are copied; subsequent modification of the character array does
+ not affect the newly created string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>value</code> - Array that is the source of characters</dd>
+<dd><code>offset</code> - The initial offset</dd>
+<dd><code>count</code> - The length</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>count</code> is negative, or
+          <code>offset</code> is greater than <code>value.length - count</code></dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(int[],int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(int[]&nbsp;codePoints,
+              int&nbsp;offset,
+              int&nbsp;count)</pre>
+<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
+ of the <a href="Character.html#unicode">Unicode code point</a> array
+ argument.  The <code>offset</code> argument is the index of the first code
+ point of the subarray and the <code>count</code> argument specifies the
+ length of the subarray.  The contents of the subarray are converted to
+ <code>char</code>s; subsequent modification of the <code>int</code> array does not
+ affect the newly created string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>codePoints</code> - Array that is the source of Unicode code points</dd>
+<dd><code>offset</code> - The initial offset</dd>
+<dd><code>count</code> - The length</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - If any invalid Unicode code point is found in <code>
+          codePoints</code></dd>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>count</code> is negative, or
+          <code>offset</code> is greater than <code>codePoints.length - count</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(byte[],int,int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre><a href="Deprecated.html" title="annotation in java.lang">@Deprecated</a>(<a href="Deprecated.html#since()">since</a>="1.1")
+public&nbsp;String&#8203;(byte[]&nbsp;ascii,
+              int&nbsp;hibyte,
+              int&nbsp;offset,
+              int&nbsp;count)</pre>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
+<div class="deprecationComment">This method does not properly convert bytes into characters.
+ As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <code>String</code> constructors that take a <a href="../nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, charset name, or that use the platform's
+ default charset.</div>
+</div>
+<div class="block">Allocates a new <code>String</code> constructed from a subarray of an array
+ of 8-bit integer values.
+
+ <p> The <code>offset</code> argument is the index of the first byte of the
+ subarray, and the <code>count</code> argument specifies the length of the
+ subarray.
+
+ <p> Each <code>byte</code> in the subarray is converted to a <code>char</code> as
+ specified in the <a href="#%3Cinit%3E(byte%5B%5D,int)"><code>String(byte[],int)</code></a> constructor.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>ascii</code> - The bytes to be converted to characters</dd>
+<dd><code>hibyte</code> - The top 8 bits of each 16-bit Unicode code unit</dd>
+<dd><code>offset</code> - The initial offset</dd>
+<dd><code>count</code> - The length</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>count</code> is negative, or
+          <code>offset</code> is greater than <code>ascii.length - count</code></dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="#%3Cinit%3E(byte%5B%5D,int)"><code>String(byte[], int)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D,int,int,java.lang.String)"><code>String(byte[], int, int, java.lang.String)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D,int,int,java.nio.charset.Charset)"><code>String(byte[], int, int, java.nio.charset.Charset)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D,int,int)"><code>String(byte[], int, int)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D,java.lang.String)"><code>String(byte[], java.lang.String)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D,java.nio.charset.Charset)"><code>String(byte[], java.nio.charset.Charset)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D)"><code>String(byte[])</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(byte[],int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre><a href="Deprecated.html" title="annotation in java.lang">@Deprecated</a>(<a href="Deprecated.html#since()">since</a>="1.1")
+public&nbsp;String&#8203;(byte[]&nbsp;ascii,
+              int&nbsp;hibyte)</pre>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
+<div class="deprecationComment">This method does not properly convert bytes into
+ characters.  As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <code>String</code> constructors that take a <a href="../nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, charset name, or that use the platform's
+ default charset.</div>
+</div>
+<div class="block">Allocates a new <code>String</code> containing characters constructed from
+ an array of 8-bit integer values. Each character <i>c</i> in the
+ resulting string is constructed from the corresponding component
+ <i>b</i> in the byte array such that:
+
+ <blockquote><pre>
+     <b><i>c</i></b> == (char)(((hibyte &amp; 0xff) &lt;&lt; 8)
+                         | (<b><i>b</i></b> &amp; 0xff))
+ </pre></blockquote></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>ascii</code> - The bytes to be converted to characters</dd>
+<dd><code>hibyte</code> - The top 8 bits of each 16-bit Unicode code unit</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="#%3Cinit%3E(byte%5B%5D,int,int,java.lang.String)"><code>String(byte[], int, int, java.lang.String)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D,int,int,java.nio.charset.Charset)"><code>String(byte[], int, int, java.nio.charset.Charset)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D,int,int)"><code>String(byte[], int, int)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D,java.lang.String)"><code>String(byte[], java.lang.String)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D,java.nio.charset.Charset)"><code>String(byte[], java.nio.charset.Charset)</code></a>, 
+<a href="#%3Cinit%3E(byte%5B%5D)"><code>String(byte[])</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(byte[],int,int,java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes,
+              int&nbsp;offset,
+              int&nbsp;length,
+              <a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)
+       throws <a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified charset.  The length of the new <code>String</code>
+ is a function of the charset, and hence may not be equal to the length
+ of the subarray.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the given charset is unspecified.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
+<dd><code>offset</code> - The index of the first byte to decode</dd>
+<dd><code>length</code> - The number of bytes to decode</dd>
+<dd><code>charsetName</code> - The name of a supported <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></code> - If the named charset is not supported</dd>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>length</code> is negative, or
+          <code>offset</code> is greater than <code>bytes.length - length</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.1</dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(byte[],int,int,java.nio.charset.Charset)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes,
+              int&nbsp;offset,
+              int&nbsp;length,
+              <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.
+ The length of the new <code>String</code> is a function of the charset, and
+ hence may not be equal to the length of the subarray.
+
+ <p> This method always replaces malformed-input and unmappable-character
+ sequences with this charset's default replacement string.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
+<dd><code>offset</code> - The index of the first byte to decode</dd>
+<dd><code>length</code> - The number of bytes to decode</dd>
+<dd><code>charset</code> - The <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a> to be used to
+         decode the <code>bytes</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>length</code> is negative, or
+          <code>offset</code> is greater than <code>bytes.length - length</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.6</dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(byte[],java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes,
+              <a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)
+       throws <a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.  The
+ length of the new <code>String</code> is a function of the charset, and hence
+ may not be equal to the length of the byte array.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the given charset is unspecified.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
+<dd><code>charsetName</code> - The name of a supported <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></code> - If the named charset is not supported</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.1</dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(byte[],java.nio.charset.Charset)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes,
+              <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of
+ bytes using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.
+ The length of the new <code>String</code> is a function of the charset, and
+ hence may not be equal to the length of the byte array.
+
+ <p> This method always replaces malformed-input and unmappable-character
+ sequences with this charset's default replacement string.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
+<dd><code>charset</code> - The <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a> to be used to
+         decode the <code>bytes</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.6</dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(byte[],int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes,
+              int&nbsp;offset,
+              int&nbsp;length)</pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the platform's default charset.  The length of the new
+ <code>String</code> is a function of the charset, and hence may not be equal
+ to the length of the subarray.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the default charset is unspecified.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
+<dd><code>offset</code> - The index of the first byte to decode</dd>
+<dd><code>length</code> - The number of bytes to decode</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>length</code> is negative, or
+          <code>offset</code> is greater than <code>bytes.length - length</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.1</dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(byte[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes)</pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the platform's default charset.  The length of the new <code>
+ String</code> is a function of the charset, and hence may not be equal to the
+ length of the byte array.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the default charset is unspecified.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.1</dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(java.lang.StringBuffer)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;buffer)</pre>
+<div class="block">Allocates a new string that contains the sequence of characters
+ currently contained in the string buffer argument. The contents of the
+ string buffer are copied; subsequent modification of the string buffer
+ does not affect the newly created string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>buffer</code> - A <code>StringBuffer</code></dd>
+</dl>
+</li>
+</ul>
+<a id="&lt;init&gt;(java.lang.StringBuilder)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String&#8203;(<a href="StringBuilder.html" title="class in java.lang">StringBuilder</a>&nbsp;builder)</pre>
+<div class="block">Allocates a new string that contains the sequence of characters
+ currently contained in the string builder argument. The contents of the
+ string builder are copied; subsequent modification of the string builder
+ does not affect the newly created string.
+
+ <p> This constructor is provided to ease migration to <code>
+ StringBuilder</code>. Obtaining a string from a string builder via the <code>
+ toString</code> method is likely to run faster and is generally preferred.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>builder</code> - A <code>StringBuilder</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+<!-- ============ METHOD DETAIL ========== -->
+<section role="region">
+<ul class="blockList">
+<li class="blockList"><a id="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a id="length()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>length</h4>
+<pre>public&nbsp;int&nbsp;length()</pre>
+<div class="block">Returns the length of this string.
+ The length is equal to the number of <a href="Character.html#unicode">Unicode
+ code units</a> in the string.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="CharSequence.html#length()">length</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the length of the sequence of characters represented by this
+          object.</dd>
+</dl>
+</li>
+</ul>
+<a id="isEmpty()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isEmpty</h4>
+<pre>public&nbsp;boolean&nbsp;isEmpty()</pre>
+<div class="block">Returns <code>true</code> if, and only if, <a href="#length()"><code>length()</code></a> is <code>0</code>.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if <a href="#length()"><code>length()</code></a> is <code>0</code>, otherwise
+ <code>false</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.6</dd>
+</dl>
+</li>
+</ul>
+<a id="charAt(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>charAt</h4>
+<pre>public&nbsp;char&nbsp;charAt&#8203;(int&nbsp;index)</pre>
+<div class="block">Returns the <code>char</code> value at the
+ specified index. An index ranges from <code>0</code> to
+ <code>length() - 1</code>. The first <code>char</code> value of the sequence
+ is at index <code>0</code>, the next at index <code>1</code>,
+ and so on, as for array indexing.
+
+ <p>If the <code>char</code> value specified by the index is a
+ <a href="Character.html#unicode">surrogate</a>, the surrogate
+ value is returned.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="CharSequence.html#charAt(int)">charAt</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>index</code> - the index of the <code>char</code> value.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the <code>char</code> value at the specified index of this string.
+             The first <code>char</code> value is at index <code>0</code>.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the <code>index</code>
+             argument is negative or not less than the length of this
+             string.</dd>
+</dl>
+</li>
+</ul>
+<a id="codePointAt(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>codePointAt</h4>
+<pre>public&nbsp;int&nbsp;codePointAt&#8203;(int&nbsp;index)</pre>
+<div class="block">Returns the character (Unicode code point) at the specified
+ index. The index refers to <code>char</code> values
+ (Unicode code units) and ranges from <code>0</code> to
+ <a href="#length()"><code>length()</code></a><code> - 1</code>.
+
+ <p> If the <code>char</code> value specified at the given index
+ is in the high-surrogate range, the following index is less
+ than the length of this <code>String</code>, and the
+ <code>char</code> value at the following index is in the
+ low-surrogate range, then the supplementary code point
+ corresponding to this surrogate pair is returned. Otherwise,
+ the <code>char</code> value at the given index is returned.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>index</code> - the index to the <code>char</code> values</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the code point value of the character at the
+             <code>index</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the <code>index</code>
+             argument is negative or not less than the length of this
+             string.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+</dl>
+</li>
+</ul>
+<a id="codePointBefore(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>codePointBefore</h4>
+<pre>public&nbsp;int&nbsp;codePointBefore&#8203;(int&nbsp;index)</pre>
+<div class="block">Returns the character (Unicode code point) before the specified
+ index. The index refers to <code>char</code> values
+ (Unicode code units) and ranges from <code>1</code> to <a href="CharSequence.html#length()"><code>length</code></a>.
+
+ <p> If the <code>char</code> value at <code>(index - 1)</code>
+ is in the low-surrogate range, <code>(index - 2)</code> is not
+ negative, and the <code>char</code> value at <code>(index -
+ 2)</code> is in the high-surrogate range, then the
+ supplementary code point value of the surrogate pair is
+ returned. If the <code>char</code> value at <code>index -
+ 1</code> is an unpaired low-surrogate or a high-surrogate, the
+ surrogate value is returned.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>index</code> - the index following the code point that should be returned</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the Unicode code point value before the given index.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the <code>index</code>
+            argument is less than 1 or greater than the length
+            of this string.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+</dl>
+</li>
+</ul>
+<a id="codePointCount(int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>codePointCount</h4>
+<pre>public&nbsp;int&nbsp;codePointCount&#8203;(int&nbsp;beginIndex,
+                          int&nbsp;endIndex)</pre>
+<div class="block">Returns the number of Unicode code points in the specified text
+ range of this <code>String</code>. The text range begins at the
+ specified <code>beginIndex</code> and extends to the
+ <code>char</code> at index <code>endIndex - 1</code>. Thus the
+ length (in <code>char</code>s) of the text range is
+ <code>endIndex-beginIndex</code>. Unpaired surrogates within
+ the text range count as one code point each.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>beginIndex</code> - the index to the first <code>char</code> of
+ the text range.</dd>
+<dd><code>endIndex</code> - the index after the last <code>char</code> of
+ the text range.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the number of Unicode code points in the specified text
+ range</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the
+ <code>beginIndex</code> is negative, or <code>endIndex</code>
+ is larger than the length of this <code>String</code>, or
+ <code>beginIndex</code> is larger than <code>endIndex</code>.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+</dl>
+</li>
+</ul>
+<a id="offsetByCodePoints(int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>offsetByCodePoints</h4>
+<pre>public&nbsp;int&nbsp;offsetByCodePoints&#8203;(int&nbsp;index,
+                              int&nbsp;codePointOffset)</pre>
+<div class="block">Returns the index within this <code>String</code> that is
+ offset from the given <code>index</code> by
+ <code>codePointOffset</code> code points. Unpaired surrogates
+ within the text range given by <code>index</code> and
+ <code>codePointOffset</code> count as one code point each.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>index</code> - the index to be offset</dd>
+<dd><code>codePointOffset</code> - the offset in code points</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the index within this <code>String</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if <code>index</code>
+   is negative or larger then the length of this
+   <code>String</code>, or if <code>codePointOffset</code> is positive
+   and the substring starting with <code>index</code> has fewer
+   than <code>codePointOffset</code> code points,
+   or if <code>codePointOffset</code> is negative and the substring
+   before <code>index</code> has fewer than the absolute value
+   of <code>codePointOffset</code> code points.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+</dl>
+</li>
+</ul>
+<a id="getChars(int,int,char[],int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getChars</h4>
+<pre>public&nbsp;void&nbsp;getChars&#8203;(int&nbsp;srcBegin,
+                     int&nbsp;srcEnd,
+                     char[]&nbsp;dst,
+                     int&nbsp;dstBegin)</pre>
+<div class="block">Copies characters from this string into the destination character
+ array.
+ <p>
+ The first character to be copied is at index <code>srcBegin</code>;
+ the last character to be copied is at index <code>srcEnd-1</code>
+ (thus the total number of characters to be copied is
+ <code>srcEnd-srcBegin</code>). The characters are copied into the
+ subarray of <code>dst</code> starting at index <code>dstBegin</code>
+ and ending at index:
+ <blockquote><pre>
+     dstBegin + (srcEnd-srcBegin) - 1
+ </pre></blockquote></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>srcBegin</code> - index of the first character in the string
+                        to copy.</dd>
+<dd><code>srcEnd</code> - index after the last character in the string
+                        to copy.</dd>
+<dd><code>dst</code> - the destination array.</dd>
+<dd><code>dstBegin</code> - the start offset in the destination array.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If any of the following
+            is true:
+            <ul><li><code>srcBegin</code> is negative.
+            <li><code>srcBegin</code> is greater than <code>srcEnd</code>
+            <li><code>srcEnd</code> is greater than the length of this
+                string
+            <li><code>dstBegin</code> is negative
+            <li><code>dstBegin+(srcEnd-srcBegin)</code> is larger than
+                <code>dst.length</code></ul></dd>
+</dl>
+</li>
+</ul>
+<a id="getBytes(int,int,byte[],int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBytes</h4>
+<pre><a href="Deprecated.html" title="annotation in java.lang">@Deprecated</a>(<a href="Deprecated.html#since()">since</a>="1.1")
+public&nbsp;void&nbsp;getBytes&#8203;(int&nbsp;srcBegin,
+                     int&nbsp;srcEnd,
+                     byte[]&nbsp;dst,
+                     int&nbsp;dstBegin)</pre>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
+<div class="deprecationComment">This method does not properly convert characters into
+ bytes.  As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <a href="#getBytes()"><code>getBytes()</code></a> method, which uses the platform's default charset.</div>
+</div>
+<div class="block">Copies characters from this string into the destination byte array. Each
+ byte receives the 8 low-order bits of the corresponding character. The
+ eight high-order bits of each character are not copied and do not
+ participate in the transfer in any way.
+
+ <p> The first character to be copied is at index <code>srcBegin</code>; the
+ last character to be copied is at index <code>srcEnd-1</code>.  The total
+ number of characters to be copied is <code>srcEnd-srcBegin</code>. The
+ characters, converted to bytes, are copied into the subarray of <code>
+ dst</code> starting at index <code>dstBegin</code> and ending at index:
+
+ <blockquote><pre>
+     dstBegin + (srcEnd-srcBegin) - 1
+ </pre></blockquote></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>srcBegin</code> - Index of the first character in the string to copy</dd>
+<dd><code>srcEnd</code> - Index after the last character in the string to copy</dd>
+<dd><code>dst</code> - The destination array</dd>
+<dd><code>dstBegin</code> - The start offset in the destination array</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If any of the following is true:
+          <ul>
+            <li> <code>srcBegin</code> is negative
+            <li> <code>srcBegin</code> is greater than <code>srcEnd</code>
+            <li> <code>srcEnd</code> is greater than the length of this String
+            <li> <code>dstBegin</code> is negative
+            <li> <code>dstBegin+(srcEnd-srcBegin)</code> is larger than <code>
+                 dst.length</code>
+          </ul></dd>
+</dl>
+</li>
+</ul>
+<a id="getBytes(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBytes</h4>
+<pre>public&nbsp;byte[]&nbsp;getBytes&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)
+                throws <a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the named
+ charset, storing the result into a new byte array.
+
+ <p> The behavior of this method when this string cannot be encoded in
+ the given charset is unspecified.  The <a href="../nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more control
+ over the encoding process is required.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>charsetName</code> - The name of a supported <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The resultant byte array</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></code> - If the named charset is not supported</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.1</dd>
+</dl>
+</li>
+</ul>
+<a id="getBytes(java.nio.charset.Charset)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBytes</h4>
+<pre>public&nbsp;byte[]&nbsp;getBytes&#8203;(<a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the given
+ <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>, storing the result into a
+ new byte array.
+
+ <p> This method always replaces malformed-input and unmappable-character
+ sequences with this charset's default replacement byte array.  The
+ <a href="../nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more
+ control over the encoding process is required.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>charset</code> - The <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> to be used to encode
+         the <code>String</code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The resultant byte array</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.6</dd>
+</dl>
+</li>
+</ul>
+<a id="getBytes()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBytes</h4>
+<pre>public&nbsp;byte[]&nbsp;getBytes()</pre>
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the
+ platform's default charset, storing the result into a new byte array.
+
+ <p> The behavior of this method when this string cannot be encoded in
+ the default charset is unspecified.  The <a href="../nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more control
+ over the encoding process is required.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The resultant byte array</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.1</dd>
+</dl>
+</li>
+</ul>
+<a id="equals(java.lang.Object)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>equals</h4>
+<pre>public&nbsp;boolean&nbsp;equals&#8203;(<a href="Object.html" title="class in java.lang">Object</a>&nbsp;anObject)</pre>
+<div class="block">Compares this string to the specified object.  The result is <code>
+ true</code> if and only if the argument is not <code>null</code> and is a <code>
+ String</code> object that represents the same sequence of characters as this
+ object.
+
+ <p>For finer-grained String comparison, refer to
+ <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a>.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="Object.html#equals(java.lang.Object)">equals</a></code>&nbsp;in class&nbsp;<code><a href="Object.html" title="class in java.lang">Object</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>anObject</code> - The object to compare this <code>String</code> against</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the given object represents a <code>String</code>
+          equivalent to this string, <code>false</code> otherwise</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="#compareTo(java.lang.String)"><code>compareTo(String)</code></a>, 
+<a href="#equalsIgnoreCase(java.lang.String)"><code>equalsIgnoreCase(String)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="contentEquals(java.lang.StringBuffer)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>contentEquals</h4>
+<pre>public&nbsp;boolean&nbsp;contentEquals&#8203;(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;sb)</pre>
+<div class="block">Compares this string to the specified <code>StringBuffer</code>.  The result
+ is <code>true</code> if and only if this <code>String</code> represents the same
+ sequence of characters as the specified <code>StringBuffer</code>. This method
+ synchronizes on the <code>StringBuffer</code>.
+
+ <p>For finer-grained String comparison, refer to
+ <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>sb</code> - The <code>StringBuffer</code> to compare this <code>String</code> against</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if this <code>String</code> represents the same
+          sequence of characters as the specified <code>StringBuffer</code>,
+          <code>false</code> otherwise</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.4</dd>
+</dl>
+</li>
+</ul>
+<a id="contentEquals(java.lang.CharSequence)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>contentEquals</h4>
+<pre>public&nbsp;boolean&nbsp;contentEquals&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;cs)</pre>
+<div class="block">Compares this string to the specified <code>CharSequence</code>.  The
+ result is <code>true</code> if and only if this <code>String</code> represents the
+ same sequence of char values as the specified sequence. Note that if the
+ <code>CharSequence</code> is a <code>StringBuffer</code> then the method
+ synchronizes on it.
+
+ <p>For finer-grained String comparison, refer to
+ <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>cs</code> - The sequence to compare this <code>String</code> against</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if this <code>String</code> represents the same
+          sequence of char values as the specified sequence, <code>
+          false</code> otherwise</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+</dl>
+</li>
+</ul>
+<a id="equalsIgnoreCase(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>equalsIgnoreCase</h4>
+<pre>public&nbsp;boolean&nbsp;equalsIgnoreCase&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;anotherString)</pre>
+<div class="block">Compares this <code>String</code> to another <code>String</code>, ignoring case
+ considerations.  Two strings are considered equal ignoring case if they
+ are of the same length and corresponding characters in the two strings
+ are equal ignoring case.
+
+ <p> Two characters <code>c1</code> and <code>c2</code> are considered the same
+ ignoring case if at least one of the following is true:
+ <ul>
+   <li> The two characters are the same (as compared by the
+        <code>==</code> operator)
+   <li> Calling <code>Character.toLowerCase(Character.toUpperCase(char))</code>
+        on each character produces the same result
+ </ul>
+
+ <p>Note that this method does <em>not</em> take locale into account, and
+ will result in unsatisfactory results for certain locales.  The
+ <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class provides locale-sensitive comparison.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>anotherString</code> - The <code>String</code> to compare this <code>String</code> against</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the argument is not <code>null</code> and it
+          represents an equivalent <code>String</code> ignoring case; <code>
+          false</code> otherwise</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="#equals(java.lang.Object)"><code>equals(Object)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="compareTo(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>compareTo</h4>
+<pre>public&nbsp;int&nbsp;compareTo&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;anotherString)</pre>
+<div class="block">Compares two strings lexicographically.
+ The comparison is based on the Unicode value of each character in
+ the strings. The character sequence represented by this
+ <code>String</code> object is compared lexicographically to the
+ character sequence represented by the argument string. The result is
+ a negative integer if this <code>String</code> object
+ lexicographically precedes the argument string. The result is a
+ positive integer if this <code>String</code> object lexicographically
+ follows the argument string. The result is zero if the strings
+ are equal; <code>compareTo</code> returns <code>0</code> exactly when
+ the <a href="#equals(java.lang.Object)"><code>equals(Object)</code></a> method would return <code>true</code>.
+ <p>
+ This is the definition of lexicographic ordering. If two strings are
+ different, then either they have different characters at some index
+ that is a valid index for both strings, or their lengths are different,
+ or both. If they have different characters at one or more index
+ positions, let <i>k</i> be the smallest such index; then the string
+ whose character at position <i>k</i> has the smaller value, as
+ determined by using the <code>&lt;</code> operator, lexicographically precedes the
+ other string. In this case, <code>compareTo</code> returns the
+ difference of the two character values at position <code>k</code> in
+ the two string -- that is, the value:
+ <blockquote><pre>
+ this.charAt(k)-anotherString.charAt(k)
+ </pre></blockquote>
+ If there is no index position at which they differ, then the shorter
+ string lexicographically precedes the longer string. In this case,
+ <code>compareTo</code> returns the difference of the lengths of the
+ strings -- that is, the value:
+ <blockquote><pre>
+ this.length()-anotherString.length()
+ </pre></blockquote>
+
+ <p>For finer-grained String comparison, refer to
+ <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a>.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="Comparable.html#compareTo(T)">compareTo</a></code>&nbsp;in interface&nbsp;<code><a href="Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>anotherString</code> - the <code>String</code> to be compared.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the value <code>0</code> if the argument string is equal to
+          this string; a value less than <code>0</code> if this string
+          is lexicographically less than the string argument; and a
+          value greater than <code>0</code> if this string is
+          lexicographically greater than the string argument.</dd>
+</dl>
+</li>
+</ul>
+<a id="compareToIgnoreCase(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>compareToIgnoreCase</h4>
+<pre>public&nbsp;int&nbsp;compareToIgnoreCase&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
+<div class="block">Compares two strings lexicographically, ignoring case
+ differences. This method returns an integer whose sign is that of
+ calling <code>compareTo</code> with normalized versions of the strings
+ where case differences have been eliminated by calling
+ <code>Character.toLowerCase(Character.toUpperCase(character))</code> on
+ each character.
+ <p>
+ Note that this method does <em>not</em> take locale into account,
+ and will result in an unsatisfactory ordering for certain locales.
+ The <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class provides locale-sensitive comparison.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>str</code> - the <code>String</code> to be compared.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a negative integer, zero, or a positive integer as the
+          specified String is greater than, equal to, or less
+          than this String, ignoring case considerations.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.2</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="regionMatches(int,java.lang.String,int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>regionMatches</h4>
+<pre>public&nbsp;boolean&nbsp;regionMatches&#8203;(int&nbsp;toffset,
+                             <a href="String.html" title="class in java.lang">String</a>&nbsp;other,
+                             int&nbsp;ooffset,
+                             int&nbsp;len)</pre>
+<div class="block">Tests if two string regions are equal.
+ <p>
+ A substring of this <code>String</code> object is compared to a substring
+ of the argument other. The result is true if these substrings
+ represent identical character sequences. The substring of this
+ <code>String</code> object to be compared begins at index <code>toffset</code>
+ and has length <code>len</code>. The substring of other to be compared
+ begins at index <code>ooffset</code> and has length <code>len</code>. The
+ result is <code>false</code> if and only if at least one of the following
+ is true:
+ <ul><li><code>toffset</code> is negative.
+ <li><code>ooffset</code> is negative.
+ <li><code>toffset+len</code> is greater than the length of this
+ <code>String</code> object.
+ <li><code>ooffset+len</code> is greater than the length of the other
+ argument.
+ <li>There is some nonnegative integer <i>k</i> less than <code>len</code>
+ such that:
+ <code>this.charAt(toffset + </code><i>k</i><code>) != other.charAt(ooffset + </code>
+ <i>k</i><code>)</code>
+ </ul>
+
+ <p>Note that this method does <em>not</em> take locale into account.  The
+ <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class provides locale-sensitive comparison.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>toffset</code> - the starting offset of the subregion in this string.</dd>
+<dd><code>other</code> - the string argument.</dd>
+<dd><code>ooffset</code> - the starting offset of the subregion in the string
+                    argument.</dd>
+<dd><code>len</code> - the number of characters to compare.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the specified subregion of this string
+          exactly matches the specified subregion of the string argument;
+          <code>false</code> otherwise.</dd>
+</dl>
+</li>
+</ul>
+<a id="regionMatches(boolean,int,java.lang.String,int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>regionMatches</h4>
+<pre>public&nbsp;boolean&nbsp;regionMatches&#8203;(boolean&nbsp;ignoreCase,
+                             int&nbsp;toffset,
+                             <a href="String.html" title="class in java.lang">String</a>&nbsp;other,
+                             int&nbsp;ooffset,
+                             int&nbsp;len)</pre>
+<div class="block">Tests if two string regions are equal.
+ <p>
+ A substring of this <code>String</code> object is compared to a substring
+ of the argument <code>other</code>. The result is <code>true</code> if these
+ substrings represent character sequences that are the same, ignoring
+ case if and only if <code>ignoreCase</code> is true. The substring of
+ this <code>String</code> object to be compared begins at index
+ <code>toffset</code> and has length <code>len</code>. The substring of
+ <code>other</code> to be compared begins at index <code>ooffset</code> and
+ has length <code>len</code>. The result is <code>false</code> if and only if
+ at least one of the following is true:
+ <ul><li><code>toffset</code> is negative.
+ <li><code>ooffset</code> is negative.
+ <li><code>toffset+len</code> is greater than the length of this
+ <code>String</code> object.
+ <li><code>ooffset+len</code> is greater than the length of the other
+ argument.
+ <li><code>ignoreCase</code> is <code>false</code> and there is some nonnegative
+ integer <i>k</i> less than <code>len</code> such that:
+ <blockquote><pre>
+ this.charAt(toffset+k) != other.charAt(ooffset+k)
+ </pre></blockquote>
+ <li><code>ignoreCase</code> is <code>true</code> and there is some nonnegative
+ integer <i>k</i> less than <code>len</code> such that:
+ <blockquote><pre>
+ Character.toLowerCase(Character.toUpperCase(this.charAt(toffset+k))) !=
+     Character.toLowerCase(Character.toUpperCase(other.charAt(ooffset+k)))
+ </pre></blockquote>
+ </ul>
+
+ <p>Note that this method does <em>not</em> take locale into account,
+ and will result in unsatisfactory results for certain locales when
+ <code>ignoreCase</code> is <code>true</code>.  The <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class
+ provides locale-sensitive comparison.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>ignoreCase</code> - if <code>true</code>, ignore case when comparing
+                       characters.</dd>
+<dd><code>toffset</code> - the starting offset of the subregion in this
+                       string.</dd>
+<dd><code>other</code> - the string argument.</dd>
+<dd><code>ooffset</code> - the starting offset of the subregion in the string
+                       argument.</dd>
+<dd><code>len</code> - the number of characters to compare.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the specified subregion of this string
+          matches the specified subregion of the string argument;
+          <code>false</code> otherwise. Whether the matching is exact
+          or case insensitive depends on the <code>ignoreCase</code>
+          argument.</dd>
+</dl>
+</li>
+</ul>
+<a id="startsWith(java.lang.String,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>startsWith</h4>
+<pre>public&nbsp;boolean&nbsp;startsWith&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;prefix,
+                          int&nbsp;toffset)</pre>
+<div class="block">Tests if the substring of this string beginning at the
+ specified index starts with the specified prefix.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>prefix</code> - the prefix.</dd>
+<dd><code>toffset</code> - where to begin looking in this string.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the character sequence represented by the
+          argument is a prefix of the substring of this object starting
+          at index <code>toffset</code>; <code>false</code> otherwise.
+          The result is <code>false</code> if <code>toffset</code> is
+          negative or greater than the length of this
+          <code>String</code> object; otherwise the result is the same
+          as the result of the expression
+          <pre>
+          this.substring(toffset).startsWith(prefix)
+          </pre></dd>
+</dl>
+</li>
+</ul>
+<a id="startsWith(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>startsWith</h4>
+<pre>public&nbsp;boolean&nbsp;startsWith&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;prefix)</pre>
+<div class="block">Tests if this string starts with the specified prefix.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>prefix</code> - the prefix.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the character sequence represented by the
+          argument is a prefix of the character sequence represented by
+          this string; <code>false</code> otherwise.
+          Note also that <code>true</code> will be returned if the
+          argument is an empty string or is equal to this
+          <code>String</code> object as determined by the
+          <a href="#equals(java.lang.Object)"><code>equals(Object)</code></a> method.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.0</dd>
+</dl>
+</li>
+</ul>
+<a id="endsWith(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>endsWith</h4>
+<pre>public&nbsp;boolean&nbsp;endsWith&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;suffix)</pre>
+<div class="block">Tests if this string ends with the specified suffix.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>suffix</code> - the suffix.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the character sequence represented by the
+          argument is a suffix of the character sequence represented by
+          this object; <code>false</code> otherwise. Note that the
+          result will be <code>true</code> if the argument is the
+          empty string or is equal to this <code>String</code> object
+          as determined by the <a href="#equals(java.lang.Object)"><code>equals(Object)</code></a> method.</dd>
+</dl>
+</li>
+</ul>
+<a id="hashCode()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hashCode</h4>
+<pre>public&nbsp;int&nbsp;hashCode()</pre>
+<div class="block">Returns a hash code for this string. The hash code for a
+ <code>String</code> object is computed as
+ <blockquote><pre>
+ s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
+ </pre></blockquote>
+ using <code>int</code> arithmetic, where <code>s[i]</code> is the
+ <i>i</i>th character of the string, <code>n</code> is the length of
+ the string, and <code>^</code> indicates exponentiation.
+ (The hash value of the empty string is zero.)</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="Object.html#hashCode()">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="Object.html" title="class in java.lang">Object</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a hash code value for this object.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Object.html#equals(java.lang.Object)"><code>Object.equals(java.lang.Object)</code></a>, 
+<a href="System.html#identityHashCode(java.lang.Object)"><code>System.identityHashCode(java.lang.Object)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="indexOf(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>indexOf</h4>
+<pre>public&nbsp;int&nbsp;indexOf&#8203;(int&nbsp;ch)</pre>
+<div class="block">Returns the index within this string of the first occurrence of
+ the specified character. If a character with value
+ <code>ch</code> occurs in the character sequence represented by
+ this <code>String</code> object, then the index (in Unicode
+ code units) of the first such occurrence is returned. For
+ values of <code>ch</code> in the range from 0 to 0xFFFF
+ (inclusive), this is the smallest value <i>k</i> such that:
+ <blockquote><pre>
+ this.charAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ smallest value <i>k</i> such that:
+ <blockquote><pre>
+ this.codePointAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true. In either case, if no such character occurs in this
+ string, then <code>-1</code> is returned.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>ch</code> - a character (Unicode code point).</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the index of the first occurrence of the character in the
+          character sequence represented by this object, or
+          <code>-1</code> if the character does not occur.</dd>
+</dl>
+</li>
+</ul>
+<a id="indexOf(int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>indexOf</h4>
+<pre>public&nbsp;int&nbsp;indexOf&#8203;(int&nbsp;ch,
+                   int&nbsp;fromIndex)</pre>
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified character, starting the search at the specified index.
+ <p>
+ If a character with value <code>ch</code> occurs in the
+ character sequence represented by this <code>String</code>
+ object at an index no smaller than <code>fromIndex</code>, then
+ the index of the first such occurrence is returned. For values
+ of <code>ch</code> in the range from 0 to 0xFFFF (inclusive),
+ this is the smallest value <i>k</i> such that:
+ <blockquote><pre>
+ (this.charAt(<i>k</i>) == ch) <code>&amp;&amp;</code> (<i>k</i> &gt;= fromIndex)
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ smallest value <i>k</i> such that:
+ <blockquote><pre>
+ (this.codePointAt(<i>k</i>) == ch) <code>&amp;&amp;</code> (<i>k</i> &gt;= fromIndex)
+ </pre></blockquote>
+ is true. In either case, if no such character occurs in this
+ string at or after position <code>fromIndex</code>, then
+ <code>-1</code> is returned.
+
+ <p>
+ There is no restriction on the value of <code>fromIndex</code>. If it
+ is negative, it has the same effect as if it were zero: this entire
+ string may be searched. If it is greater than the length of this
+ string, it has the same effect as if it were equal to the length of
+ this string: <code>-1</code> is returned.
+
+ <p>All indices are specified in <code>char</code> values
+ (Unicode code units).</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>ch</code> - a character (Unicode code point).</dd>
+<dd><code>fromIndex</code> - the index to start the search from.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the index of the first occurrence of the character in the
+          character sequence represented by this object that is greater
+          than or equal to <code>fromIndex</code>, or <code>-1</code>
+          if the character does not occur.</dd>
+</dl>
+</li>
+</ul>
+<a id="lastIndexOf(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lastIndexOf</h4>
+<pre>public&nbsp;int&nbsp;lastIndexOf&#8203;(int&nbsp;ch)</pre>
+<div class="block">Returns the index within this string of the last occurrence of
+ the specified character. For values of <code>ch</code> in the
+ range from 0 to 0xFFFF (inclusive), the index (in Unicode code
+ units) returned is the largest value <i>k</i> such that:
+ <blockquote><pre>
+ this.charAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ largest value <i>k</i> such that:
+ <blockquote><pre>
+ this.codePointAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true.  In either case, if no such character occurs in this
+ string, then <code>-1</code> is returned.  The
+ <code>String</code> is searched backwards starting at the last
+ character.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>ch</code> - a character (Unicode code point).</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the index of the last occurrence of the character in the
+          character sequence represented by this object, or
+          <code>-1</code> if the character does not occur.</dd>
+</dl>
+</li>
+</ul>
+<a id="lastIndexOf(int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lastIndexOf</h4>
+<pre>public&nbsp;int&nbsp;lastIndexOf&#8203;(int&nbsp;ch,
+                       int&nbsp;fromIndex)</pre>
+<div class="block">Returns the index within this string of the last occurrence of
+ the specified character, searching backward starting at the
+ specified index. For values of <code>ch</code> in the range
+ from 0 to 0xFFFF (inclusive), the index returned is the largest
+ value <i>k</i> such that:
+ <blockquote><pre>
+ (this.charAt(<i>k</i>) == ch) <code>&amp;&amp;</code> (<i>k</i> &lt;= fromIndex)
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ largest value <i>k</i> such that:
+ <blockquote><pre>
+ (this.codePointAt(<i>k</i>) == ch) <code>&amp;&amp;</code> (<i>k</i> &lt;= fromIndex)
+ </pre></blockquote>
+ is true. In either case, if no such character occurs in this
+ string at or before position <code>fromIndex</code>, then
+ <code>-1</code> is returned.
+
+ <p>All indices are specified in <code>char</code> values
+ (Unicode code units).</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>ch</code> - a character (Unicode code point).</dd>
+<dd><code>fromIndex</code> - the index to start the search from. There is no
+          restriction on the value of <code>fromIndex</code>. If it is
+          greater than or equal to the length of this string, it has
+          the same effect as if it were equal to one less than the
+          length of this string: this entire string may be searched.
+          If it is negative, it has the same effect as if it were -1:
+          -1 is returned.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the index of the last occurrence of the character in the
+          character sequence represented by this object that is less
+          than or equal to <code>fromIndex</code>, or <code>-1</code>
+          if the character does not occur before that point.</dd>
+</dl>
+</li>
+</ul>
+<a id="indexOf(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>indexOf</h4>
+<pre>public&nbsp;int&nbsp;indexOf&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified substring.
+
+ <p>The returned index is the smallest value <code>k</code> for which:
+ <pre><code>
+ this.startsWith(str, k)
+ </code></pre>
+ If no such value of <code>k</code> exists, then <code>-1</code> is returned.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>str</code> - the substring to search for.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the index of the first occurrence of the specified substring,
+          or <code>-1</code> if there is no such occurrence.</dd>
+</dl>
+</li>
+</ul>
+<a id="indexOf(java.lang.String,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>indexOf</h4>
+<pre>public&nbsp;int&nbsp;indexOf&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str,
+                   int&nbsp;fromIndex)</pre>
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified substring, starting at the specified index.
+
+ <p>The returned index is the smallest value <code>k</code> for which:
+ <pre><code>
+     k &gt;= Math.min(fromIndex, this.length()) &amp;&amp;
+                   this.startsWith(str, k)
+ </code></pre>
+ If no such value of <code>k</code> exists, then <code>-1</code> is returned.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>str</code> - the substring to search for.</dd>
+<dd><code>fromIndex</code> - the index from which to start the search.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the index of the first occurrence of the specified substring,
+          starting at the specified index,
+          or <code>-1</code> if there is no such occurrence.</dd>
+</dl>
+</li>
+</ul>
+<a id="lastIndexOf(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lastIndexOf</h4>
+<pre>public&nbsp;int&nbsp;lastIndexOf&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
+<div class="block">Returns the index within this string of the last occurrence of the
+ specified substring.  The last occurrence of the empty string ""
+ is considered to occur at the index value <code>this.length()</code>.
+
+ <p>The returned index is the largest value <code>k</code> for which:
+ <pre><code>
+ this.startsWith(str, k)
+ </code></pre>
+ If no such value of <code>k</code> exists, then <code>-1</code> is returned.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>str</code> - the substring to search for.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the index of the last occurrence of the specified substring,
+          or <code>-1</code> if there is no such occurrence.</dd>
+</dl>
+</li>
+</ul>
+<a id="lastIndexOf(java.lang.String,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lastIndexOf</h4>
+<pre>public&nbsp;int&nbsp;lastIndexOf&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str,
+                       int&nbsp;fromIndex)</pre>
+<div class="block">Returns the index within this string of the last occurrence of the
+ specified substring, searching backward starting at the specified index.
+
+ <p>The returned index is the largest value <code>k</code> for which:
+ <pre><code>
+     k &lt;= Math.min(fromIndex, this.length()) &amp;&amp;
+                   this.startsWith(str, k)
+ </code></pre>
+ If no such value of <code>k</code> exists, then <code>-1</code> is returned.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>str</code> - the substring to search for.</dd>
+<dd><code>fromIndex</code> - the index to start the search from.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the index of the last occurrence of the specified substring,
+          searching backward from the specified index,
+          or <code>-1</code> if there is no such occurrence.</dd>
+</dl>
+</li>
+</ul>
+<a id="substring(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>substring</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;substring&#8203;(int&nbsp;beginIndex)</pre>
+<div class="block">Returns a string that is a substring of this string. The
+ substring begins with the character at the specified index and
+ extends to the end of this string. <p>
+ Examples:
+ <blockquote><pre>
+ "unhappy".substring(2) returns "happy"
+ "Harbison".substring(3) returns "bison"
+ "emptiness".substring(9) returns "" (an empty string)
+ </pre></blockquote></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>beginIndex</code> - the beginning index, inclusive.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the specified substring.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if
+             <code>beginIndex</code> is negative or larger than the
+             length of this <code>String</code> object.</dd>
+</dl>
+</li>
+</ul>
+<a id="substring(int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>substring</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;substring&#8203;(int&nbsp;beginIndex,
+                        int&nbsp;endIndex)</pre>
+<div class="block">Returns a string that is a substring of this string. The
+ substring begins at the specified <code>beginIndex</code> and
+ extends to the character at index <code>endIndex - 1</code>.
+ Thus the length of the substring is <code>endIndex-beginIndex</code>.
+ <p>
+ Examples:
+ <blockquote><pre>
+ "hamburger".substring(4, 8) returns "urge"
+ "smiles".substring(1, 5) returns "mile"
+ </pre></blockquote></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>beginIndex</code> - the beginning index, inclusive.</dd>
+<dd><code>endIndex</code> - the ending index, exclusive.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the specified substring.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the
+             <code>beginIndex</code> is negative, or
+             <code>endIndex</code> is larger than the length of
+             this <code>String</code> object, or
+             <code>beginIndex</code> is larger than
+             <code>endIndex</code>.</dd>
+</dl>
+</li>
+</ul>
+<a id="subSequence(int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>subSequence</h4>
+<pre>public&nbsp;<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;subSequence&#8203;(int&nbsp;beginIndex,
+                                int&nbsp;endIndex)</pre>
+<div class="block">Returns a character sequence that is a subsequence of this sequence.
+
+ <p> An invocation of this method of the form
+
+ <blockquote><pre>
+ str.subSequence(begin,&nbsp;end)</pre></blockquote>
+
+ behaves in exactly the same way as the invocation
+
+ <blockquote><pre>
+ str.substring(begin,&nbsp;end)</pre></blockquote></div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="CharSequence.html#subSequence(int,int)">subSequence</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
+<dt><span class="simpleTagLabel">API Note:</span></dt>
+<dd>This method is defined so that the <code>String</code> class can implement
+ the <a href="CharSequence.html" title="interface in java.lang"><code>CharSequence</code></a> interface.</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>beginIndex</code> - the begin index, inclusive.</dd>
+<dd><code>endIndex</code> - the end index, exclusive.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the specified subsequence.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if <code>beginIndex</code> or <code>endIndex</code> is negative,
+          if <code>endIndex</code> is greater than <code>length()</code>,
+          or if <code>beginIndex</code> is greater than <code>endIndex</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.4</dd>
+</dl>
+</li>
+</ul>
+<a id="concat(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>concat</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;concat&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
+<div class="block">Concatenates the specified string to the end of this string.
+ <p>
+ If the length of the argument string is <code>0</code>, then this
+ <code>String</code> object is returned. Otherwise, a
+ <code>String</code> object is returned that represents a character
+ sequence that is the concatenation of the character sequence
+ represented by this <code>String</code> object and the character
+ sequence represented by the argument string.<p>
+ Examples:
+ <blockquote><pre>
+ "cares".concat("s") returns "caress"
+ "to".concat("get").concat("her") returns "together"
+ </pre></blockquote></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>str</code> - the <code>String</code> that is concatenated to the end
+                of this <code>String</code>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string that represents the concatenation of this object's
+          characters followed by the string argument's characters.</dd>
+</dl>
+</li>
+</ul>
+<a id="replace(char,char)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>replace</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;replace&#8203;(char&nbsp;oldChar,
+                      char&nbsp;newChar)</pre>
+<div class="block">Returns a string resulting from replacing all occurrences of
+ <code>oldChar</code> in this string with <code>newChar</code>.
+ <p>
+ If the character <code>oldChar</code> does not occur in the
+ character sequence represented by this <code>String</code> object,
+ then a reference to this <code>String</code> object is returned.
+ Otherwise, a <code>String</code> object is returned that
+ represents a character sequence identical to the character sequence
+ represented by this <code>String</code> object, except that every
+ occurrence of <code>oldChar</code> is replaced by an occurrence
+ of <code>newChar</code>.
+ <p>
+ Examples:
+ <blockquote><pre>
+ "mesquite in your cellar".replace('e', 'o')
+         returns "mosquito in your collar"
+ "the war of baronets".replace('r', 'y')
+         returns "the way of bayonets"
+ "sparring with a purple porpoise".replace('p', 't')
+         returns "starring with a turtle tortoise"
+ "JonL".replace('q', 'x') returns "JonL" (no change)
+ </pre></blockquote></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>oldChar</code> - the old character.</dd>
+<dd><code>newChar</code> - the new character.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string derived from this string by replacing every
+          occurrence of <code>oldChar</code> with <code>newChar</code>.</dd>
+</dl>
+</li>
+</ul>
+<a id="matches(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>matches</h4>
+<pre>public&nbsp;boolean&nbsp;matches&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex)</pre>
+<div class="block">Tells whether or not this string matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a>.
+
+ <p> An invocation of this method of the form
+ <i>str</i><code>.matches(</code><i>regex</i><code>)</code> yields exactly the
+ same result as the expression
+
+ <blockquote>
+ <a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a>.<a href="../util/regex/Pattern.html#matches(java.lang.String,java.lang.CharSequence)"><code>matches(<i>regex</i>, <i>str</i>)</code></a>
+ </blockquote></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>regex</code> - the regular expression to which this string is to be matched</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if, and only if, this string matches the
+          given regular expression</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</a></code> - if the regular expression's syntax is invalid</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.4</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="contains(java.lang.CharSequence)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>contains</h4>
+<pre>public&nbsp;boolean&nbsp;contains&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;s)</pre>
+<div class="block">Returns true if and only if this string contains the specified
+ sequence of char values.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>s</code> - the sequence to search for</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if this string contains <code>s</code>, false otherwise</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+</dl>
+</li>
+</ul>
+<a id="replaceFirst(java.lang.String,java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>replaceFirst</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;replaceFirst&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
+                           <a href="String.html" title="class in java.lang">String</a>&nbsp;replacement)</pre>
+<div class="block">Replaces the first substring of this string that matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a> with the
+ given replacement.
+
+ <p> An invocation of this method of the form
+ <i>str</i><code>.replaceFirst(</code><i>regex</i><code>,</code> <i>repl</i><code>)</code>
+ yields exactly the same result as the expression
+
+ <blockquote>
+ <code>
+ <a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a>.<a href="../util/regex/Pattern.html#compile(java.lang.String)"><code>compile</code></a>(<i>regex</i>).<a href="../util/regex/Pattern.html#matcher(java.lang.CharSequence)"><code>matcher</code></a>(<i>str</i>).<a href="../util/regex/Matcher.html#replaceFirst(java.lang.String)"><code>replaceFirst</code></a>(<i>repl</i>)
+ </code>
+ </blockquote>
+
+<p>
+ Note that backslashes (<code>\</code>) and dollar signs (<code>$</code>) in the
+ replacement string may cause the results to be different than if it were
+ being treated as a literal replacement string; see
+ <a href="../util/regex/Matcher.html#replaceFirst(java.lang.String)"><code>Matcher.replaceFirst(java.lang.String)</code></a>.
+ Use <a href="../util/regex/Matcher.html#quoteReplacement(java.lang.String)"><code>Matcher.quoteReplacement(java.lang.String)</code></a> to suppress the special
+ meaning of these characters, if desired.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>regex</code> - the regular expression to which this string is to be matched</dd>
+<dd><code>replacement</code> - the string to be substituted for the first match</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The resulting <code>String</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</a></code> - if the regular expression's syntax is invalid</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.4</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="replaceAll(java.lang.String,java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>replaceAll</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;replaceAll&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
+                         <a href="String.html" title="class in java.lang">String</a>&nbsp;replacement)</pre>
+<div class="block">Replaces each substring of this string that matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a> with the
+ given replacement.
+
+ <p> An invocation of this method of the form
+ <i>str</i><code>.replaceAll(</code><i>regex</i><code>,</code> <i>repl</i><code>)</code>
+ yields exactly the same result as the expression
+
+ <blockquote>
+ <code>
+ <a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a>.<a href="../util/regex/Pattern.html#compile(java.lang.String)"><code>compile</code></a>(<i>regex</i>).<a href="../util/regex/Pattern.html#matcher(java.lang.CharSequence)"><code>matcher</code></a>(<i>str</i>).<a href="../util/regex/Matcher.html#replaceAll(java.lang.String)"><code>replaceAll</code></a>(<i>repl</i>)
+ </code>
+ </blockquote>
+
+<p>
+ Note that backslashes (<code>\</code>) and dollar signs (<code>$</code>) in the
+ replacement string may cause the results to be different than if it were
+ being treated as a literal replacement string; see
+ <a href="../util/regex/Matcher.html#replaceAll(java.lang.String)"><code>Matcher.replaceAll</code></a>.
+ Use <a href="../util/regex/Matcher.html#quoteReplacement(java.lang.String)"><code>Matcher.quoteReplacement(java.lang.String)</code></a> to suppress the special
+ meaning of these characters, if desired.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>regex</code> - the regular expression to which this string is to be matched</dd>
+<dd><code>replacement</code> - the string to be substituted for each match</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The resulting <code>String</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</a></code> - if the regular expression's syntax is invalid</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.4</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="replace(java.lang.CharSequence,java.lang.CharSequence)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>replace</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;replace&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;target,
+                      <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;replacement)</pre>
+<div class="block">Replaces each substring of this string that matches the literal target
+ sequence with the specified literal replacement sequence. The
+ replacement proceeds from the beginning of the string to the end, for
+ example, replacing "aa" with "b" in the string "aaa" will result in
+ "ba" rather than "ab".</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>target</code> - The sequence of char values to be replaced</dd>
+<dd><code>replacement</code> - The replacement sequence of char values</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>The resulting string</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+</dl>
+</li>
+</ul>
+<a id="split(java.lang.String,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>split</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>[]&nbsp;split&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
+                      int&nbsp;limit)</pre>
+<div class="block">Splits this string around matches of the given
+ <a href="../util/regex/Pattern.html#sum">regular expression</a>.
+
+ <p> The array returned by this method contains each substring of this
+ string that is terminated by another substring that matches the given
+ expression or is terminated by the end of the string.  The substrings in
+ the array are in the order in which they occur in this string.  If the
+ expression does not match any part of the input then the resulting array
+ has just one element, namely this string.
+
+ <p> When there is a positive-width match at the beginning of this
+ string then an empty leading substring is included at the beginning
+ of the resulting array. A zero-width match at the beginning however
+ never produces such empty leading substring.
+
+ <p> The <code>limit</code> parameter controls the number of times the
+ pattern is applied and therefore affects the length of the resulting
+ array.
+ <ul>
+    <li><p>
+    If the <i>limit</i> is positive then the pattern will be applied
+    at most <i>limit</i>&nbsp;-&nbsp;1 times, the array's length will be
+    no greater than <i>limit</i>, and the array's last entry will contain
+    all input beyond the last matched delimiter.</p></li>
+
+    <li><p>
+    If the <i>limit</i> is zero then the pattern will be applied as
+    many times as possible, the array can have any length, and trailing
+    empty strings will be discarded.</p></li>
+
+    <li><p>
+    If the <i>limit</i> is negative then the pattern will be applied
+    as many times as possible and the array can have any length.</p></li>
+ </ul>
+
+ <p> The string <code>"boo:and:foo"</code>, for example, yields the
+ following results with these parameters:
+
+ <blockquote><table class="plain">
+ <caption style="display:none">Split example showing regex, limit, and result</caption>
+ <thead>
+ <tr>
+     <th scope="col">Regex</th>
+     <th scope="col">Limit</th>
+     <th scope="col">Result</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr><th scope="row" rowspan="3" style="font-weight:normal">:</th>
+     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">2</th>
+     <td><code>{ "boo", "and:foo" }</code></td></tr>
+ <tr><!-- : -->
+     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">5</th>
+     <td><code>{ "boo", "and", "foo" }</code></td></tr>
+ <tr><!-- : -->
+     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">-2</th>
+     <td><code>{ "boo", "and", "foo" }</code></td></tr>
+ <tr><th scope="row" rowspan="3" style="font-weight:normal">o</th>
+     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">5</th>
+     <td><code>{ "b", "", ":and:f", "", "" }</code></td></tr>
+ <tr><!-- o -->
+     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">-2</th>
+     <td><code>{ "b", "", ":and:f", "", "" }</code></td></tr>
+ <tr><!-- o -->
+     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">0</th>
+     <td><code>{ "b", "", ":and:f" }</code></td></tr>
+ </tbody>
+ </table></blockquote>
+
+ <p> An invocation of this method of the form
+ <i>str.</i><code>split(</code><i>regex</i><code>,</code>&nbsp;<i>n</i><code>)</code>
+ yields the same result as the expression
+
+ <blockquote>
+ <code>
+ <a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a>.<a href="../util/regex/Pattern.html#compile(java.lang.String)"><code>compile</code></a>(<i>regex</i>).<a href="../util/regex/Pattern.html#split(java.lang.CharSequence,int)"><code>split</code></a>(<i>str</i>,&nbsp;<i>n</i>)
+ </code>
+ </blockquote></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>regex</code> - the delimiting regular expression</dd>
+<dd><code>limit</code> - the result threshold, as described above</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the array of strings computed by splitting this string
+          around matches of the given regular expression</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</a></code> - if the regular expression's syntax is invalid</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.4</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="split(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>split</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>[]&nbsp;split&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex)</pre>
+<div class="block">Splits this string around matches of the given <a href="../util/regex/Pattern.html#sum">regular expression</a>.
+
+ <p> This method works as if by invoking the two-argument <a href="#split(java.lang.String,int)"><code>split</code></a> method with the given expression and a limit
+ argument of zero.  Trailing empty strings are therefore not included in
+ the resulting array.
+
+ <p> The string <code>"boo:and:foo"</code>, for example, yields the following
+ results with these expressions:
+
+ <blockquote><table class="plain">
+ <caption style="display:none">Split examples showing regex and result</caption>
+ <thead>
+ <tr>
+  <th scope="col">Regex</th>
+  <th scope="col">Result</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr><th scope="row" style="text-weight:normal">:</th>
+     <td><code>{ "boo", "and", "foo" }</code></td></tr>
+ <tr><th scope="row" style="text-weight:normal">o</th>
+     <td><code>{ "b", "", ":and:f" }</code></td></tr>
+ </tbody>
+ </table></blockquote></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>regex</code> - the delimiting regular expression</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the array of strings computed by splitting this string
+          around matches of the given regular expression</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</a></code> - if the regular expression's syntax is invalid</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.4</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="join(java.lang.CharSequence,java.lang.CharSequence...)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>join</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;join&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
+                          <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>...&nbsp;elements)</pre>
+<div class="block">Returns a new String composed of copies of the
+ <code>CharSequence elements</code> joined together with a copy of
+ the specified <code>delimiter</code>.
+
+ <blockquote>For example,
+ <pre><code>
+     String message = String.join("-", "Java", "is", "cool");
+     // message returned is: "Java-is-cool"
+ </code></pre></blockquote>
+
+ Note that if an element is null, then <code>"null"</code> is added.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>delimiter</code> - the delimiter that separates each element</dd>
+<dd><code>elements</code> - the elements to join together.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new <code>String</code> that is composed of the <code>elements</code>
+         separated by the <code>delimiter</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="NullPointerException.html" title="class in java.lang">NullPointerException</a></code> - If <code>delimiter</code> or <code>elements</code>
+         is <code>null</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.8</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../util/StringJoiner.html" title="class in java.util"><code>StringJoiner</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="join(java.lang.CharSequence,java.lang.Iterable)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>join</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;join&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
+                          <a href="Iterable.html" title="interface in java.lang">Iterable</a>&lt;? extends <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&gt;&nbsp;elements)</pre>
+<div class="block">Returns a new <code>String</code> composed of copies of the
+ <code>CharSequence elements</code> joined together with a copy of the
+ specified <code>delimiter</code>.
+
+ <blockquote>For example,
+ <pre><code>
+     List&lt;String&gt; strings = List.of("Java", "is", "cool");
+     String message = String.join(" ", strings);
+     //message returned is: "Java is cool"
+
+     Set&lt;String&gt; strings =
+         new LinkedHashSet&lt;&gt;(List.of("Java", "is", "very", "cool"));
+     String message = String.join("-", strings);
+     //message returned is: "Java-is-very-cool"
+ </code></pre></blockquote>
+
+ Note that if an individual element is <code>null</code>, then <code>"null"</code> is added.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>delimiter</code> - a sequence of characters that is used to separate each
+         of the <code>elements</code> in the resulting <code>String</code></dd>
+<dd><code>elements</code> - an <code>Iterable</code> that will have its <code>elements</code>
+         joined together.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a new <code>String</code> that is composed from the <code>elements</code>
+         argument</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="NullPointerException.html" title="class in java.lang">NullPointerException</a></code> - If <code>delimiter</code> or <code>elements</code>
+         is <code>null</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.8</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="#join(java.lang.CharSequence,java.lang.CharSequence...)"><code>join(CharSequence,CharSequence...)</code></a>, 
+<a href="../util/StringJoiner.html" title="class in java.util"><code>StringJoiner</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="toLowerCase(java.util.Locale)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toLowerCase</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;toLowerCase&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</pre>
+<div class="block">Converts all of the characters in this <code>String</code> to lower
+ case using the rules of the given <code>Locale</code>.  Case mapping is based
+ on the Unicode Standard version specified by the <a href="Character.html" title="class in java.lang"><code>Character</code></a>
+ class. Since case mappings are not always 1:1 char mappings, the resulting
+ <code>String</code> may be a different length than the original <code>String</code>.
+ <p>
+ Examples of lowercase  mappings are in the following table:
+ <table class="plain">
+ <caption style="display:none">Lowercase mapping examples showing language code of locale, upper case, lower case, and description</caption>
+ <thead>
+ <tr>
+   <th scope="col">Language Code of Locale</th>
+   <th scope="col">Upper Case</th>
+   <th scope="col">Lower Case</th>
+   <th scope="col">Description</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+   <td>tr (Turkish)</td>
+   <th scope="row" style="font-weight:normal; text-align:left">&#92;u0130</th>
+   <td>&#92;u0069</td>
+   <td>capital letter I with dot above -&gt; small letter i</td>
+ </tr>
+ <tr>
+   <td>tr (Turkish)</td>
+   <th scope="row" style="font-weight:normal; text-align:left">&#92;u0049</th>
+   <td>&#92;u0131</td>
+   <td>capital letter I -&gt; small letter dotless i </td>
+ </tr>
+ <tr>
+   <td>(all)</td>
+   <th scope="row" style="font-weight:normal; text-align:left">French Fries</th>
+   <td>french fries</td>
+   <td>lowercased all chars in String</td>
+ </tr>
+ <tr>
+   <td>(all)</td>
+   <th scope="row" style="font-weight:normal; text-align:left">
+       &Iota;&Chi;&Theta;&Upsilon;&Sigma;</th>
+   <td>&iota;&chi;&theta;&upsilon;&sigma;</td>
+   <td>lowercased all chars in String</td>
+ </tr>
+ </tbody>
+ </table></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>locale</code> - use the case transformation rules for this locale</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the <code>String</code>, converted to lowercase.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.1</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="#toLowerCase()"><code>toLowerCase()</code></a>, 
+<a href="#toUpperCase()"><code>toUpperCase()</code></a>, 
+<a href="#toUpperCase(java.util.Locale)"><code>toUpperCase(Locale)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="toLowerCase()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toLowerCase</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;toLowerCase()</pre>
+<div class="block">Converts all of the characters in this <code>String</code> to lower
+ case using the rules of the default locale. This is equivalent to calling
+ <code>toLowerCase(Locale.getDefault())</code>.
+ <p>
+ <b>Note:</b> This method is locale sensitive, and may produce unexpected
+ results if used for strings that are intended to be interpreted locale
+ independently.
+ Examples are programming language identifiers, protocol keys, and HTML
+ tags.
+ For instance, <code>"TITLE".toLowerCase()</code> in a Turkish locale
+ returns <code>"t\u0131tle"</code>, where '\u0131' is the
+ LATIN SMALL LETTER DOTLESS I character.
+ To obtain correct results for locale insensitive strings, use
+ <code>toLowerCase(Locale.ROOT)</code>.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the <code>String</code>, converted to lowercase.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="#toLowerCase(java.util.Locale)"><code>toLowerCase(Locale)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="toUpperCase(java.util.Locale)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toUpperCase</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;toUpperCase&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</pre>
+<div class="block">Converts all of the characters in this <code>String</code> to upper
+ case using the rules of the given <code>Locale</code>. Case mapping is based
+ on the Unicode Standard version specified by the <a href="Character.html" title="class in java.lang"><code>Character</code></a>
+ class. Since case mappings are not always 1:1 char mappings, the resulting
+ <code>String</code> may be a different length than the original <code>String</code>.
+ <p>
+ Examples of locale-sensitive and 1:M case mappings are in the following table.
+
+ <table class="plain">
+ <caption style="display:none">Examples of locale-sensitive and 1:M case mappings. Shows Language code of locale, lower case, upper case, and description.</caption>
+ <thead>
+ <tr>
+   <th scope="col">Language Code of Locale</th>
+   <th scope="col">Lower Case</th>
+   <th scope="col">Upper Case</th>
+   <th scope="col">Description</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+   <td>tr (Turkish)</td>
+   <th scope="row" style="font-weight:normal; text-align:left">&#92;u0069</th>
+   <td>&#92;u0130</td>
+   <td>small letter i -&gt; capital letter I with dot above</td>
+ </tr>
+ <tr>
+   <td>tr (Turkish)</td>
+   <th scope="row" style="font-weight:normal; text-align:left">&#92;u0131</th>
+   <td>&#92;u0049</td>
+   <td>small letter dotless i -&gt; capital letter I</td>
+ </tr>
+ <tr>
+   <td>(all)</td>
+   <th scope="row" style="font-weight:normal; text-align:left">&#92;u00df</th>
+   <td>&#92;u0053 &#92;u0053</td>
+   <td>small letter sharp s -&gt; two letters: SS</td>
+ </tr>
+ <tr>
+   <td>(all)</td>
+   <th scope="row" style="font-weight:normal; text-align:left">Fahrvergn&uuml;gen</th>
+   <td>FAHRVERGN&Uuml;GEN</td>
+   <td></td>
+ </tr>
+ </tbody>
+ </table></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>locale</code> - use the case transformation rules for this locale</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the <code>String</code>, converted to uppercase.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.1</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="#toUpperCase()"><code>toUpperCase()</code></a>, 
+<a href="#toLowerCase()"><code>toLowerCase()</code></a>, 
+<a href="#toLowerCase(java.util.Locale)"><code>toLowerCase(Locale)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="toUpperCase()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toUpperCase</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;toUpperCase()</pre>
+<div class="block">Converts all of the characters in this <code>String</code> to upper
+ case using the rules of the default locale. This method is equivalent to
+ <code>toUpperCase(Locale.getDefault())</code>.
+ <p>
+ <b>Note:</b> This method is locale sensitive, and may produce unexpected
+ results if used for strings that are intended to be interpreted locale
+ independently.
+ Examples are programming language identifiers, protocol keys, and HTML
+ tags.
+ For instance, <code>"title".toUpperCase()</code> in a Turkish locale
+ returns <code>"T\u0130TLE"</code>, where '\u0130' is the
+ LATIN CAPITAL LETTER I WITH DOT ABOVE character.
+ To obtain correct results for locale insensitive strings, use
+ <code>toUpperCase(Locale.ROOT)</code>.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the <code>String</code>, converted to uppercase.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="#toUpperCase(java.util.Locale)"><code>toUpperCase(Locale)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="trim()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>trim</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;trim()</pre>
+<div class="block">Returns a string whose value is this string, with all leading
+ and trailing space removed, where space is defined
+ as any character whose codepoint is less than or equal to
+ <code>'U+0020'</code> (the space character).
+ <p>
+ If this <code>String</code> object represents an empty character
+ sequence, or the first and last characters of character sequence
+ represented by this <code>String</code> object both have codes
+ that are not space (as defined above), then a
+ reference to this <code>String</code> object is returned.
+ <p>
+ Otherwise, if all characters in this string are space (as
+ defined above), then a  <code>String</code> object representing an
+ empty string is returned.
+ <p>
+ Otherwise, let <i>k</i> be the index of the first character in the
+ string whose code is not a space (as defined above) and let
+ <i>m</i> be the index of the last character in the string whose code
+ is not a space (as defined above). A <code>String</code>
+ object is returned, representing the substring of this string that
+ begins with the character at index <i>k</i> and ends with the
+ character at index <i>m</i>-that is, the result of
+ <code>this.substring(k, m + 1)</code>.
+ <p>
+ This method may be used to trim space (as defined above) from
+ the beginning and end of a string.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string whose value is this string, with all leading
+          and trailing space removed, or this string if it
+          has no leading or trailing space.</dd>
+</dl>
+</li>
+</ul>
+<a id="strip()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>strip</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;strip()</pre>
+<div class="block">Returns a string whose value is this string, with all leading
+ and trailing <a href="Character.html#isWhitespace(int)"><code>white space</code></a>
+ removed.
+ <p>
+ If this <code>String</code> object represents an empty string,
+ or if all code points in this string are
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a>, then an empty string
+ is returned.
+ <p>
+ Otherwise, returns a substring of this string beginning with the first
+ code point that is not a <a href="Character.html#isWhitespace(int)"><code>white space</code></a>
+ up to and including the last code point that is not a
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a>.
+ <p>
+ This method may be used to strip
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a> from
+ the beginning and end of a string.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string whose value is this string, with all leading
+          and trailing white space removed</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>11</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Character.html#isWhitespace(int)"><code>Character.isWhitespace(int)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="stripLeading()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>stripLeading</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;stripLeading()</pre>
+<div class="block">Returns a string whose value is this string, with all leading
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a> removed.
+ <p>
+ If this <code>String</code> object represents an empty string,
+ or if all code points in this string are
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a>, then an empty string
+ is returned.
+ <p>
+ Otherwise, returns a substring of this string beginning with the first
+ code point that is not a <a href="Character.html#isWhitespace(int)"><code>white space</code></a>
+ up to to and including the last code point of this string.
+ <p>
+ This method may be used to trim
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a> from
+ the beginning of a string.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string whose value is this string, with all leading white
+          space removed</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>11</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Character.html#isWhitespace(int)"><code>Character.isWhitespace(int)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="stripTrailing()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>stripTrailing</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;stripTrailing()</pre>
+<div class="block">Returns a string whose value is this string, with all trailing
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a> removed.
+ <p>
+ If this <code>String</code> object represents an empty string,
+ or if all characters in this string are
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a>, then an empty string
+ is returned.
+ <p>
+ Otherwise, returns a substring of this string beginning with the first
+ code point of this string up to and including the last code point
+ that is not a <a href="Character.html#isWhitespace(int)"><code>white space</code></a>.
+ <p>
+ This method may be used to trim
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a> from
+ the end of a string.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string whose value is this string, with all trailing white
+          space removed</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>11</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Character.html#isWhitespace(int)"><code>Character.isWhitespace(int)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="isBlank()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isBlank</h4>
+<pre>public&nbsp;boolean&nbsp;isBlank()</pre>
+<div class="block">Returns <code>true</code> if the string is empty or contains only
+ <a href="Character.html#isWhitespace(int)"><code>white space</code></a> codepoints,
+ otherwise <code>false</code>.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd><code>true</code> if the string is empty or contains only
+         <a href="Character.html#isWhitespace(int)"><code>white space</code></a> codepoints,
+         otherwise <code>false</code></dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>11</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Character.html#isWhitespace(int)"><code>Character.isWhitespace(int)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="lines()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lines</h4>
+<pre>public&nbsp;<a href="../util/stream/Stream.html" title="interface in java.util.stream">Stream</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;&nbsp;lines()</pre>
+<div class="block">Returns a stream of substrings extracted from this string
+ partitioned by line terminators.
+ <p>
+ Line terminators recognized are line feed
+ <code>"\n"</code> (<code>U+000A</code>),
+ carriage return
+ <code>"\r"</code> (<code>U+000D</code>)
+ and a carriage return followed immediately by a line feed
+ <code>"\r\n"</code> (<code>U+000D U+000A</code>).
+ <p>
+ The stream returned by this method contains each line of
+ this string that is terminated by a line terminator except that
+ the last line can either be terminated by a line terminator or the
+ end of the string.
+ The lines in the stream are in the order in which
+ they occur in this string and do not include the line terminators
+ partitioning the lines.</div>
+<dl>
+<dt><span class="simpleTagLabel">Implementation Note:</span></dt>
+<dd>This method provides better performance than
+           split("\R") by supplying elements lazily and
+           by faster search of new line terminators.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the stream of strings extracted from this string
+          partitioned by line terminators</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>11</dd>
+</dl>
+</li>
+</ul>
+<a id="toString()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;toString()</pre>
+<div class="block">This object (which is already a string!) is itself returned.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="CharSequence.html#toString()">toString</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="Object.html#toString()">toString</a></code>&nbsp;in class&nbsp;<code><a href="Object.html" title="class in java.lang">Object</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the string itself.</dd>
+</dl>
+</li>
+</ul>
+<a id="chars()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>chars</h4>
+<pre>public&nbsp;<a href="../util/stream/IntStream.html" title="interface in java.util.stream">IntStream</a>&nbsp;chars()</pre>
+<div class="block">Returns a stream of <code>int</code> zero-extending the <code>char</code> values
+ from this sequence.  Any char which maps to a <a href="../../../java.base/java/lang/Character.html#unicode">surrogate code
+ point</a> is passed through uninterpreted.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="CharSequence.html#chars()">chars</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an IntStream of char values from this sequence</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>9</dd>
+</dl>
+</li>
+</ul>
+<a id="codePoints()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>codePoints</h4>
+<pre>public&nbsp;<a href="../util/stream/IntStream.html" title="interface in java.util.stream">IntStream</a>&nbsp;codePoints()</pre>
+<div class="block">Returns a stream of code point values from this sequence.  Any surrogate
+ pairs encountered in the sequence are combined as if by <a href="Character.html#toCodePoint(char,char)">Character.toCodePoint</a> and the result is passed
+ to the stream. Any other code units, including ordinary BMP characters,
+ unpaired surrogates, and undefined code units, are zero-extended to
+ <code>int</code> values which are then passed to the stream.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="CharSequence.html#codePoints()">codePoints</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an IntStream of Unicode code points from this sequence</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>9</dd>
+</dl>
+</li>
+</ul>
+<a id="toCharArray()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toCharArray</h4>
+<pre>public&nbsp;char[]&nbsp;toCharArray()</pre>
+<div class="block">Converts this string to a new character array.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a newly allocated character array whose length is the length
+          of this string and whose contents are initialized to contain
+          the character sequence represented by this string.</dd>
+</dl>
+</li>
+</ul>
+<a id="format(java.lang.String,java.lang.Object...)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>format</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;format&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;format,
+                            <a href="Object.html" title="class in java.lang">Object</a>...&nbsp;args)</pre>
+<div class="block">Returns a formatted string using the specified format string and
+ arguments.
+
+ <p> The locale always used is the one returned by <a href="../util/Locale.html#getDefault(java.util.Locale.Category)"><code>Locale.getDefault(Locale.Category)</code></a> with
+ <a href="../util/Locale.Category.html#FORMAT"><code>FORMAT</code></a> category specified.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>format</code> - A <a href="../util/Formatter.html#syntax">format string</a></dd>
+<dd><code>args</code> - Arguments referenced by the format specifiers in the format
+         string.  If there are more arguments than format specifiers, the
+         extra arguments are ignored.  The number of arguments is
+         variable and may be zero.  The maximum number of arguments is
+         limited by the maximum dimension of a Java array as defined by
+         <cite>The Java&trade; Virtual Machine Specification</cite>.
+         The behaviour on a
+         <code>null</code> argument depends on the <a href="../util/Formatter.html#syntax">conversion</a>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A formatted string</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../util/IllegalFormatException.html" title="class in java.util">IllegalFormatException</a></code> - If a format string contains an illegal syntax, a format
+          specifier that is incompatible with the given arguments,
+          insufficient arguments given the format string, or other
+          illegal conditions.  For specification of all possible
+          formatting errors, see the <a href="../util/Formatter.html#detail">Details</a> section of the
+          formatter class specification.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../util/Formatter.html" title="class in java.util"><code>Formatter</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="format(java.util.Locale,java.lang.String,java.lang.Object...)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>format</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;format&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;l,
+                            <a href="String.html" title="class in java.lang">String</a>&nbsp;format,
+                            <a href="Object.html" title="class in java.lang">Object</a>...&nbsp;args)</pre>
+<div class="block">Returns a formatted string using the specified locale, format string,
+ and arguments.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>l</code> - The <a href="../util/Locale.html" title="class in java.util">locale</a> to apply during
+         formatting.  If <code>l</code> is <code>null</code> then no localization
+         is applied.</dd>
+<dd><code>format</code> - A <a href="../util/Formatter.html#syntax">format string</a></dd>
+<dd><code>args</code> - Arguments referenced by the format specifiers in the format
+         string.  If there are more arguments than format specifiers, the
+         extra arguments are ignored.  The number of arguments is
+         variable and may be zero.  The maximum number of arguments is
+         limited by the maximum dimension of a Java array as defined by
+         <cite>The Java&trade; Virtual Machine Specification</cite>.
+         The behaviour on a
+         <code>null</code> argument depends on the
+         <a href="../util/Formatter.html#syntax">conversion</a>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A formatted string</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../util/IllegalFormatException.html" title="class in java.util">IllegalFormatException</a></code> - If a format string contains an illegal syntax, a format
+          specifier that is incompatible with the given arguments,
+          insufficient arguments given the format string, or other
+          illegal conditions.  For specification of all possible
+          formatting errors, see the <a href="../util/Formatter.html#detail">Details</a> section of the
+          formatter class specification</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>1.5</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../util/Formatter.html" title="class in java.util"><code>Formatter</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="valueOf(java.lang.Object)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(<a href="Object.html" title="class in java.lang">Object</a>&nbsp;obj)</pre>
+<div class="block">Returns the string representation of the <code>Object</code> argument.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>obj</code> - an <code>Object</code>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>if the argument is <code>null</code>, then a string equal to
+          <code>"null"</code>; otherwise, the value of
+          <code>obj.toString()</code> is returned.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Object.html#toString()"><code>Object.toString()</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="valueOf(char[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(char[]&nbsp;data)</pre>
+<div class="block">Returns the string representation of the <code>char</code> array
+ argument. The contents of the character array are copied; subsequent
+ modification of the character array does not affect the returned
+ string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>data</code> - the character array.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a <code>String</code> that contains the characters of the
+          character array.</dd>
+</dl>
+</li>
+</ul>
+<a id="valueOf(char[],int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(char[]&nbsp;data,
+                             int&nbsp;offset,
+                             int&nbsp;count)</pre>
+<div class="block">Returns the string representation of a specific subarray of the
+ <code>char</code> array argument.
+ <p>
+ The <code>offset</code> argument is the index of the first
+ character of the subarray. The <code>count</code> argument
+ specifies the length of the subarray. The contents of the subarray
+ are copied; subsequent modification of the character array does not
+ affect the returned string.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>data</code> - the character array.</dd>
+<dd><code>offset</code> - initial offset of the subarray.</dd>
+<dd><code>count</code> - length of the subarray.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a <code>String</code> that contains the characters of the
+          specified subarray of the character array.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if <code>offset</code> is
+          negative, or <code>count</code> is negative, or
+          <code>offset+count</code> is larger than
+          <code>data.length</code>.</dd>
+</dl>
+</li>
+</ul>
+<a id="copyValueOf(char[],int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>copyValueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;copyValueOf&#8203;(char[]&nbsp;data,
+                                 int&nbsp;offset,
+                                 int&nbsp;count)</pre>
+<div class="block">Equivalent to <a href="#valueOf(char%5B%5D,int,int)"><code>valueOf(char[], int, int)</code></a>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>data</code> - the character array.</dd>
+<dd><code>offset</code> - initial offset of the subarray.</dd>
+<dd><code>count</code> - length of the subarray.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a <code>String</code> that contains the characters of the
+          specified subarray of the character array.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if <code>offset</code> is
+          negative, or <code>count</code> is negative, or
+          <code>offset+count</code> is larger than
+          <code>data.length</code>.</dd>
+</dl>
+</li>
+</ul>
+<a id="copyValueOf(char[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>copyValueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;copyValueOf&#8203;(char[]&nbsp;data)</pre>
+<div class="block">Equivalent to <a href="#valueOf(char%5B%5D)"><code>valueOf(char[])</code></a>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>data</code> - the character array.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a <code>String</code> that contains the characters of the
+          character array.</dd>
+</dl>
+</li>
+</ul>
+<a id="valueOf(boolean)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(boolean&nbsp;b)</pre>
+<div class="block">Returns the string representation of the <code>boolean</code> argument.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>b</code> - a <code>boolean</code>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>if the argument is <code>true</code>, a string equal to
+          <code>"true"</code> is returned; otherwise, a string equal to
+          <code>"false"</code> is returned.</dd>
+</dl>
+</li>
+</ul>
+<a id="valueOf(char)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(char&nbsp;c)</pre>
+<div class="block">Returns the string representation of the <code>char</code>
+ argument.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>c</code> - a <code>char</code>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string of length <code>1</code> containing
+          as its single character the argument <code>c</code>.</dd>
+</dl>
+</li>
+</ul>
+<a id="valueOf(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(int&nbsp;i)</pre>
+<div class="block">Returns the string representation of the <code>int</code> argument.
+ <p>
+ The representation is exactly the one returned by the
+ <code>Integer.toString</code> method of one argument.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>i</code> - an <code>int</code>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string representation of the <code>int</code> argument.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Integer.html#toString(int,int)"><code>Integer.toString(int, int)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="valueOf(long)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(long&nbsp;l)</pre>
+<div class="block">Returns the string representation of the <code>long</code> argument.
+ <p>
+ The representation is exactly the one returned by the
+ <code>Long.toString</code> method of one argument.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>l</code> - a <code>long</code>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string representation of the <code>long</code> argument.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Long.html#toString(long)"><code>Long.toString(long)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="valueOf(float)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(float&nbsp;f)</pre>
+<div class="block">Returns the string representation of the <code>float</code> argument.
+ <p>
+ The representation is exactly the one returned by the
+ <code>Float.toString</code> method of one argument.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>f</code> - a <code>float</code>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string representation of the <code>float</code> argument.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Float.html#toString(float)"><code>Float.toString(float)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="valueOf(double)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>valueOf</h4>
+<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(double&nbsp;d)</pre>
+<div class="block">Returns the string representation of the <code>double</code> argument.
+ <p>
+ The representation is exactly the one returned by the
+ <code>Double.toString</code> method of one argument.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>d</code> - a <code>double</code>.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a  string representation of the <code>double</code> argument.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="Double.html#toString(double)"><code>Double.toString(double)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a id="intern()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>intern</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;intern()</pre>
+<div class="block">Returns a canonical representation for the string object.
+ <p>
+ A pool of strings, initially empty, is maintained privately by the
+ class <code>String</code>.
+ <p>
+ When the intern method is invoked, if the pool already contains a
+ string equal to this <code>String</code> object as determined by
+ the <a href="#equals(java.lang.Object)"><code>equals(Object)</code></a> method, then the string from the pool is
+ returned. Otherwise, this <code>String</code> object is added to the
+ pool and a reference to this <code>String</code> object is returned.
+ <p>
+ It follows that for any two strings <code>s</code> and <code>t</code>,
+ <code>s.intern() == t.intern()</code> is <code>true</code>
+ if and only if <code>s.equals(t)</code> is <code>true</code>.
+ <p>
+ All literal strings and string-valued constant expressions are
+ interned. String literals are defined in section 3.10.5 of the
+ <cite>The Java&trade; Language Specification</cite>.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a string that has the same contents as this string, but is
+          guaranteed to be from a pool of unique strings.</dd>
+<dt><span class="simpleTagLabel">See <cite>The Java&trade; Language Specification</cite>:</span></dt>
+<dd>3.10.5 String Literals</dd>
+</dl>
+</li>
+</ul>
+<a id="repeat(int)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>repeat</h4>
+<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;repeat&#8203;(int&nbsp;count)</pre>
+<div class="block">Returns a string whose value is the concatenation of this
+ string repeated <code>count</code> times.
+ <p>
+ If this string is empty or count is zero then the empty
+ string is returned.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>count</code> - number of times to repeat</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>A string composed of this string repeated
+          <code>count</code> times or the empty string if this
+          string is empty or count is zero</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - if the <code>count</code> is
+          negative.</dd>
+<dt><span class="simpleTagLabel">Since:</span></dt>
+<dd>11</dd>
+</dl>
+</li>
+</ul>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</div>
+</div>
+</main>
+<!-- ========= END OF CLASS DATA ========= -->
+<footer role="contentinfo">
+<nav role="navigation">
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a id="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a id="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="../../module-summary.html">Module</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/String.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../index-files/index-1.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+<div class="aboutLanguage"><div style="margin-top: 9px;"><strong>Java SE 11 &amp; JDK 11</strong> <br><strong>DRAFT 11-ea+22</strong></div></div>
+</div>
+<div class="subNav">
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<a id="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</nav>
+<p class="legalCopy"><small><a href="http://bugreport.java.com/bugreport/">Report a bug or suggest an enhancement</a><br> For further API reference and developer documentation see the <a href="http://www.oracle.com/pls/topic/lookup?ctx=javase10&amp;id=homepage" target="_blank">Java SE Documentation</a>, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples.<br> Java is a trademark or registere [...]
+</footer>
+<!-- Start SiteCatalyst code   -->
+<script type="application/javascript" src="https://www.oracleimg.com/us/assets/metrics/ora_docs.js"></script>
+<!-- End SiteCatalyst code -->
+<noscript>
+<p>Scripting on this page tracks web page traffic, but does not change the content in any way.</p>
+</noscript>
+</body>
+</html>
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java6_String.html b/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java6_String.html
new file mode 100644
index 0000000..8bf9045
--- /dev/null
+++ b/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java6_String.html
@@ -0,0 +1,3543 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_111) on Thu Nov 19 09:31:09 PST 2015 -->
+<TITLE>
+String (Java Platform SE 6)
+</TITLE>
+
+<META NAME="date" CONTENT="2015-11-19">
+<META NAME="keywords" CONTENT="java.lang.String class">
+<META NAME="keywords" CONTENT="CASE_INSENSITIVE_ORDER">
+<META NAME="keywords" CONTENT="length()">
+<META NAME="keywords" CONTENT="isEmpty()">
+<META NAME="keywords" CONTENT="charAt()">
+<META NAME="keywords" CONTENT="codePointAt()">
+<META NAME="keywords" CONTENT="codePointBefore()">
+<META NAME="keywords" CONTENT="codePointCount()">
+<META NAME="keywords" CONTENT="offsetByCodePoints()">
+<META NAME="keywords" CONTENT="getChars()">
+<META NAME="keywords" CONTENT="getBytes()">
+<META NAME="keywords" CONTENT="equals()">
+<META NAME="keywords" CONTENT="contentEquals()">
+<META NAME="keywords" CONTENT="equalsIgnoreCase()">
+<META NAME="keywords" CONTENT="compareTo()">
+<META NAME="keywords" CONTENT="compareToIgnoreCase()">
+<META NAME="keywords" CONTENT="regionMatches()">
+<META NAME="keywords" CONTENT="startsWith()">
+<META NAME="keywords" CONTENT="endsWith()">
+<META NAME="keywords" CONTENT="hashCode()">
+<META NAME="keywords" CONTENT="indexOf()">
+<META NAME="keywords" CONTENT="lastIndexOf()">
+<META NAME="keywords" CONTENT="substring()">
+<META NAME="keywords" CONTENT="subSequence()">
+<META NAME="keywords" CONTENT="concat()">
+<META NAME="keywords" CONTENT="replace()">
+<META NAME="keywords" CONTENT="matches()">
+<META NAME="keywords" CONTENT="contains()">
+<META NAME="keywords" CONTENT="replaceFirst()">
+<META NAME="keywords" CONTENT="replaceAll()">
+<META NAME="keywords" CONTENT="split()">
+<META NAME="keywords" CONTENT="toLowerCase()">
+<META NAME="keywords" CONTENT="toUpperCase()">
+<META NAME="keywords" CONTENT="trim()">
+<META NAME="keywords" CONTENT="toString()">
+<META NAME="keywords" CONTENT="toCharArray()">
+<META NAME="keywords" CONTENT="format()">
+<META NAME="keywords" CONTENT="valueOf()">
+<META NAME="keywords" CONTENT="copyValueOf()">
+<META NAME="keywords" CONTENT="intern()">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+    if (location.href.indexOf('is-external=true') == -1) {
+        parent.document.title="String (Java Platform SE 6)";
+    }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/String.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+<b>Java&#x2122;&nbsp;Platform<br>Standard&nbsp;Ed.&nbsp;6</b></EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../java/lang/StrictMath.html" title="class in java.lang"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../java/lang/StringBuffer.html" title="class in java.lang"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../index.html?java/lang/String.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="String.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+java.lang</FONT>
+<BR>
+Class String</H2>
+<PRE>
+<A HREF="../../java/lang/Object.html" title="class in java.lang">java.lang.Object</A>
+  <IMG SRC="../../resources/inherit.gif" ALT="extended by "><B>java.lang.String</B>
+</PRE>
+<DL>
+<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../java/io/Serializable.html" title="interface in java.io">Serializable</A>, <A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A>, <A HREF="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</A>&lt;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&gt;</DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public final class <B>String</B><DT>extends <A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A><DT>implements <A HREF="../../java/io/Serializable.html" title="interface in java.io">Serializable</A>, <A HREF="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</A>&lt;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&gt;, <A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence< [...]
+</PRE>
+
+<P>
+The <code>String</code> class represents character strings. All
+ string literals in Java programs, such as <code>"abc"</code>, are
+ implemented as instances of this class.
+ <p>
+ Strings are constant; their values cannot be changed after they
+ are created. String buffers support mutable strings.
+ Because String objects are immutable they can be shared. For example:
+ <p><blockquote><pre>
+     String str = "abc";
+ </pre></blockquote><p>
+ is equivalent to:
+ <p><blockquote><pre>
+     char data[] = {'a', 'b', 'c'};
+     String str = new String(data);
+ </pre></blockquote><p>
+ Here are some more examples of how strings can be used:
+ <p><blockquote><pre>
+     System.out.println("abc");
+     String cde = "cde";
+     System.out.println("abc" + cde);
+     String c = "abc".substring(2,3);
+     String d = cde.substring(1, 2);
+ </pre></blockquote>
+ <p>
+ The class <code>String</code> includes methods for examining
+ individual characters of the sequence, for comparing strings, for
+ searching strings, for extracting substrings, and for creating a
+ copy of a string with all characters translated to uppercase or to
+ lowercase. Case mapping is based on the Unicode Standard version
+ specified by the <A HREF="../../java/lang/Character.html" title="class in java.lang"><CODE>Character</CODE></A> class.
+ <p>
+ The Java language provides special support for the string
+ concatenation operator (&nbsp;+&nbsp;), and for conversion of
+ other objects to strings. String concatenation is implemented
+ through the <code>StringBuilder</code>(or <code>StringBuffer</code>)
+ class and its <code>append</code> method.
+ String conversions are implemented through the method
+ <code>toString</code>, defined by <code>Object</code> and
+ inherited by all classes in Java. For additional information on
+ string concatenation and conversion, see Gosling, Joy, and Steele,
+ <i>The Java Language Specification</i>.
+
+ <p> Unless otherwise noted, passing a <tt>null</tt> argument to a constructor
+ or method in this class will cause a <A HREF="../../java/lang/NullPointerException.html" title="class in java.lang"><CODE>NullPointerException</CODE></A> to be
+ thrown.
+
+ <p>A <code>String</code> represents a string in the UTF-16 format
+ in which <em>supplementary characters</em> are represented by <em>surrogate
+ pairs</em> (see the section <a href="Character.html#unicode">Unicode
+ Character Representations</a> in the <code>Character</code> class for
+ more information).
+ Index values refer to <code>char</code> code units, so a supplementary
+ character uses two positions in a <code>String</code>.
+ <p>The <code>String</code> class provides methods for dealing with
+ Unicode code points (i.e., characters), in addition to those for
+ dealing with Unicode code units (i.e., <code>char</code> values).
+<P>
+
+<P>
+<DL>
+<DT><B>Since:</B></DT>
+  <DD>JDK1.0</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/lang/Object.html#toString()"><CODE>Object.toString()</CODE></A>, 
+<A HREF="../../java/lang/StringBuffer.html" title="class in java.lang"><CODE>StringBuffer</CODE></A>, 
+<A HREF="../../java/lang/StringBuilder.html" title="class in java.lang"><CODE>StringBuilder</CODE></A>, 
+<A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><CODE>Charset</CODE></A>, 
+<A HREF="../../serialized-form.html#java.lang.String">Serialized Form</A></DL>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/util/Comparator.html" title="interface in java.util">Comparator</A>&lt;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&gt;</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#CASE_INSENSITIVE_ORDER">CASE_INSENSITIVE_ORDER</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A Comparator that orders <code>String</code> objects as by
+ <code>compareToIgnoreCase</code>.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String()">String</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializes a newly created <code>String</code> object so that it represents
+ an empty character sequence.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(byte[])">String</A></B>(byte[]&nbsp;bytes)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the platform's default charset.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(byte[], java.nio.charset.Charset)">String</A></B>(byte[]&nbsp;bytes,
+       <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A>&nbsp;charset)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructs a new <code>String</code> by decoding the specified array of
+ bytes using the specified <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(byte[], int)">String</A></B>(byte[]&nbsp;ascii,
+       int&nbsp;hibyte)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Deprecated.</B>&nbsp;<I>This method does not properly convert bytes into
+ characters.  As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <code>String</code> constructors that take a <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><CODE>Charset</CODE></A>, charset name, or that use the platform's
+ default charset.</I></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(byte[], int, int)">String</A></B>(byte[]&nbsp;bytes,
+       int&nbsp;offset,
+       int&nbsp;length)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the platform's default charset.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(byte[], int, int, java.nio.charset.Charset)">String</A></B>(byte[]&nbsp;bytes,
+       int&nbsp;offset,
+       int&nbsp;length,
+       <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A>&nbsp;charset)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(byte[], int, int, int)">String</A></B>(byte[]&nbsp;ascii,
+       int&nbsp;hibyte,
+       int&nbsp;offset,
+       int&nbsp;count)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Deprecated.</B>&nbsp;<I>This method does not properly convert bytes into characters.
+ As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <code>String</code> constructors that take a <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><CODE>Charset</CODE></A>, charset name, or that use the platform's
+ default charset.</I></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(byte[], int, int, java.lang.String)">String</A></B>(byte[]&nbsp;bytes,
+       int&nbsp;offset,
+       int&nbsp;length,
+       <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;charsetName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified charset.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(byte[], java.lang.String)">String</A></B>(byte[]&nbsp;bytes,
+       <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;charsetName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the specified <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(char[])">String</A></B>(char[]&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Allocates a new <code>String</code> so that it represents the sequence of
+ characters currently contained in the character array argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(char[], int, int)">String</A></B>(char[]&nbsp;value,
+       int&nbsp;offset,
+       int&nbsp;count)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Allocates a new <code>String</code> that contains characters from a subarray
+ of the character array argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(int[], int, int)">String</A></B>(int[]&nbsp;codePoints,
+       int&nbsp;offset,
+       int&nbsp;count)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Allocates a new <code>String</code> that contains characters from a subarray
+ of the Unicode code point array argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(java.lang.String)">String</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;original)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializes a newly created <code>String</code> object so that it represents
+ the same sequence of characters as the argument; in other words, the
+ newly created string is a copy of the argument string.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(java.lang.StringBuffer)">String</A></B>(<A HREF="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</A>&nbsp;buffer)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Allocates a new string that contains the sequence of characters
+ currently contained in the string buffer argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../java/lang/String.html#String(java.lang.StringBuilder)">String</A></B>(<A HREF="../../java/lang/StringBuilder.html" title="class in java.lang">StringBuilder</A>&nbsp;builder)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Allocates a new string that contains the sequence of characters
+ currently contained in the string builder argument.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;char</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#charAt(int)">charAt</A></B>(int&nbsp;index)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the <code>char</code> value at the
+ specified index.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#codePointAt(int)">codePointAt</A></B>(int&nbsp;index)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the character (Unicode code point) at the specified
+ index.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#codePointBefore(int)">codePointBefore</A></B>(int&nbsp;index)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the character (Unicode code point) before the specified
+ index.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#codePointCount(int, int)">codePointCount</A></B>(int&nbsp;beginIndex,
+               int&nbsp;endIndex)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the number of Unicode code points in the specified text
+ range of this <code>String</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#compareTo(java.lang.String)">compareTo</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;anotherString)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compares two strings lexicographically.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#compareToIgnoreCase(java.lang.String)">compareToIgnoreCase</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compares two strings lexicographically, ignoring case
+ differences.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#concat(java.lang.String)">concat</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Concatenates the specified string to the end of this string.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#contains(java.lang.CharSequence)">contains</A></B>(<A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A>&nbsp;s)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if and only if this string contains the specified
+ sequence of char values.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#contentEquals(java.lang.CharSequence)">contentEquals</A></B>(<A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A>&nbsp;cs)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compares this string to the specified <code>CharSequence</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#contentEquals(java.lang.StringBuffer)">contentEquals</A></B>(<A HREF="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</A>&nbsp;sb)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compares this string to the specified <code>StringBuffer</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#copyValueOf(char[])">copyValueOf</A></B>(char[]&nbsp;data)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a String that represents the character sequence in the
+ array specified.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#copyValueOf(char[], int, int)">copyValueOf</A></B>(char[]&nbsp;data,
+            int&nbsp;offset,
+            int&nbsp;count)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a String that represents the character sequence in the
+ array specified.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#endsWith(java.lang.String)">endsWith</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;suffix)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests if this string ends with the specified suffix.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#equals(java.lang.Object)">equals</A></B>(<A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>&nbsp;anObject)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compares this string to the specified object.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#equalsIgnoreCase(java.lang.String)">equalsIgnoreCase</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;anotherString)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compares this <code>String</code> to another <code>String</code>, ignoring case
+ considerations.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#format(java.util.Locale, java.lang.String, java.lang.Object...)">format</A></B>(<A HREF="../../java/util/Locale.html" title="class in java.util">Locale</A>&nbsp;l,
+       <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;format,
+       <A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>...&nbsp;args)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a formatted string using the specified locale, format string,
+ and arguments.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#format(java.lang.String, java.lang.Object...)">format</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;format,
+       <A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>...&nbsp;args)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a formatted string using the specified format string and
+ arguments.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;byte[]</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#getBytes()">getBytes</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Encodes this <code>String</code> into a sequence of bytes using the
+ platform's default charset, storing the result into a new byte array.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;byte[]</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#getBytes(java.nio.charset.Charset)">getBytes</A></B>(<A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A>&nbsp;charset)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Encodes this <code>String</code> into a sequence of bytes using the given
+ <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>, storing the result into a
+ new byte array.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#getBytes(int, int, byte[], int)">getBytes</A></B>(int&nbsp;srcBegin,
+         int&nbsp;srcEnd,
+         byte[]&nbsp;dst,
+         int&nbsp;dstBegin)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Deprecated.</B>&nbsp;<I>This method does not properly convert characters into
+ bytes.  As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <A HREF="../../java/lang/String.html#getBytes()"><CODE>getBytes()</CODE></A> method, which uses the platform's default charset.</I></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;byte[]</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#getBytes(java.lang.String)">getBytes</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;charsetName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Encodes this <code>String</code> into a sequence of bytes using the named
+ charset, storing the result into a new byte array.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#getChars(int, int, char[], int)">getChars</A></B>(int&nbsp;srcBegin,
+         int&nbsp;srcEnd,
+         char[]&nbsp;dst,
+         int&nbsp;dstBegin)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Copies characters from this string into the destination character
+ array.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#hashCode()">hashCode</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a hash code for this string.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#indexOf(int)">indexOf</A></B>(int&nbsp;ch)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the index within this string of the first occurrence of
+ the specified character.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#indexOf(int, int)">indexOf</A></B>(int&nbsp;ch,
+        int&nbsp;fromIndex)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the index within this string of the first occurrence of the
+ specified character, starting the search at the specified index.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#indexOf(java.lang.String)">indexOf</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the index within this string of the first occurrence of the
+ specified substring.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#indexOf(java.lang.String, int)">indexOf</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str,
+        int&nbsp;fromIndex)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the index within this string of the first occurrence of the
+ specified substring, starting at the specified index.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#intern()">intern</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a canonical representation for the string object.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#isEmpty()">isEmpty</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns <tt>true</tt> if, and only if, <A HREF="../../java/lang/String.html#length()"><CODE>length()</CODE></A> is <tt>0</tt>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#lastIndexOf(int)">lastIndexOf</A></B>(int&nbsp;ch)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the index within this string of the last occurrence of
+ the specified character.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#lastIndexOf(int, int)">lastIndexOf</A></B>(int&nbsp;ch,
+            int&nbsp;fromIndex)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the index within this string of the last occurrence of
+ the specified character, searching backward starting at the
+ specified index.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#lastIndexOf(java.lang.String)">lastIndexOf</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the index within this string of the rightmost occurrence
+ of the specified substring.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#lastIndexOf(java.lang.String, int)">lastIndexOf</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str,
+            int&nbsp;fromIndex)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the index within this string of the last occurrence of the
+ specified substring, searching backward starting at the specified index.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#length()">length</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the length of this string.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#matches(java.lang.String)">matches</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;regex)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tells whether or not this string matches the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#offsetByCodePoints(int, int)">offsetByCodePoints</A></B>(int&nbsp;index,
+                   int&nbsp;codePointOffset)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the index within this <code>String</code> that is
+ offset from the given <code>index</code> by
+ <code>codePointOffset</code> code points.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#regionMatches(boolean, int, java.lang.String, int, int)">regionMatches</A></B>(boolean&nbsp;ignoreCase,
+              int&nbsp;toffset,
+              <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;other,
+              int&nbsp;ooffset,
+              int&nbsp;len)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests if two string regions are equal.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#regionMatches(int, java.lang.String, int, int)">regionMatches</A></B>(int&nbsp;toffset,
+              <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;other,
+              int&nbsp;ooffset,
+              int&nbsp;len)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests if two string regions are equal.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#replace(char, char)">replace</A></B>(char&nbsp;oldChar,
+        char&nbsp;newChar)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new string resulting from replacing all occurrences of
+ <code>oldChar</code> in this string with <code>newChar</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#replace(java.lang.CharSequence, java.lang.CharSequence)">replace</A></B>(<A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A>&nbsp;target,
+        <A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A>&nbsp;replacement)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replaces each substring of this string that matches the literal target
+ sequence with the specified literal replacement sequence.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#replaceAll(java.lang.String, java.lang.String)">replaceAll</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;regex,
+           <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;replacement)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replaces each substring of this string that matches the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a> with the
+ given replacement.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#replaceFirst(java.lang.String, java.lang.String)">replaceFirst</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;regex,
+             <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;replacement)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Replaces the first substring of this string that matches the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a> with the
+ given replacement.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>[]</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#split(java.lang.String)">split</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;regex)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Splits this string around matches of the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>[]</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#split(java.lang.String, int)">split</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;regex,
+      int&nbsp;limit)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Splits this string around matches of the given
+ <a href="../util/regex/Pattern.html#sum">regular expression</a>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#startsWith(java.lang.String)">startsWith</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;prefix)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests if this string starts with the specified prefix.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#startsWith(java.lang.String, int)">startsWith</A></B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;prefix,
+           int&nbsp;toffset)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Tests if the substring of this string beginning at the
+ specified index starts with the specified prefix.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#subSequence(int, int)">subSequence</A></B>(int&nbsp;beginIndex,
+            int&nbsp;endIndex)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new character sequence that is a subsequence of this sequence.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#substring(int)">substring</A></B>(int&nbsp;beginIndex)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new string that is a substring of this string.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#substring(int, int)">substring</A></B>(int&nbsp;beginIndex,
+          int&nbsp;endIndex)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new string that is a substring of this string.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;char[]</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#toCharArray()">toCharArray</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Converts this string to a new character array.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#toLowerCase()">toLowerCase</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Converts all of the characters in this <code>String</code> to lower
+ case using the rules of the default locale.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#toLowerCase(java.util.Locale)">toLowerCase</A></B>(<A HREF="../../java/util/Locale.html" title="class in java.util">Locale</A>&nbsp;locale)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Converts all of the characters in this <code>String</code> to lower
+ case using the rules of the given <code>Locale</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#toString()">toString</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This object (which is already a string!) is itself returned.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#toUpperCase()">toUpperCase</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Converts all of the characters in this <code>String</code> to upper
+ case using the rules of the default locale.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#toUpperCase(java.util.Locale)">toUpperCase</A></B>(<A HREF="../../java/util/Locale.html" title="class in java.util">Locale</A>&nbsp;locale)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Converts all of the characters in this <code>String</code> to upper
+ case using the rules of the given <code>Locale</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#trim()">trim</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a copy of the string, with leading and trailing whitespace
+ omitted.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#valueOf(boolean)">valueOf</A></B>(boolean&nbsp;b)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the string representation of the <code>boolean</code> argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#valueOf(char)">valueOf</A></B>(char&nbsp;c)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the string representation of the <code>char</code>
+ argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#valueOf(char[])">valueOf</A></B>(char[]&nbsp;data)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the string representation of the <code>char</code> array
+ argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#valueOf(char[], int, int)">valueOf</A></B>(char[]&nbsp;data,
+        int&nbsp;offset,
+        int&nbsp;count)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the string representation of a specific subarray of the
+ <code>char</code> array argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#valueOf(double)">valueOf</A></B>(double&nbsp;d)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the string representation of the <code>double</code> argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#valueOf(float)">valueOf</A></B>(float&nbsp;f)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the string representation of the <code>float</code> argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#valueOf(int)">valueOf</A></B>(int&nbsp;i)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the string representation of the <code>int</code> argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#valueOf(long)">valueOf</A></B>(long&nbsp;l)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the string representation of the <code>long</code> argument.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#valueOf(java.lang.Object)">valueOf</A></B>(<A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>&nbsp;obj)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the string representation of the <code>Object</code> argument.</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../java/lang/Object.html#clone()">clone</A>, <A HREF="../../java/lang/Object.html#finalize()">finalize</A>, <A HREF="../../java/lang/Object.html#getClass()">getClass</A>, <A HREF="../../java/lang/Object.html#notify()">notify</A>, <A HREF="../../java/lang/Object.html#notifyAll()">notifyAll</A>, <A HREF="../../java/lang/Object.html#wait()">wait</A>, <A HREF="../../java/lang/Object.html#wait(long)">wait</A>, <A HREF="../../java/lang/Object.html#wait(long, int)">wait</A [...]
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="CASE_INSENSITIVE_ORDER"><!-- --></A><H3>
+CASE_INSENSITIVE_ORDER</H3>
+<PRE>
+public static final <A HREF="../../java/util/Comparator.html" title="interface in java.util">Comparator</A>&lt;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&gt; <B>CASE_INSENSITIVE_ORDER</B></PRE>
+<DL>
+<DD>A Comparator that orders <code>String</code> objects as by
+ <code>compareToIgnoreCase</code>. This comparator is serializable.
+ <p>
+ Note that this Comparator does <em>not</em> take locale into account,
+ and will result in an unsatisfactory ordering for certain locales.
+ The java.text package provides <em>Collators</em> to allow
+ locale-sensitive ordering.
+<P>
+<DL>
+<DT><B>Since:</B></DT>
+  <DD>1.2</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/text/Collator.html#compare(java.lang.String, java.lang.String)"><CODE>Collator.compare(String, String)</CODE></A></DL>
+</DL>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="String()"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>()</PRE>
+<DL>
+<DD>Initializes a newly created <code>String</code> object so that it represents
+ an empty character sequence.  Note that use of this constructor is
+ unnecessary since Strings are immutable.
+<P>
+</DL>
+<HR>
+
+<A NAME="String(java.lang.String)"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;original)</PRE>
+<DL>
+<DD>Initializes a newly created <code>String</code> object so that it represents
+ the same sequence of characters as the argument; in other words, the
+ newly created string is a copy of the argument string. Unless an
+ explicit copy of <code>original</code> is needed, use of this constructor is
+ unnecessary since Strings are immutable.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>original</CODE> - A <code>String</code></DL>
+</DL>
+<HR>
+
+<A NAME="String(char[])"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(char[]&nbsp;value)</PRE>
+<DL>
+<DD>Allocates a new <code>String</code> so that it represents the sequence of
+ characters currently contained in the character array argument. The
+ contents of the character array are copied; subsequent modification of
+ the character array does not affect the newly created string.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - The initial value of the string</DL>
+</DL>
+<HR>
+
+<A NAME="String(char[], int, int)"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(char[]&nbsp;value,
+              int&nbsp;offset,
+              int&nbsp;count)</PRE>
+<DL>
+<DD>Allocates a new <code>String</code> that contains characters from a subarray
+ of the character array argument. The <code>offset</code> argument is the
+ index of the first character of the subarray and the <code>count</code>
+ argument specifies the length of the subarray. The contents of the
+ subarray are copied; subsequent modification of the character array does
+ not affect the newly created string.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - Array that is the source of characters<DD><CODE>offset</CODE> - The initial offset<DD><CODE>count</CODE> - The length
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - If the <code>offset</code> and <code>count</code> arguments index
+          characters outside the bounds of the <code>value</code> array</DL>
+</DL>
+<HR>
+
+<A NAME="String(int[], int, int)"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(int[]&nbsp;codePoints,
+              int&nbsp;offset,
+              int&nbsp;count)</PRE>
+<DL>
+<DD>Allocates a new <code>String</code> that contains characters from a subarray
+ of the Unicode code point array argument. The <code>offset</code> argument
+ is the index of the first code point of the subarray and the
+ <code>count</code> argument specifies the length of the subarray. The
+ contents of the subarray are converted to <code>char</code>s; subsequent
+ modification of the <code>int</code> array does not affect the newly created
+ string.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>codePoints</CODE> - Array that is the source of Unicode code points<DD><CODE>offset</CODE> - The initial offset<DD><CODE>count</CODE> - The length
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</A></CODE> - If any invalid Unicode code point is found in <code>codePoints</code>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - If the <code>offset</code> and <code>count</code> arguments index
+          characters outside the bounds of the <code>codePoints</code> array<DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="String(byte[], int, int, int)"><!-- --></A><H3>
+String</H3>
+<PRE>
+<FONT SIZE="-1"><A HREF="../../java/lang/Deprecated.html" title="annotation in java.lang">@Deprecated</A>
+</FONT>public <B>String</B>(byte[]&nbsp;ascii,
+                         int&nbsp;hibyte,
+                         int&nbsp;offset,
+                         int&nbsp;count)</PRE>
+<DL>
+<DD><B>Deprecated.</B>&nbsp;<I>This method does not properly convert bytes into characters.
+ As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <code>String</code> constructors that take a <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><CODE>Charset</CODE></A>, charset name, or that use the platform's
+ default charset.</I>
+<P>
+<DD>Allocates a new <code>String</code> constructed from a subarray of an array
+ of 8-bit integer values.
+
+ <p> The <code>offset</code> argument is the index of the first byte of the
+ subarray, and the <code>count</code> argument specifies the length of the
+ subarray.
+
+ <p> Each <code>byte</code> in the subarray is converted to a <code>char</code> as
+ specified in the method above.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>ascii</CODE> - The bytes to be converted to characters<DD><CODE>hibyte</CODE> - The top 8 bits of each 16-bit Unicode code unit<DD><CODE>offset</CODE> - The initial offset<DD><CODE>count</CODE> - The length
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - If the <code>offset</code> or <code>count</code> argument is invalid<DT><B>See Also:</B><DD><A HREF="../../java/lang/String.html#String(byte[], int)"><CODE>String(byte[], int)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[], int, int, java.lang.String)"><CODE>String(byte[], int, int, java.lang.String)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[], int, int, java.nio.charset.Charset)"><CODE>String(byte[], int, int, java.nio.charset.Charset)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[], int, int)"><CODE>String(byte[], int, int)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[], java.lang.String)"><CODE>String(byte[], java.lang.String)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[], java.nio.charset.Charset)"><CODE>String(byte[], java.nio.charset.Charset)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[])"><CODE>String(byte[])</CODE></A></DL>
+</DL>
+<HR>
+
+<A NAME="String(byte[], int)"><!-- --></A><H3>
+String</H3>
+<PRE>
+<FONT SIZE="-1"><A HREF="../../java/lang/Deprecated.html" title="annotation in java.lang">@Deprecated</A>
+</FONT>public <B>String</B>(byte[]&nbsp;ascii,
+                         int&nbsp;hibyte)</PRE>
+<DL>
+<DD><B>Deprecated.</B>&nbsp;<I>This method does not properly convert bytes into
+ characters.  As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <code>String</code> constructors that take a <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><CODE>Charset</CODE></A>, charset name, or that use the platform's
+ default charset.</I>
+<P>
+<DD>Allocates a new <code>String</code> containing characters constructed from
+ an array of 8-bit integer values. Each character <i>c</i>in the
+ resulting string is constructed from the corresponding component
+ <i>b</i> in the byte array such that:
+
+ <blockquote><pre>
+     <b><i>c</i></b> == (char)(((hibyte &amp; 0xff) &lt;&lt; 8)
+                         | (<b><i>b</i></b> &amp; 0xff))
+ </pre></blockquote>
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>ascii</CODE> - The bytes to be converted to characters<DD><CODE>hibyte</CODE> - The top 8 bits of each 16-bit Unicode code unit<DT><B>See Also:</B><DD><A HREF="../../java/lang/String.html#String(byte[], int, int, java.lang.String)"><CODE>String(byte[], int, int, java.lang.String)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[], int, int, java.nio.charset.Charset)"><CODE>String(byte[], int, int, java.nio.charset.Charset)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[], int, int)"><CODE>String(byte[], int, int)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[], java.lang.String)"><CODE>String(byte[], java.lang.String)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[], java.nio.charset.Charset)"><CODE>String(byte[], java.nio.charset.Charset)</CODE></A>, 
+<A HREF="../../java/lang/String.html#String(byte[])"><CODE>String(byte[])</CODE></A></DL>
+</DL>
+<HR>
+
+<A NAME="String(byte[], int, int, java.lang.String)"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(byte[]&nbsp;bytes,
+              int&nbsp;offset,
+              int&nbsp;length,
+              <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;charsetName)
+       throws <A HREF="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</A></PRE>
+<DL>
+<DD>Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified charset.  The length of the new <code>String</code>
+ is a function of the charset, and hence may not be equal to the length
+ of the subarray.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the given charset is unspecified.  The <A HREF="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><CODE>CharsetDecoder</CODE></A> class should be used when more control
+ over the decoding process is required.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>bytes</CODE> - The bytes to be decoded into characters<DD><CODE>offset</CODE> - The index of the first byte to decode<DD><CODE>length</CODE> - The number of bytes to decode<DD><CODE>charsetName</CODE> - The name of a supported <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</A></CODE> - If the named charset is not supported
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - If the <code>offset</code> and <code>length</code> arguments index
+          characters outside the bounds of the <code>bytes</code> array<DT><B>Since:</B></DT>
+  <DD>JDK1.1</DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="String(byte[], int, int, java.nio.charset.Charset)"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(byte[]&nbsp;bytes,
+              int&nbsp;offset,
+              int&nbsp;length,
+              <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A>&nbsp;charset)</PRE>
+<DL>
+<DD>Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>.
+ The length of the new <code>String</code> is a function of the charset, and
+ hence may not be equal to the length of the subarray.
+
+ <p> This method always replaces malformed-input and unmappable-character
+ sequences with this charset's default replacement string.  The <A HREF="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><CODE>CharsetDecoder</CODE></A> class should be used when more control
+ over the decoding process is required.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>bytes</CODE> - The bytes to be decoded into characters<DD><CODE>offset</CODE> - The index of the first byte to decode<DD><CODE>length</CODE> - The number of bytes to decode<DD><CODE>charset</CODE> - The <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A> to be used to
+         decode the <code>bytes</code>
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - If the <code>offset</code> and <code>length</code> arguments index
+          characters outside the bounds of the <code>bytes</code> array<DT><B>Since:</B></DT>
+  <DD>1.6</DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="String(byte[], java.lang.String)"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(byte[]&nbsp;bytes,
+              <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;charsetName)
+       throws <A HREF="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</A></PRE>
+<DL>
+<DD>Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the specified <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>.  The
+ length of the new <code>String</code> is a function of the charset, and hence
+ may not be equal to the length of the byte array.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the given charset is unspecified.  The <A HREF="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><CODE>CharsetDecoder</CODE></A> class should be used when more control
+ over the decoding process is required.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>bytes</CODE> - The bytes to be decoded into characters<DD><CODE>charsetName</CODE> - The name of a supported <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</A></CODE> - If the named charset is not supported<DT><B>Since:</B></DT>
+  <DD>JDK1.1</DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="String(byte[], java.nio.charset.Charset)"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(byte[]&nbsp;bytes,
+              <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A>&nbsp;charset)</PRE>
+<DL>
+<DD>Constructs a new <code>String</code> by decoding the specified array of
+ bytes using the specified <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>.
+ The length of the new <code>String</code> is a function of the charset, and
+ hence may not be equal to the length of the byte array.
+
+ <p> This method always replaces malformed-input and unmappable-character
+ sequences with this charset's default replacement string.  The <A HREF="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><CODE>CharsetDecoder</CODE></A> class should be used when more control
+ over the decoding process is required.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>bytes</CODE> - The bytes to be decoded into characters<DD><CODE>charset</CODE> - The <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A> to be used to
+         decode the <code>bytes</code><DT><B>Since:</B></DT>
+  <DD>1.6</DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="String(byte[], int, int)"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(byte[]&nbsp;bytes,
+              int&nbsp;offset,
+              int&nbsp;length)</PRE>
+<DL>
+<DD>Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the platform's default charset.  The length of the new
+ <code>String</code> is a function of the charset, and hence may not be equal
+ to the length of the subarray.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the default charset is unspecified.  The <A HREF="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><CODE>CharsetDecoder</CODE></A> class should be used when more control
+ over the decoding process is required.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>bytes</CODE> - The bytes to be decoded into characters<DD><CODE>offset</CODE> - The index of the first byte to decode<DD><CODE>length</CODE> - The number of bytes to decode
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - If the <code>offset</code> and the <code>length</code> arguments index
+          characters outside the bounds of the <code>bytes</code> array<DT><B>Since:</B></DT>
+  <DD>JDK1.1</DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="String(byte[])"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(byte[]&nbsp;bytes)</PRE>
+<DL>
+<DD>Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the platform's default charset.  The length of the new <code>String</code> is a function of the charset, and hence may not be equal to the
+ length of the byte array.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the default charset is unspecified.  The <A HREF="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><CODE>CharsetDecoder</CODE></A> class should be used when more control
+ over the decoding process is required.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>bytes</CODE> - The bytes to be decoded into characters<DT><B>Since:</B></DT>
+  <DD>JDK1.1</DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="String(java.lang.StringBuffer)"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(<A HREF="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</A>&nbsp;buffer)</PRE>
+<DL>
+<DD>Allocates a new string that contains the sequence of characters
+ currently contained in the string buffer argument. The contents of the
+ string buffer are copied; subsequent modification of the string buffer
+ does not affect the newly created string.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>buffer</CODE> - A <code>StringBuffer</code></DL>
+</DL>
+<HR>
+
+<A NAME="String(java.lang.StringBuilder)"><!-- --></A><H3>
+String</H3>
+<PRE>
+public <B>String</B>(<A HREF="../../java/lang/StringBuilder.html" title="class in java.lang">StringBuilder</A>&nbsp;builder)</PRE>
+<DL>
+<DD>Allocates a new string that contains the sequence of characters
+ currently contained in the string builder argument. The contents of the
+ string builder are copied; subsequent modification of the string builder
+ does not affect the newly created string.
+
+ <p> This constructor is provided to ease migration to <code>StringBuilder</code>. Obtaining a string from a string builder via the <code>toString</code> method is likely to run faster and is generally preferred.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>builder</CODE> - A <code>StringBuilder</code><DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="length()"><!-- --></A><H3>
+length</H3>
+<PRE>
+public int <B>length</B>()</PRE>
+<DL>
+<DD>Returns the length of this string.
+ The length is equal to the number of <a href="Character.html#unicode">Unicode
+ code units</a> in the string.
+<P>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE><A HREF="../../java/lang/CharSequence.html#length()">length</A></CODE> in interface <CODE><A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A></CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the length of the sequence of characters represented by this
+          object.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isEmpty()"><!-- --></A><H3>
+isEmpty</H3>
+<PRE>
+public boolean <B>isEmpty</B>()</PRE>
+<DL>
+<DD>Returns <tt>true</tt> if, and only if, <A HREF="../../java/lang/String.html#length()"><CODE>length()</CODE></A> is <tt>0</tt>.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD><tt>true</tt> if <A HREF="../../java/lang/String.html#length()"><CODE>length()</CODE></A> is <tt>0</tt>, otherwise
+ <tt>false</tt><DT><B>Since:</B></DT>
+  <DD>1.6</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="charAt(int)"><!-- --></A><H3>
+charAt</H3>
+<PRE>
+public char <B>charAt</B>(int&nbsp;index)</PRE>
+<DL>
+<DD>Returns the <code>char</code> value at the
+ specified index. An index ranges from <code>0</code> to
+ <code>length() - 1</code>. The first <code>char</code> value of the sequence
+ is at index <code>0</code>, the next at index <code>1</code>,
+ and so on, as for array indexing.
+
+ <p>If the <code>char</code> value specified by the index is a
+ <a href="Character.html#unicode">surrogate</a>, the surrogate
+ value is returned.
+<P>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE><A HREF="../../java/lang/CharSequence.html#charAt(int)">charAt</A></CODE> in interface <CODE><A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A></CODE></DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>index</CODE> - the index of the <code>char</code> value.
+<DT><B>Returns:</B><DD>the <code>char</code> value at the specified index of this string.
+             The first <code>char</code> value is at index <code>0</code>.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - if the <code>index</code>
+             argument is negative or not less than the length of this
+             string.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="codePointAt(int)"><!-- --></A><H3>
+codePointAt</H3>
+<PRE>
+public int <B>codePointAt</B>(int&nbsp;index)</PRE>
+<DL>
+<DD>Returns the character (Unicode code point) at the specified
+ index. The index refers to <code>char</code> values
+ (Unicode code units) and ranges from <code>0</code> to
+ <A HREF="../../java/lang/String.html#length()"><CODE>length()</CODE></A><code> - 1</code>.
+
+ <p> If the <code>char</code> value specified at the given index
+ is in the high-surrogate range, the following index is less
+ than the length of this <code>String</code>, and the
+ <code>char</code> value at the following index is in the
+ low-surrogate range, then the supplementary code point
+ corresponding to this surrogate pair is returned. Otherwise,
+ the <code>char</code> value at the given index is returned.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>index</CODE> - the index to the <code>char</code> values
+<DT><B>Returns:</B><DD>the code point value of the character at the
+             <code>index</code>
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - if the <code>index</code>
+             argument is negative or not less than the length of this
+             string.<DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="codePointBefore(int)"><!-- --></A><H3>
+codePointBefore</H3>
+<PRE>
+public int <B>codePointBefore</B>(int&nbsp;index)</PRE>
+<DL>
+<DD>Returns the character (Unicode code point) before the specified
+ index. The index refers to <code>char</code> values
+ (Unicode code units) and ranges from <code>1</code> to <A HREF="../../java/lang/CharSequence.html#length()"><CODE>length</CODE></A>.
+
+ <p> If the <code>char</code> value at <code>(index - 1)</code>
+ is in the low-surrogate range, <code>(index - 2)</code> is not
+ negative, and the <code>char</code> value at <code>(index -
+ 2)</code> is in the high-surrogate range, then the
+ supplementary code point value of the surrogate pair is
+ returned. If the <code>char</code> value at <code>index -
+ 1</code> is an unpaired low-surrogate or a high-surrogate, the
+ surrogate value is returned.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>index</CODE> - the index following the code point that should be returned
+<DT><B>Returns:</B><DD>the Unicode code point value before the given index.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - if the <code>index</code>
+            argument is less than 1 or greater than the length
+            of this string.<DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="codePointCount(int, int)"><!-- --></A><H3>
+codePointCount</H3>
+<PRE>
+public int <B>codePointCount</B>(int&nbsp;beginIndex,
+                          int&nbsp;endIndex)</PRE>
+<DL>
+<DD>Returns the number of Unicode code points in the specified text
+ range of this <code>String</code>. The text range begins at the
+ specified <code>beginIndex</code> and extends to the
+ <code>char</code> at index <code>endIndex - 1</code>. Thus the
+ length (in <code>char</code>s) of the text range is
+ <code>endIndex-beginIndex</code>. Unpaired surrogates within
+ the text range count as one code point each.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>beginIndex</CODE> - the index to the first <code>char</code> of
+ the text range.<DD><CODE>endIndex</CODE> - the index after the last <code>char</code> of
+ the text range.
+<DT><B>Returns:</B><DD>the number of Unicode code points in the specified text
+ range
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - if the
+ <code>beginIndex</code> is negative, or <code>endIndex</code>
+ is larger than the length of this <code>String</code>, or
+ <code>beginIndex</code> is larger than <code>endIndex</code>.<DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="offsetByCodePoints(int, int)"><!-- --></A><H3>
+offsetByCodePoints</H3>
+<PRE>
+public int <B>offsetByCodePoints</B>(int&nbsp;index,
+                              int&nbsp;codePointOffset)</PRE>
+<DL>
+<DD>Returns the index within this <code>String</code> that is
+ offset from the given <code>index</code> by
+ <code>codePointOffset</code> code points. Unpaired surrogates
+ within the text range given by <code>index</code> and
+ <code>codePointOffset</code> count as one code point each.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>index</CODE> - the index to be offset<DD><CODE>codePointOffset</CODE> - the offset in code points
+<DT><B>Returns:</B><DD>the index within this <code>String</code>
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - if <code>index</code>
+   is negative or larger then the length of this
+   <code>String</code>, or if <code>codePointOffset</code> is positive
+   and the substring starting with <code>index</code> has fewer
+   than <code>codePointOffset</code> code points,
+   or if <code>codePointOffset</code> is negative and the substring
+   before <code>index</code> has fewer than the absolute value
+   of <code>codePointOffset</code> code points.<DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getChars(int, int, char[], int)"><!-- --></A><H3>
+getChars</H3>
+<PRE>
+public void <B>getChars</B>(int&nbsp;srcBegin,
+                     int&nbsp;srcEnd,
+                     char[]&nbsp;dst,
+                     int&nbsp;dstBegin)</PRE>
+<DL>
+<DD>Copies characters from this string into the destination character
+ array.
+ <p>
+ The first character to be copied is at index <code>srcBegin</code>;
+ the last character to be copied is at index <code>srcEnd-1</code>
+ (thus the total number of characters to be copied is
+ <code>srcEnd-srcBegin</code>). The characters are copied into the
+ subarray of <code>dst</code> starting at index <code>dstBegin</code>
+ and ending at index:
+ <p><blockquote><pre>
+     dstbegin + (srcEnd-srcBegin) - 1
+ </pre></blockquote>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>srcBegin</CODE> - index of the first character in the string
+                        to copy.<DD><CODE>srcEnd</CODE> - index after the last character in the string
+                        to copy.<DD><CODE>dst</CODE> - the destination array.<DD><CODE>dstBegin</CODE> - the start offset in the destination array.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - If any of the following
+            is true:
+            <ul><li><code>srcBegin</code> is negative.
+            <li><code>srcBegin</code> is greater than <code>srcEnd</code>
+            <li><code>srcEnd</code> is greater than the length of this
+                string
+            <li><code>dstBegin</code> is negative
+            <li><code>dstBegin+(srcEnd-srcBegin)</code> is larger than
+                <code>dst.length</code></ul></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBytes(int, int, byte[], int)"><!-- --></A><H3>
+getBytes</H3>
+<PRE>
+<FONT SIZE="-1"><A HREF="../../java/lang/Deprecated.html" title="annotation in java.lang">@Deprecated</A>
+</FONT>public void <B>getBytes</B>(int&nbsp;srcBegin,
+                                int&nbsp;srcEnd,
+                                byte[]&nbsp;dst,
+                                int&nbsp;dstBegin)</PRE>
+<DL>
+<DD><B>Deprecated.</B>&nbsp;<I>This method does not properly convert characters into
+ bytes.  As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <A HREF="../../java/lang/String.html#getBytes()"><CODE>getBytes()</CODE></A> method, which uses the platform's default charset.</I>
+<P>
+<DD>Copies characters from this string into the destination byte array. Each
+ byte receives the 8 low-order bits of the corresponding character. The
+ eight high-order bits of each character are not copied and do not
+ participate in the transfer in any way.
+
+ <p> The first character to be copied is at index <code>srcBegin</code>; the
+ last character to be copied is at index <code>srcEnd-1</code>.  The total
+ number of characters to be copied is <code>srcEnd-srcBegin</code>. The
+ characters, converted to bytes, are copied into the subarray of <code>dst</code> starting at index <code>dstBegin</code> and ending at index:
+
+ <blockquote><pre>
+     dstbegin + (srcEnd-srcBegin) - 1
+ </pre></blockquote>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>srcBegin</CODE> - Index of the first character in the string to copy<DD><CODE>srcEnd</CODE> - Index after the last character in the string to copy<DD><CODE>dst</CODE> - The destination array<DD><CODE>dstBegin</CODE> - The start offset in the destination array
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - If any of the following is true:
+          <ul>
+            <li> <code>srcBegin</code> is negative
+            <li> <code>srcBegin</code> is greater than <code>srcEnd</code>
+            <li> <code>srcEnd</code> is greater than the length of this String
+            <li> <code>dstBegin</code> is negative
+            <li> <code>dstBegin+(srcEnd-srcBegin)</code> is larger than <code>dst.length</code>
+          </ul></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBytes(java.lang.String)"><!-- --></A><H3>
+getBytes</H3>
+<PRE>
+public byte[] <B>getBytes</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;charsetName)
+                throws <A HREF="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</A></PRE>
+<DL>
+<DD>Encodes this <code>String</code> into a sequence of bytes using the named
+ charset, storing the result into a new byte array.
+
+ <p> The behavior of this method when this string cannot be encoded in
+ the given charset is unspecified.  The <A HREF="../../java/nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><CODE>CharsetEncoder</CODE></A> class should be used when more control
+ over the encoding process is required.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>charsetName</CODE> - The name of a supported <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>
+<DT><B>Returns:</B><DD>The resultant byte array
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</A></CODE> - If the named charset is not supported<DT><B>Since:</B></DT>
+  <DD>JDK1.1</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBytes(java.nio.charset.Charset)"><!-- --></A><H3>
+getBytes</H3>
+<PRE>
+public byte[] <B>getBytes</B>(<A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A>&nbsp;charset)</PRE>
+<DL>
+<DD>Encodes this <code>String</code> into a sequence of bytes using the given
+ <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</A>, storing the result into a
+ new byte array.
+
+ <p> This method always replaces malformed-input and unmappable-character
+ sequences with this charset's default replacement byte array.  The
+ <A HREF="../../java/nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><CODE>CharsetEncoder</CODE></A> class should be used when more
+ control over the encoding process is required.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>charset</CODE> - The <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A> to be used to encode
+         the <code>String</code>
+<DT><B>Returns:</B><DD>The resultant byte array<DT><B>Since:</B></DT>
+  <DD>1.6</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBytes()"><!-- --></A><H3>
+getBytes</H3>
+<PRE>
+public byte[] <B>getBytes</B>()</PRE>
+<DL>
+<DD>Encodes this <code>String</code> into a sequence of bytes using the
+ platform's default charset, storing the result into a new byte array.
+
+ <p> The behavior of this method when this string cannot be encoded in
+ the default charset is unspecified.  The <A HREF="../../java/nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><CODE>CharsetEncoder</CODE></A> class should be used when more control
+ over the encoding process is required.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>The resultant byte array<DT><B>Since:</B></DT>
+  <DD>JDK1.1</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="equals(java.lang.Object)"><!-- --></A><H3>
+equals</H3>
+<PRE>
+public boolean <B>equals</B>(<A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>&nbsp;anObject)</PRE>
+<DL>
+<DD>Compares this string to the specified object.  The result is <code>true</code> if and only if the argument is not <code>null</code> and is a <code>String</code> object that represents the same sequence of characters as this
+ object.
+<P>
+<DD><DL>
+<DT><B>Overrides:</B><DD><CODE><A HREF="../../java/lang/Object.html#equals(java.lang.Object)">equals</A></CODE> in class <CODE><A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A></CODE></DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>anObject</CODE> - The object to compare this <code>String</code> against
+<DT><B>Returns:</B><DD><code>true</code> if the given object represents a <code>String</code>
+          equivalent to this string, <code>false</code> otherwise<DT><B>See Also:</B><DD><A HREF="../../java/lang/String.html#compareTo(java.lang.String)"><CODE>compareTo(String)</CODE></A>, 
+<A HREF="../../java/lang/String.html#equalsIgnoreCase(java.lang.String)"><CODE>equalsIgnoreCase(String)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="contentEquals(java.lang.StringBuffer)"><!-- --></A><H3>
+contentEquals</H3>
+<PRE>
+public boolean <B>contentEquals</B>(<A HREF="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</A>&nbsp;sb)</PRE>
+<DL>
+<DD>Compares this string to the specified <code>StringBuffer</code>.  The result
+ is <code>true</code> if and only if this <code>String</code> represents the same
+ sequence of characters as the specified <code>StringBuffer</code>.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>sb</CODE> - The <code>StringBuffer</code> to compare this <code>String</code> against
+<DT><B>Returns:</B><DD><code>true</code> if this <code>String</code> represents the same
+          sequence of characters as the specified <code>StringBuffer</code>,
+          <code>false</code> otherwise<DT><B>Since:</B></DT>
+  <DD>1.4</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="contentEquals(java.lang.CharSequence)"><!-- --></A><H3>
+contentEquals</H3>
+<PRE>
+public boolean <B>contentEquals</B>(<A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A>&nbsp;cs)</PRE>
+<DL>
+<DD>Compares this string to the specified <code>CharSequence</code>.  The result
+ is <code>true</code> if and only if this <code>String</code> represents the same
+ sequence of char values as the specified sequence.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>cs</CODE> - The sequence to compare this <code>String</code> against
+<DT><B>Returns:</B><DD><code>true</code> if this <code>String</code> represents the same
+          sequence of char values as the specified sequence, <code>false</code> otherwise<DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="equalsIgnoreCase(java.lang.String)"><!-- --></A><H3>
+equalsIgnoreCase</H3>
+<PRE>
+public boolean <B>equalsIgnoreCase</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;anotherString)</PRE>
+<DL>
+<DD>Compares this <code>String</code> to another <code>String</code>, ignoring case
+ considerations.  Two strings are considered equal ignoring case if they
+ are of the same length and corresponding characters in the two strings
+ are equal ignoring case.
+
+ <p> Two characters <code>c1</code> and <code>c2</code> are considered the same
+ ignoring case if at least one of the following is true:
+ <ul>
+   <li> The two characters are the same (as compared by the
+        <code>==</code> operator)
+   <li> Applying the method <A HREF="../../java/lang/Character.html#toUpperCase(char)"><CODE>Character.toUpperCase(char)</CODE></A> to each character
+        produces the same result
+   <li> Applying the method <A HREF="../../java/lang/Character.html#toLowerCase(char)"><CODE>Character.toLowerCase(char)</CODE></A> to each character
+        produces the same result
+ </ul>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>anotherString</CODE> - The <code>String</code> to compare this <code>String</code> against
+<DT><B>Returns:</B><DD><code>true</code> if the argument is not <code>null</code> and it
+          represents an equivalent <code>String</code> ignoring case; <code>false</code> otherwise<DT><B>See Also:</B><DD><A HREF="../../java/lang/String.html#equals(java.lang.Object)"><CODE>equals(Object)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="compareTo(java.lang.String)"><!-- --></A><H3>
+compareTo</H3>
+<PRE>
+public int <B>compareTo</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;anotherString)</PRE>
+<DL>
+<DD>Compares two strings lexicographically.
+ The comparison is based on the Unicode value of each character in
+ the strings. The character sequence represented by this
+ <code>String</code> object is compared lexicographically to the
+ character sequence represented by the argument string. The result is
+ a negative integer if this <code>String</code> object
+ lexicographically precedes the argument string. The result is a
+ positive integer if this <code>String</code> object lexicographically
+ follows the argument string. The result is zero if the strings
+ are equal; <code>compareTo</code> returns <code>0</code> exactly when
+ the <A HREF="../../java/lang/String.html#equals(java.lang.Object)"><CODE>equals(Object)</CODE></A> method would return <code>true</code>.
+ <p>
+ This is the definition of lexicographic ordering. If two strings are
+ different, then either they have different characters at some index
+ that is a valid index for both strings, or their lengths are different,
+ or both. If they have different characters at one or more index
+ positions, let <i>k</i> be the smallest such index; then the string
+ whose character at position <i>k</i> has the smaller value, as
+ determined by using the &lt; operator, lexicographically precedes the
+ other string. In this case, <code>compareTo</code> returns the
+ difference of the two character values at position <code>k</code> in
+ the two string -- that is, the value:
+ <blockquote><pre>
+ this.charAt(k)-anotherString.charAt(k)
+ </pre></blockquote>
+ If there is no index position at which they differ, then the shorter
+ string lexicographically precedes the longer string. In this case,
+ <code>compareTo</code> returns the difference of the lengths of the
+ strings -- that is, the value:
+ <blockquote><pre>
+ this.length()-anotherString.length()
+ </pre></blockquote>
+<P>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE><A HREF="../../java/lang/Comparable.html#compareTo(T)">compareTo</A></CODE> in interface <CODE><A HREF="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</A>&lt;<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&gt;</CODE></DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>anotherString</CODE> - the <code>String</code> to be compared.
+<DT><B>Returns:</B><DD>the value <code>0</code> if the argument string is equal to
+          this string; a value less than <code>0</code> if this string
+          is lexicographically less than the string argument; and a
+          value greater than <code>0</code> if this string is
+          lexicographically greater than the string argument.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="compareToIgnoreCase(java.lang.String)"><!-- --></A><H3>
+compareToIgnoreCase</H3>
+<PRE>
+public int <B>compareToIgnoreCase</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str)</PRE>
+<DL>
+<DD>Compares two strings lexicographically, ignoring case
+ differences. This method returns an integer whose sign is that of
+ calling <code>compareTo</code> with normalized versions of the strings
+ where case differences have been eliminated by calling
+ <code>Character.toLowerCase(Character.toUpperCase(character))</code> on
+ each character.
+ <p>
+ Note that this method does <em>not</em> take locale into account,
+ and will result in an unsatisfactory ordering for certain locales.
+ The java.text package provides <em>collators</em> to allow
+ locale-sensitive ordering.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>str</CODE> - the <code>String</code> to be compared.
+<DT><B>Returns:</B><DD>a negative integer, zero, or a positive integer as the
+                specified String is greater than, equal to, or less
+                than this String, ignoring case considerations.<DT><B>Since:</B></DT>
+  <DD>1.2</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/text/Collator.html#compare(java.lang.String, java.lang.String)"><CODE>Collator.compare(String, String)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="regionMatches(int, java.lang.String, int, int)"><!-- --></A><H3>
+regionMatches</H3>
+<PRE>
+public boolean <B>regionMatches</B>(int&nbsp;toffset,
+                             <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;other,
+                             int&nbsp;ooffset,
+                             int&nbsp;len)</PRE>
+<DL>
+<DD>Tests if two string regions are equal.
+ <p>
+ A substring of this <tt>String</tt> object is compared to a substring
+ of the argument other. The result is true if these substrings
+ represent identical character sequences. The substring of this
+ <tt>String</tt> object to be compared begins at index <tt>toffset</tt>
+ and has length <tt>len</tt>. The substring of other to be compared
+ begins at index <tt>ooffset</tt> and has length <tt>len</tt>. The
+ result is <tt>false</tt> if and only if at least one of the following
+ is true:
+ <ul><li><tt>toffset</tt> is negative.
+ <li><tt>ooffset</tt> is negative.
+ <li><tt>toffset+len</tt> is greater than the length of this
+ <tt>String</tt> object.
+ <li><tt>ooffset+len</tt> is greater than the length of the other
+ argument.
+ <li>There is some nonnegative integer <i>k</i> less than <tt>len</tt>
+ such that:
+ <tt>this.charAt(toffset+<i>k</i>)&nbsp;!=&nbsp;other.charAt(ooffset+<i>k</i>)</tt>
+ </ul>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>toffset</CODE> - the starting offset of the subregion in this string.<DD><CODE>other</CODE> - the string argument.<DD><CODE>ooffset</CODE> - the starting offset of the subregion in the string
+                    argument.<DD><CODE>len</CODE> - the number of characters to compare.
+<DT><B>Returns:</B><DD><code>true</code> if the specified subregion of this string
+          exactly matches the specified subregion of the string argument;
+          <code>false</code> otherwise.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="regionMatches(boolean, int, java.lang.String, int, int)"><!-- --></A><H3>
+regionMatches</H3>
+<PRE>
+public boolean <B>regionMatches</B>(boolean&nbsp;ignoreCase,
+                             int&nbsp;toffset,
+                             <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;other,
+                             int&nbsp;ooffset,
+                             int&nbsp;len)</PRE>
+<DL>
+<DD>Tests if two string regions are equal.
+ <p>
+ A substring of this <tt>String</tt> object is compared to a substring
+ of the argument <tt>other</tt>. The result is <tt>true</tt> if these
+ substrings represent character sequences that are the same, ignoring
+ case if and only if <tt>ignoreCase</tt> is true. The substring of
+ this <tt>String</tt> object to be compared begins at index
+ <tt>toffset</tt> and has length <tt>len</tt>. The substring of
+ <tt>other</tt> to be compared begins at index <tt>ooffset</tt> and
+ has length <tt>len</tt>. The result is <tt>false</tt> if and only if
+ at least one of the following is true:
+ <ul><li><tt>toffset</tt> is negative.
+ <li><tt>ooffset</tt> is negative.
+ <li><tt>toffset+len</tt> is greater than the length of this
+ <tt>String</tt> object.
+ <li><tt>ooffset+len</tt> is greater than the length of the other
+ argument.
+ <li><tt>ignoreCase</tt> is <tt>false</tt> and there is some nonnegative
+ integer <i>k</i> less than <tt>len</tt> such that:
+ <blockquote><pre>
+ this.charAt(toffset+k) != other.charAt(ooffset+k)
+ </pre></blockquote>
+ <li><tt>ignoreCase</tt> is <tt>true</tt> and there is some nonnegative
+ integer <i>k</i> less than <tt>len</tt> such that:
+ <blockquote><pre>
+ Character.toLowerCase(this.charAt(toffset+k)) !=
+               Character.toLowerCase(other.charAt(ooffset+k))
+ </pre></blockquote>
+ and:
+ <blockquote><pre>
+ Character.toUpperCase(this.charAt(toffset+k)) !=
+         Character.toUpperCase(other.charAt(ooffset+k))
+ </pre></blockquote>
+ </ul>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>ignoreCase</CODE> - if <code>true</code>, ignore case when comparing
+                       characters.<DD><CODE>toffset</CODE> - the starting offset of the subregion in this
+                       string.<DD><CODE>other</CODE> - the string argument.<DD><CODE>ooffset</CODE> - the starting offset of the subregion in the string
+                       argument.<DD><CODE>len</CODE> - the number of characters to compare.
+<DT><B>Returns:</B><DD><code>true</code> if the specified subregion of this string
+          matches the specified subregion of the string argument;
+          <code>false</code> otherwise. Whether the matching is exact
+          or case insensitive depends on the <code>ignoreCase</code>
+          argument.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="startsWith(java.lang.String, int)"><!-- --></A><H3>
+startsWith</H3>
+<PRE>
+public boolean <B>startsWith</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;prefix,
+                          int&nbsp;toffset)</PRE>
+<DL>
+<DD>Tests if the substring of this string beginning at the
+ specified index starts with the specified prefix.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>prefix</CODE> - the prefix.<DD><CODE>toffset</CODE> - where to begin looking in this string.
+<DT><B>Returns:</B><DD><code>true</code> if the character sequence represented by the
+          argument is a prefix of the substring of this object starting
+          at index <code>toffset</code>; <code>false</code> otherwise.
+          The result is <code>false</code> if <code>toffset</code> is
+          negative or greater than the length of this
+          <code>String</code> object; otherwise the result is the same
+          as the result of the expression
+          <pre>
+          this.substring(toffset).startsWith(prefix)
+          </pre></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="startsWith(java.lang.String)"><!-- --></A><H3>
+startsWith</H3>
+<PRE>
+public boolean <B>startsWith</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;prefix)</PRE>
+<DL>
+<DD>Tests if this string starts with the specified prefix.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>prefix</CODE> - the prefix.
+<DT><B>Returns:</B><DD><code>true</code> if the character sequence represented by the
+          argument is a prefix of the character sequence represented by
+          this string; <code>false</code> otherwise.
+          Note also that <code>true</code> will be returned if the
+          argument is an empty string or is equal to this
+          <code>String</code> object as determined by the
+          <A HREF="../../java/lang/String.html#equals(java.lang.Object)"><CODE>equals(Object)</CODE></A> method.<DT><B>Since:</B></DT>
+  <DD>1. 0</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="endsWith(java.lang.String)"><!-- --></A><H3>
+endsWith</H3>
+<PRE>
+public boolean <B>endsWith</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;suffix)</PRE>
+<DL>
+<DD>Tests if this string ends with the specified suffix.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>suffix</CODE> - the suffix.
+<DT><B>Returns:</B><DD><code>true</code> if the character sequence represented by the
+          argument is a suffix of the character sequence represented by
+          this object; <code>false</code> otherwise. Note that the
+          result will be <code>true</code> if the argument is the
+          empty string or is equal to this <code>String</code> object
+          as determined by the <A HREF="../../java/lang/String.html#equals(java.lang.Object)"><CODE>equals(Object)</CODE></A> method.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="hashCode()"><!-- --></A><H3>
+hashCode</H3>
+<PRE>
+public int <B>hashCode</B>()</PRE>
+<DL>
+<DD>Returns a hash code for this string. The hash code for a
+ <code>String</code> object is computed as
+ <blockquote><pre>
+ s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
+ </pre></blockquote>
+ using <code>int</code> arithmetic, where <code>s[i]</code> is the
+ <i>i</i>th character of the string, <code>n</code> is the length of
+ the string, and <code>^</code> indicates exponentiation.
+ (The hash value of the empty string is zero.)
+<P>
+<DD><DL>
+<DT><B>Overrides:</B><DD><CODE><A HREF="../../java/lang/Object.html#hashCode()">hashCode</A></CODE> in class <CODE><A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A></CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>a hash code value for this object.<DT><B>See Also:</B><DD><A HREF="../../java/lang/Object.html#equals(java.lang.Object)"><CODE>Object.equals(java.lang.Object)</CODE></A>, 
+<A HREF="../../java/util/Hashtable.html" title="class in java.util"><CODE>Hashtable</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="indexOf(int)"><!-- --></A><H3>
+indexOf</H3>
+<PRE>
+public int <B>indexOf</B>(int&nbsp;ch)</PRE>
+<DL>
+<DD>Returns the index within this string of the first occurrence of
+ the specified character. If a character with value
+ <code>ch</code> occurs in the character sequence represented by
+ this <code>String</code> object, then the index (in Unicode
+ code units) of the first such occurrence is returned. For
+ values of <code>ch</code> in the range from 0 to 0xFFFF
+ (inclusive), this is the smallest value <i>k</i> such that:
+ <blockquote><pre>
+ this.charAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ smallest value <i>k</i> such that:
+ <blockquote><pre>
+ this.codePointAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true. In either case, if no such character occurs in this
+ string, then <code>-1</code> is returned.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>ch</CODE> - a character (Unicode code point).
+<DT><B>Returns:</B><DD>the index of the first occurrence of the character in the
+          character sequence represented by this object, or
+          <code>-1</code> if the character does not occur.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="indexOf(int, int)"><!-- --></A><H3>
+indexOf</H3>
+<PRE>
+public int <B>indexOf</B>(int&nbsp;ch,
+                   int&nbsp;fromIndex)</PRE>
+<DL>
+<DD>Returns the index within this string of the first occurrence of the
+ specified character, starting the search at the specified index.
+ <p>
+ If a character with value <code>ch</code> occurs in the
+ character sequence represented by this <code>String</code>
+ object at an index no smaller than <code>fromIndex</code>, then
+ the index of the first such occurrence is returned. For values
+ of <code>ch</code> in the range from 0 to 0xFFFF (inclusive),
+ this is the smallest value <i>k</i> such that:
+ <blockquote><pre>
+ (this.charAt(<i>k</i>) == ch) && (<i>k</i> &gt;= fromIndex)
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ smallest value <i>k</i> such that:
+ <blockquote><pre>
+ (this.codePointAt(<i>k</i>) == ch) && (<i>k</i> &gt;= fromIndex)
+ </pre></blockquote>
+ is true. In either case, if no such character occurs in this
+ string at or after position <code>fromIndex</code>, then
+ <code>-1</code> is returned.
+
+ <p>
+ There is no restriction on the value of <code>fromIndex</code>. If it
+ is negative, it has the same effect as if it were zero: this entire
+ string may be searched. If it is greater than the length of this
+ string, it has the same effect as if it were equal to the length of
+ this string: <code>-1</code> is returned.
+
+ <p>All indices are specified in <code>char</code> values
+ (Unicode code units).
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>ch</CODE> - a character (Unicode code point).<DD><CODE>fromIndex</CODE> - the index to start the search from.
+<DT><B>Returns:</B><DD>the index of the first occurrence of the character in the
+          character sequence represented by this object that is greater
+          than or equal to <code>fromIndex</code>, or <code>-1</code>
+          if the character does not occur.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="lastIndexOf(int)"><!-- --></A><H3>
+lastIndexOf</H3>
+<PRE>
+public int <B>lastIndexOf</B>(int&nbsp;ch)</PRE>
+<DL>
+<DD>Returns the index within this string of the last occurrence of
+ the specified character. For values of <code>ch</code> in the
+ range from 0 to 0xFFFF (inclusive), the index (in Unicode code
+ units) returned is the largest value <i>k</i> such that:
+ <blockquote><pre>
+ this.charAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ largest value <i>k</i> such that:
+ <blockquote><pre>
+ this.codePointAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true.  In either case, if no such character occurs in this
+ string, then <code>-1</code> is returned.  The
+ <code>String</code> is searched backwards starting at the last
+ character.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>ch</CODE> - a character (Unicode code point).
+<DT><B>Returns:</B><DD>the index of the last occurrence of the character in the
+          character sequence represented by this object, or
+          <code>-1</code> if the character does not occur.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="lastIndexOf(int, int)"><!-- --></A><H3>
+lastIndexOf</H3>
+<PRE>
+public int <B>lastIndexOf</B>(int&nbsp;ch,
+                       int&nbsp;fromIndex)</PRE>
+<DL>
+<DD>Returns the index within this string of the last occurrence of
+ the specified character, searching backward starting at the
+ specified index. For values of <code>ch</code> in the range
+ from 0 to 0xFFFF (inclusive), the index returned is the largest
+ value <i>k</i> such that:
+ <blockquote><pre>
+ (this.charAt(<i>k</i>) == ch) && (<i>k</i> &lt;= fromIndex)
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ largest value <i>k</i> such that:
+ <blockquote><pre>
+ (this.codePointAt(<i>k</i>) == ch) && (<i>k</i> &lt;= fromIndex)
+ </pre></blockquote>
+ is true. In either case, if no such character occurs in this
+ string at or before position <code>fromIndex</code>, then
+ <code>-1</code> is returned.
+
+ <p>All indices are specified in <code>char</code> values
+ (Unicode code units).
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>ch</CODE> - a character (Unicode code point).<DD><CODE>fromIndex</CODE> - the index to start the search from. There is no
+          restriction on the value of <code>fromIndex</code>. If it is
+          greater than or equal to the length of this string, it has
+          the same effect as if it were equal to one less than the
+          length of this string: this entire string may be searched.
+          If it is negative, it has the same effect as if it were -1:
+          -1 is returned.
+<DT><B>Returns:</B><DD>the index of the last occurrence of the character in the
+          character sequence represented by this object that is less
+          than or equal to <code>fromIndex</code>, or <code>-1</code>
+          if the character does not occur before that point.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="indexOf(java.lang.String)"><!-- --></A><H3>
+indexOf</H3>
+<PRE>
+public int <B>indexOf</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str)</PRE>
+<DL>
+<DD>Returns the index within this string of the first occurrence of the
+ specified substring. The integer returned is the smallest value
+ <i>k</i> such that:
+ <blockquote><pre>
+ this.startsWith(str, <i>k</i>)
+ </pre></blockquote>
+ is <code>true</code>.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>str</CODE> - any string.
+<DT><B>Returns:</B><DD>if the string argument occurs as a substring within this
+          object, then the index of the first character of the first
+          such substring is returned; if it does not occur as a
+          substring, <code>-1</code> is returned.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="indexOf(java.lang.String, int)"><!-- --></A><H3>
+indexOf</H3>
+<PRE>
+public int <B>indexOf</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str,
+                   int&nbsp;fromIndex)</PRE>
+<DL>
+<DD>Returns the index within this string of the first occurrence of the
+ specified substring, starting at the specified index.  The integer
+ returned is the smallest value <tt>k</tt> for which:
+ <blockquote><pre>
+     k &gt;= Math.min(fromIndex, this.length()) && this.startsWith(str, k)
+ </pre></blockquote>
+ If no such value of <i>k</i> exists, then -1 is returned.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>str</CODE> - the substring for which to search.<DD><CODE>fromIndex</CODE> - the index from which to start the search.
+<DT><B>Returns:</B><DD>the index within this string of the first occurrence of the
+          specified substring, starting at the specified index.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="lastIndexOf(java.lang.String)"><!-- --></A><H3>
+lastIndexOf</H3>
+<PRE>
+public int <B>lastIndexOf</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str)</PRE>
+<DL>
+<DD>Returns the index within this string of the rightmost occurrence
+ of the specified substring.  The rightmost empty string "" is
+ considered to occur at the index value <code>this.length()</code>.
+ The returned index is the largest value <i>k</i> such that
+ <blockquote><pre>
+ this.startsWith(str, k)
+ </pre></blockquote>
+ is true.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>str</CODE> - the substring to search for.
+<DT><B>Returns:</B><DD>if the string argument occurs one or more times as a substring
+          within this object, then the index of the first character of
+          the last such substring is returned. If it does not occur as
+          a substring, <code>-1</code> is returned.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="lastIndexOf(java.lang.String, int)"><!-- --></A><H3>
+lastIndexOf</H3>
+<PRE>
+public int <B>lastIndexOf</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str,
+                       int&nbsp;fromIndex)</PRE>
+<DL>
+<DD>Returns the index within this string of the last occurrence of the
+ specified substring, searching backward starting at the specified index.
+ The integer returned is the largest value <i>k</i> such that:
+ <blockquote><pre>
+     k &lt;= Math.min(fromIndex, this.length()) && this.startsWith(str, k)
+ </pre></blockquote>
+ If no such value of <i>k</i> exists, then -1 is returned.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>str</CODE> - the substring to search for.<DD><CODE>fromIndex</CODE> - the index to start the search from.
+<DT><B>Returns:</B><DD>the index within this string of the last occurrence of the
+          specified substring.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="substring(int)"><!-- --></A><H3>
+substring</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>substring</B>(int&nbsp;beginIndex)</PRE>
+<DL>
+<DD>Returns a new string that is a substring of this string. The
+ substring begins with the character at the specified index and
+ extends to the end of this string. <p>
+ Examples:
+ <blockquote><pre>
+ "unhappy".substring(2) returns "happy"
+ "Harbison".substring(3) returns "bison"
+ "emptiness".substring(9) returns "" (an empty string)
+ </pre></blockquote>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>beginIndex</CODE> - the beginning index, inclusive.
+<DT><B>Returns:</B><DD>the specified substring.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - if
+             <code>beginIndex</code> is negative or larger than the
+             length of this <code>String</code> object.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="substring(int, int)"><!-- --></A><H3>
+substring</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>substring</B>(int&nbsp;beginIndex,
+                        int&nbsp;endIndex)</PRE>
+<DL>
+<DD>Returns a new string that is a substring of this string. The
+ substring begins at the specified <code>beginIndex</code> and
+ extends to the character at index <code>endIndex - 1</code>.
+ Thus the length of the substring is <code>endIndex-beginIndex</code>.
+ <p>
+ Examples:
+ <blockquote><pre>
+ "hamburger".substring(4, 8) returns "urge"
+ "smiles".substring(1, 5) returns "mile"
+ </pre></blockquote>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>beginIndex</CODE> - the beginning index, inclusive.<DD><CODE>endIndex</CODE> - the ending index, exclusive.
+<DT><B>Returns:</B><DD>the specified substring.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - if the
+             <code>beginIndex</code> is negative, or
+             <code>endIndex</code> is larger than the length of
+             this <code>String</code> object, or
+             <code>beginIndex</code> is larger than
+             <code>endIndex</code>.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="subSequence(int, int)"><!-- --></A><H3>
+subSequence</H3>
+<PRE>
+public <A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A> <B>subSequence</B>(int&nbsp;beginIndex,
+                                int&nbsp;endIndex)</PRE>
+<DL>
+<DD>Returns a new character sequence that is a subsequence of this sequence.
+
+ <p> An invocation of this method of the form
+
+ <blockquote><pre>
+ str.subSequence(begin,&nbsp;end)</pre></blockquote>
+
+ behaves in exactly the same way as the invocation
+
+ <blockquote><pre>
+ str.substring(begin,&nbsp;end)</pre></blockquote>
+
+ This method is defined so that the <tt>String</tt> class can implement
+ the <A HREF="../../java/lang/CharSequence.html" title="interface in java.lang"><CODE>CharSequence</CODE></A> interface. </p>
+<P>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE><A HREF="../../java/lang/CharSequence.html#subSequence(int, int)">subSequence</A></CODE> in interface <CODE><A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A></CODE></DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>beginIndex</CODE> - the begin index, inclusive.<DD><CODE>endIndex</CODE> - the end index, exclusive.
+<DT><B>Returns:</B><DD>the specified subsequence.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - if <tt>beginIndex</tt> or <tt>endIndex</tt> are negative,
+          if <tt>endIndex</tt> is greater than <tt>length()</tt>,
+          or if <tt>beginIndex</tt> is greater than <tt>startIndex</tt><DT><B>Since:</B></DT>
+  <DD>1.4</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="concat(java.lang.String)"><!-- --></A><H3>
+concat</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>concat</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;str)</PRE>
+<DL>
+<DD>Concatenates the specified string to the end of this string.
+ <p>
+ If the length of the argument string is <code>0</code>, then this
+ <code>String</code> object is returned. Otherwise, a new
+ <code>String</code> object is created, representing a character
+ sequence that is the concatenation of the character sequence
+ represented by this <code>String</code> object and the character
+ sequence represented by the argument string.<p>
+ Examples:
+ <blockquote><pre>
+ "cares".concat("s") returns "caress"
+ "to".concat("get").concat("her") returns "together"
+ </pre></blockquote>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>str</CODE> - the <code>String</code> that is concatenated to the end
+                of this <code>String</code>.
+<DT><B>Returns:</B><DD>a string that represents the concatenation of this object's
+          characters followed by the string argument's characters.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="replace(char, char)"><!-- --></A><H3>
+replace</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>replace</B>(char&nbsp;oldChar,
+                      char&nbsp;newChar)</PRE>
+<DL>
+<DD>Returns a new string resulting from replacing all occurrences of
+ <code>oldChar</code> in this string with <code>newChar</code>.
+ <p>
+ If the character <code>oldChar</code> does not occur in the
+ character sequence represented by this <code>String</code> object,
+ then a reference to this <code>String</code> object is returned.
+ Otherwise, a new <code>String</code> object is created that
+ represents a character sequence identical to the character sequence
+ represented by this <code>String</code> object, except that every
+ occurrence of <code>oldChar</code> is replaced by an occurrence
+ of <code>newChar</code>.
+ <p>
+ Examples:
+ <blockquote><pre>
+ "mesquite in your cellar".replace('e', 'o')
+         returns "mosquito in your collar"
+ "the war of baronets".replace('r', 'y')
+         returns "the way of bayonets"
+ "sparring with a purple porpoise".replace('p', 't')
+         returns "starring with a turtle tortoise"
+ "JonL".replace('q', 'x') returns "JonL" (no change)
+ </pre></blockquote>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>oldChar</CODE> - the old character.<DD><CODE>newChar</CODE> - the new character.
+<DT><B>Returns:</B><DD>a string derived from this string by replacing every
+          occurrence of <code>oldChar</code> with <code>newChar</code>.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="matches(java.lang.String)"><!-- --></A><H3>
+matches</H3>
+<PRE>
+public boolean <B>matches</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;regex)</PRE>
+<DL>
+<DD>Tells whether or not this string matches the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a>.
+
+ <p> An invocation of this method of the form
+ <i>str</i><tt>.matches(</tt><i>regex</i><tt>)</tt> yields exactly the
+ same result as the expression
+
+ <blockquote><tt> <A HREF="../../java/util/regex/Pattern.html" title="class in java.util.regex"><CODE>Pattern</CODE></A>.<A HREF="../../java/util/regex/Pattern.html#matches(java.lang.String, java.lang.CharSequence)"><CODE>matches</CODE></A>(</tt><i>regex</i><tt>,</tt> <i>str</i><tt>)</tt></blockquote>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>regex</CODE> - the regular expression to which this string is to be matched
+<DT><B>Returns:</B><DD><tt>true</tt> if, and only if, this string matches the
+          given regular expression
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</A></CODE> - if the regular expression's syntax is invalid<DT><B>Since:</B></DT>
+  <DD>1.4</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/util/regex/Pattern.html" title="class in java.util.regex"><CODE>Pattern</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="contains(java.lang.CharSequence)"><!-- --></A><H3>
+contains</H3>
+<PRE>
+public boolean <B>contains</B>(<A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A>&nbsp;s)</PRE>
+<DL>
+<DD>Returns true if and only if this string contains the specified
+ sequence of char values.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>s</CODE> - the sequence to search for
+<DT><B>Returns:</B><DD>true if this string contains <code>s</code>, false otherwise
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/NullPointerException.html" title="class in java.lang">NullPointerException</A></CODE> - if <code>s</code> is <code>null</code><DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="replaceFirst(java.lang.String, java.lang.String)"><!-- --></A><H3>
+replaceFirst</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>replaceFirst</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;regex,
+                           <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;replacement)</PRE>
+<DL>
+<DD>Replaces the first substring of this string that matches the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a> with the
+ given replacement.
+
+ <p> An invocation of this method of the form
+ <i>str</i><tt>.replaceFirst(</tt><i>regex</i><tt>,</tt> <i>repl</i><tt>)</tt>
+ yields exactly the same result as the expression
+
+ <blockquote><tt>
+ <A HREF="../../java/util/regex/Pattern.html" title="class in java.util.regex"><CODE>Pattern</CODE></A>.<A HREF="../../java/util/regex/Pattern.html#compile(java.lang.String)"><CODE>compile</CODE></A>(</tt><i>regex</i><tt>).<A HREF="../../java/util/regex/Pattern.html#matcher(java.lang.CharSequence)"><CODE>matcher</CODE></A>(</tt><i>str</i><tt>).<A HREF="../../java/util/regex/Matcher.html#replaceFirst(java.lang.String)"><CODE>replaceFirst</CODE></A>(</tt><i>repl</i><tt>)</tt></blockquote>
+
+<p>
+ Note that backslashes (<tt>\</tt>) and dollar signs (<tt>$</tt>) in the
+ replacement string may cause the results to be different than if it were
+ being treated as a literal replacement string; see
+ <A HREF="../../java/util/regex/Matcher.html#replaceFirst(java.lang.String)"><CODE>Matcher.replaceFirst(java.lang.String)</CODE></A>.
+ Use <A HREF="../../java/util/regex/Matcher.html#quoteReplacement(java.lang.String)"><CODE>Matcher.quoteReplacement(java.lang.String)</CODE></A> to suppress the special
+ meaning of these characters, if desired.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>regex</CODE> - the regular expression to which this string is to be matched<DD><CODE>replacement</CODE> - the string to be substituted for the first match
+<DT><B>Returns:</B><DD>The resulting <tt>String</tt>
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</A></CODE> - if the regular expression's syntax is invalid<DT><B>Since:</B></DT>
+  <DD>1.4</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/util/regex/Pattern.html" title="class in java.util.regex"><CODE>Pattern</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="replaceAll(java.lang.String, java.lang.String)"><!-- --></A><H3>
+replaceAll</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>replaceAll</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;regex,
+                         <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;replacement)</PRE>
+<DL>
+<DD>Replaces each substring of this string that matches the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a> with the
+ given replacement.
+
+ <p> An invocation of this method of the form
+ <i>str</i><tt>.replaceAll(</tt><i>regex</i><tt>,</tt> <i>repl</i><tt>)</tt>
+ yields exactly the same result as the expression
+
+ <blockquote><tt>
+ <A HREF="../../java/util/regex/Pattern.html" title="class in java.util.regex"><CODE>Pattern</CODE></A>.<A HREF="../../java/util/regex/Pattern.html#compile(java.lang.String)"><CODE>compile</CODE></A>(</tt><i>regex</i><tt>).<A HREF="../../java/util/regex/Pattern.html#matcher(java.lang.CharSequence)"><CODE>matcher</CODE></A>(</tt><i>str</i><tt>).<A HREF="../../java/util/regex/Matcher.html#replaceAll(java.lang.String)"><CODE>replaceAll</CODE></A>(</tt><i>repl</i><tt>)</tt></blockquote>
+
+<p>
+ Note that backslashes (<tt>\</tt>) and dollar signs (<tt>$</tt>) in the
+ replacement string may cause the results to be different than if it were
+ being treated as a literal replacement string; see
+ <A HREF="../../java/util/regex/Matcher.html#replaceAll(java.lang.String)"><CODE>Matcher.replaceAll</CODE></A>.
+ Use <A HREF="../../java/util/regex/Matcher.html#quoteReplacement(java.lang.String)"><CODE>Matcher.quoteReplacement(java.lang.String)</CODE></A> to suppress the special
+ meaning of these characters, if desired.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>regex</CODE> - the regular expression to which this string is to be matched<DD><CODE>replacement</CODE> - the string to be substituted for each match
+<DT><B>Returns:</B><DD>The resulting <tt>String</tt>
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</A></CODE> - if the regular expression's syntax is invalid<DT><B>Since:</B></DT>
+  <DD>1.4</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/util/regex/Pattern.html" title="class in java.util.regex"><CODE>Pattern</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="replace(java.lang.CharSequence, java.lang.CharSequence)"><!-- --></A><H3>
+replace</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>replace</B>(<A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A>&nbsp;target,
+                      <A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A>&nbsp;replacement)</PRE>
+<DL>
+<DD>Replaces each substring of this string that matches the literal target
+ sequence with the specified literal replacement sequence. The
+ replacement proceeds from the beginning of the string to the end, for
+ example, replacing "aa" with "b" in the string "aaa" will result in
+ "ba" rather than "ab".
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>target</CODE> - The sequence of char values to be replaced<DD><CODE>replacement</CODE> - The replacement sequence of char values
+<DT><B>Returns:</B><DD>The resulting string
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/NullPointerException.html" title="class in java.lang">NullPointerException</A></CODE> - if <code>target</code> or
+         <code>replacement</code> is <code>null</code>.<DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="split(java.lang.String, int)"><!-- --></A><H3>
+split</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>[] <B>split</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;regex,
+                      int&nbsp;limit)</PRE>
+<DL>
+<DD>Splits this string around matches of the given
+ <a href="../util/regex/Pattern.html#sum">regular expression</a>.
+
+ <p> The array returned by this method contains each substring of this
+ string that is terminated by another substring that matches the given
+ expression or is terminated by the end of the string.  The substrings in
+ the array are in the order in which they occur in this string.  If the
+ expression does not match any part of the input then the resulting array
+ has just one element, namely this string.
+
+ <p> The <tt>limit</tt> parameter controls the number of times the
+ pattern is applied and therefore affects the length of the resulting
+ array.  If the limit <i>n</i> is greater than zero then the pattern
+ will be applied at most <i>n</i>&nbsp;-&nbsp;1 times, the array's
+ length will be no greater than <i>n</i>, and the array's last entry
+ will contain all input beyond the last matched delimiter.  If <i>n</i>
+ is non-positive then the pattern will be applied as many times as
+ possible and the array can have any length.  If <i>n</i> is zero then
+ the pattern will be applied as many times as possible, the array can
+ have any length, and trailing empty strings will be discarded.
+
+ <p> The string <tt>"boo:and:foo"</tt>, for example, yields the
+ following results with these parameters:
+
+ <blockquote><table cellpadding=1 cellspacing=0 summary="Split example showing regex, limit, and result">
+ <tr>
+     <th>Regex</th>
+     <th>Limit</th>
+     <th>Result</th>
+ </tr>
+ <tr><td align=center>:</td>
+     <td align=center>2</td>
+     <td><tt>{ "boo", "and:foo" }</tt></td></tr>
+ <tr><td align=center>:</td>
+     <td align=center>5</td>
+     <td><tt>{ "boo", "and", "foo" }</tt></td></tr>
+ <tr><td align=center>:</td>
+     <td align=center>-2</td>
+     <td><tt>{ "boo", "and", "foo" }</tt></td></tr>
+ <tr><td align=center>o</td>
+     <td align=center>5</td>
+     <td><tt>{ "b", "", ":and:f", "", "" }</tt></td></tr>
+ <tr><td align=center>o</td>
+     <td align=center>-2</td>
+     <td><tt>{ "b", "", ":and:f", "", "" }</tt></td></tr>
+ <tr><td align=center>o</td>
+     <td align=center>0</td>
+     <td><tt>{ "b", "", ":and:f" }</tt></td></tr>
+ </table></blockquote>
+
+ <p> An invocation of this method of the form
+ <i>str.</i><tt>split(</tt><i>regex</i><tt>,</tt>&nbsp;<i>n</i><tt>)</tt>
+ yields the same result as the expression
+
+ <blockquote>
+ <A HREF="../../java/util/regex/Pattern.html" title="class in java.util.regex"><CODE>Pattern</CODE></A>.<A HREF="../../java/util/regex/Pattern.html#compile(java.lang.String)"><CODE>compile</CODE></A><tt>(</tt><i>regex</i><tt>)</tt>.<A HREF="../../java/util/regex/Pattern.html#split(java.lang.CharSequence, int)"><CODE>split</CODE></A><tt>(</tt><i>str</i><tt>,</tt>&nbsp;<i>n</i><tt>)</tt>
+ </blockquote>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>regex</CODE> - the delimiting regular expression<DD><CODE>limit</CODE> - the result threshold, as described above
+<DT><B>Returns:</B><DD>the array of strings computed by splitting this string
+          around matches of the given regular expression
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</A></CODE> - if the regular expression's syntax is invalid<DT><B>Since:</B></DT>
+  <DD>1.4</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/util/regex/Pattern.html" title="class in java.util.regex"><CODE>Pattern</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="split(java.lang.String)"><!-- --></A><H3>
+split</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>[] <B>split</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;regex)</PRE>
+<DL>
+<DD>Splits this string around matches of the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a>.
+
+ <p> This method works as if by invoking the two-argument <A HREF="../../java/lang/String.html#split(java.lang.String, int)"><CODE>split</CODE></A> method with the given expression and a limit
+ argument of zero.  Trailing empty strings are therefore not included in
+ the resulting array.
+
+ <p> The string <tt>"boo:and:foo"</tt>, for example, yields the following
+ results with these expressions:
+
+ <blockquote><table cellpadding=1 cellspacing=0 summary="Split examples showing regex and result">
+ <tr>
+  <th>Regex</th>
+  <th>Result</th>
+ </tr>
+ <tr><td align=center>:</td>
+     <td><tt>{ "boo", "and", "foo" }</tt></td></tr>
+ <tr><td align=center>o</td>
+     <td><tt>{ "b", "", ":and:f" }</tt></td></tr>
+ </table></blockquote>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>regex</CODE> - the delimiting regular expression
+<DT><B>Returns:</B><DD>the array of strings computed by splitting this string
+          around matches of the given regular expression
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</A></CODE> - if the regular expression's syntax is invalid<DT><B>Since:</B></DT>
+  <DD>1.4</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/util/regex/Pattern.html" title="class in java.util.regex"><CODE>Pattern</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="toLowerCase(java.util.Locale)"><!-- --></A><H3>
+toLowerCase</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>toLowerCase</B>(<A HREF="../../java/util/Locale.html" title="class in java.util">Locale</A>&nbsp;locale)</PRE>
+<DL>
+<DD>Converts all of the characters in this <code>String</code> to lower
+ case using the rules of the given <code>Locale</code>.  Case mapping is based
+ on the Unicode Standard version specified by the <A HREF="../../java/lang/Character.html" title="class in java.lang"><CODE>Character</CODE></A>
+ class. Since case mappings are not always 1:1 char mappings, the resulting
+ <code>String</code> may be a different length than the original <code>String</code>.
+ <p>
+ Examples of lowercase  mappings are in the following table:
+ <table border="1" summary="Lowercase mapping examples showing language code of locale, upper case, lower case, and description">
+ <tr>
+   <th>Language Code of Locale</th>
+   <th>Upper Case</th>
+   <th>Lower Case</th>
+   <th>Description</th>
+ </tr>
+ <tr>
+   <td>tr (Turkish)</td>
+   <td>&#92;u0130</td>
+   <td>&#92;u0069</td>
+   <td>capital letter I with dot above -&gt; small letter i</td>
+ </tr>
+ <tr>
+   <td>tr (Turkish)</td>
+   <td>&#92;u0049</td>
+   <td>&#92;u0131</td>
+   <td>capital letter I -&gt; small letter dotless i </td>
+ </tr>
+ <tr>
+   <td>(all)</td>
+   <td>French Fries</td>
+   <td>french fries</td>
+   <td>lowercased all chars in String</td>
+ </tr>
+ <tr>
+   <td>(all)</td>
+   <td><img src="doc-files/capiota.gif" alt="capiota"><img src="doc-files/capchi.gif" alt="capchi">
+       <img src="doc-files/captheta.gif" alt="captheta"><img src="doc-files/capupsil.gif" alt="capupsil">
+       <img src="doc-files/capsigma.gif" alt="capsigma"></td>
+   <td><img src="doc-files/iota.gif" alt="iota"><img src="doc-files/chi.gif" alt="chi">
+       <img src="doc-files/theta.gif" alt="theta"><img src="doc-files/upsilon.gif" alt="upsilon">
+       <img src="doc-files/sigma1.gif" alt="sigma"></td>
+   <td>lowercased all chars in String</td>
+ </tr>
+ </table>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>locale</CODE> - use the case transformation rules for this locale
+<DT><B>Returns:</B><DD>the <code>String</code>, converted to lowercase.<DT><B>Since:</B></DT>
+  <DD>1.1</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/lang/String.html#toLowerCase()"><CODE>toLowerCase()</CODE></A>, 
+<A HREF="../../java/lang/String.html#toUpperCase()"><CODE>toUpperCase()</CODE></A>, 
+<A HREF="../../java/lang/String.html#toUpperCase(java.util.Locale)"><CODE>toUpperCase(Locale)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="toLowerCase()"><!-- --></A><H3>
+toLowerCase</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>toLowerCase</B>()</PRE>
+<DL>
+<DD>Converts all of the characters in this <code>String</code> to lower
+ case using the rules of the default locale. This is equivalent to calling
+ <code>toLowerCase(Locale.getDefault())</code>.
+ <p>
+ <b>Note:</b> This method is locale sensitive, and may produce unexpected
+ results if used for strings that are intended to be interpreted locale
+ independently.
+ Examples are programming language identifiers, protocol keys, and HTML
+ tags.
+ For instance, <code>"TITLE".toLowerCase()</code> in a Turkish locale
+ returns <code>"t?tle"</code>, where '?' is the LATIN SMALL
+ LETTER DOTLESS I character.
+ To obtain correct results for locale insensitive strings, use
+ <code>toLowerCase(Locale.ENGLISH)</code>.
+ <p>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the <code>String</code>, converted to lowercase.<DT><B>See Also:</B><DD><A HREF="../../java/lang/String.html#toLowerCase(java.util.Locale)"><CODE>toLowerCase(Locale)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="toUpperCase(java.util.Locale)"><!-- --></A><H3>
+toUpperCase</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>toUpperCase</B>(<A HREF="../../java/util/Locale.html" title="class in java.util">Locale</A>&nbsp;locale)</PRE>
+<DL>
+<DD>Converts all of the characters in this <code>String</code> to upper
+ case using the rules of the given <code>Locale</code>. Case mapping is based
+ on the Unicode Standard version specified by the <A HREF="../../java/lang/Character.html" title="class in java.lang"><CODE>Character</CODE></A>
+ class. Since case mappings are not always 1:1 char mappings, the resulting
+ <code>String</code> may be a different length than the original <code>String</code>.
+ <p>
+ Examples of locale-sensitive and 1:M case mappings are in the following table.
+ <p>
+ <table border="1" summary="Examples of locale-sensitive and 1:M case mappings. Shows Language code of locale, lower case, upper case, and description.">
+ <tr>
+   <th>Language Code of Locale</th>
+   <th>Lower Case</th>
+   <th>Upper Case</th>
+   <th>Description</th>
+ </tr>
+ <tr>
+   <td>tr (Turkish)</td>
+   <td>&#92;u0069</td>
+   <td>&#92;u0130</td>
+   <td>small letter i -&gt; capital letter I with dot above</td>
+ </tr>
+ <tr>
+   <td>tr (Turkish)</td>
+   <td>&#92;u0131</td>
+   <td>&#92;u0049</td>
+   <td>small letter dotless i -&gt; capital letter I</td>
+ </tr>
+ <tr>
+   <td>(all)</td>
+   <td>&#92;u00df</td>
+   <td>&#92;u0053 &#92;u0053</td>
+   <td>small letter sharp s -&gt; two letters: SS</td>
+ </tr>
+ <tr>
+   <td>(all)</td>
+   <td>Fahrvergn&uuml;gen</td>
+   <td>FAHRVERGN&Uuml;GEN</td>
+   <td></td>
+ </tr>
+ </table>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>locale</CODE> - use the case transformation rules for this locale
+<DT><B>Returns:</B><DD>the <code>String</code>, converted to uppercase.<DT><B>Since:</B></DT>
+  <DD>1.1</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/lang/String.html#toUpperCase()"><CODE>toUpperCase()</CODE></A>, 
+<A HREF="../../java/lang/String.html#toLowerCase()"><CODE>toLowerCase()</CODE></A>, 
+<A HREF="../../java/lang/String.html#toLowerCase(java.util.Locale)"><CODE>toLowerCase(Locale)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="toUpperCase()"><!-- --></A><H3>
+toUpperCase</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>toUpperCase</B>()</PRE>
+<DL>
+<DD>Converts all of the characters in this <code>String</code> to upper
+ case using the rules of the default locale. This method is equivalent to
+ <code>toUpperCase(Locale.getDefault())</code>.
+ <p>
+ <b>Note:</b> This method is locale sensitive, and may produce unexpected
+ results if used for strings that are intended to be interpreted locale
+ independently.
+ Examples are programming language identifiers, protocol keys, and HTML
+ tags.
+ For instance, <code>"title".toUpperCase()</code> in a Turkish locale
+ returns <code>"T?TLE"</code>, where '?' is the LATIN CAPITAL
+ LETTER I WITH DOT ABOVE character.
+ To obtain correct results for locale insensitive strings, use
+ <code>toUpperCase(Locale.ENGLISH)</code>.
+ <p>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the <code>String</code>, converted to uppercase.<DT><B>See Also:</B><DD><A HREF="../../java/lang/String.html#toUpperCase(java.util.Locale)"><CODE>toUpperCase(Locale)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="trim()"><!-- --></A><H3>
+trim</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>trim</B>()</PRE>
+<DL>
+<DD>Returns a copy of the string, with leading and trailing whitespace
+ omitted.
+ <p>
+ If this <code>String</code> object represents an empty character
+ sequence, or the first and last characters of character sequence
+ represented by this <code>String</code> object both have codes
+ greater than <code>'&#92;u0020'</code> (the space character), then a
+ reference to this <code>String</code> object is returned.
+ <p>
+ Otherwise, if there is no character with a code greater than
+ <code>'&#92;u0020'</code> in the string, then a new
+ <code>String</code> object representing an empty string is created
+ and returned.
+ <p>
+ Otherwise, let <i>k</i> be the index of the first character in the
+ string whose code is greater than <code>'&#92;u0020'</code>, and let
+ <i>m</i> be the index of the last character in the string whose code
+ is greater than <code>'&#92;u0020'</code>. A new <code>String</code>
+ object is created, representing the substring of this string that
+ begins with the character at index <i>k</i> and ends with the
+ character at index <i>m</i>-that is, the result of
+ <code>this.substring(<i>k</i>,&nbsp;<i>m</i>+1)</code>.
+ <p>
+ This method may be used to trim whitespace (as defined above) from
+ the beginning and end of a string.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>A copy of this string with leading and trailing white
+          space removed, or this string if it has no leading or
+          trailing white space.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="toString()"><!-- --></A><H3>
+toString</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>toString</B>()</PRE>
+<DL>
+<DD>This object (which is already a string!) is itself returned.
+<P>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE><A HREF="../../java/lang/CharSequence.html#toString()">toString</A></CODE> in interface <CODE><A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../java/lang/Object.html#toString()">toString</A></CODE> in class <CODE><A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A></CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the string itself.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="toCharArray()"><!-- --></A><H3>
+toCharArray</H3>
+<PRE>
+public char[] <B>toCharArray</B>()</PRE>
+<DL>
+<DD>Converts this string to a new character array.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>a newly allocated character array whose length is the length
+          of this string and whose contents are initialized to contain
+          the character sequence represented by this string.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="format(java.lang.String, java.lang.Object...)"><!-- --></A><H3>
+format</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>format</B>(<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;format,
+                            <A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>...&nbsp;args)</PRE>
+<DL>
+<DD>Returns a formatted string using the specified format string and
+ arguments.
+
+ <p> The locale always used is the one returned by <A HREF="../../java/util/Locale.html#getDefault()"><CODE>Locale.getDefault()</CODE></A>.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>format</CODE> - A <a href="../util/Formatter.html#syntax">format string</a><DD><CODE>args</CODE> - Arguments referenced by the format specifiers in the format
+         string.  If there are more arguments than format specifiers, the
+         extra arguments are ignored.  The number of arguments is
+         variable and may be zero.  The maximum number of arguments is
+         limited by the maximum dimension of a Java array as defined by
+         the <a href="http://java.sun.com/docs/books/vmspec/">Java
+         Virtual Machine Specification</a>.  The behaviour on a
+         <tt>null</tt> argument depends on the <a
+         href="../util/Formatter.html#syntax">conversion</a>.
+<DT><B>Returns:</B><DD>A formatted string
+<DT><B>Throws:</B>
+<DD><CODE>IllegalFormatException</CODE> - If a format string contains an illegal syntax, a format
+          specifier that is incompatible with the given arguments,
+          insufficient arguments given the format string, or other
+          illegal conditions.  For specification of all possible
+          formatting errors, see the <a
+          href="../util/Formatter.html#detail">Details</a> section of the
+          formatter class specification.
+<DD><CODE><A HREF="../../java/lang/NullPointerException.html" title="class in java.lang">NullPointerException</A></CODE> - If the <tt>format</tt> is <tt>null</tt><DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/util/Formatter.html" title="class in java.util"><CODE>Formatter</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="format(java.util.Locale, java.lang.String, java.lang.Object...)"><!-- --></A><H3>
+format</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>format</B>(<A HREF="../../java/util/Locale.html" title="class in java.util">Locale</A>&nbsp;l,
+                            <A HREF="../../java/lang/String.html" title="class in java.lang">String</A>&nbsp;format,
+                            <A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>...&nbsp;args)</PRE>
+<DL>
+<DD>Returns a formatted string using the specified locale, format string,
+ and arguments.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>l</CODE> - The <A HREF="../../java/util/Locale.html" title="class in java.util">locale</A> to apply during
+         formatting.  If <tt>l</tt> is <tt>null</tt> then no localization
+         is applied.<DD><CODE>format</CODE> - A <a href="../util/Formatter.html#syntax">format string</a><DD><CODE>args</CODE> - Arguments referenced by the format specifiers in the format
+         string.  If there are more arguments than format specifiers, the
+         extra arguments are ignored.  The number of arguments is
+         variable and may be zero.  The maximum number of arguments is
+         limited by the maximum dimension of a Java array as defined by
+         the <a href="http://java.sun.com/docs/books/vmspec/">Java
+         Virtual Machine Specification</a>.  The behaviour on a
+         <tt>null</tt> argument depends on the <a
+         href="../util/Formatter.html#syntax">conversion</a>.
+<DT><B>Returns:</B><DD>A formatted string
+<DT><B>Throws:</B>
+<DD><CODE>IllegalFormatException</CODE> - If a format string contains an illegal syntax, a format
+          specifier that is incompatible with the given arguments,
+          insufficient arguments given the format string, or other
+          illegal conditions.  For specification of all possible
+          formatting errors, see the <a
+          href="../util/Formatter.html#detail">Details</a> section of the
+          formatter class specification
+<DD><CODE><A HREF="../../java/lang/NullPointerException.html" title="class in java.lang">NullPointerException</A></CODE> - If the <tt>format</tt> is <tt>null</tt><DT><B>Since:</B></DT>
+  <DD>1.5</DD>
+<DT><B>See Also:</B><DD><A HREF="../../java/util/Formatter.html" title="class in java.util"><CODE>Formatter</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="valueOf(java.lang.Object)"><!-- --></A><H3>
+valueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>valueOf</B>(<A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>&nbsp;obj)</PRE>
+<DL>
+<DD>Returns the string representation of the <code>Object</code> argument.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>obj</CODE> - an <code>Object</code>.
+<DT><B>Returns:</B><DD>if the argument is <code>null</code>, then a string equal to
+          <code>"null"</code>; otherwise, the value of
+          <code>obj.toString()</code> is returned.<DT><B>See Also:</B><DD><A HREF="../../java/lang/Object.html#toString()"><CODE>Object.toString()</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="valueOf(char[])"><!-- --></A><H3>
+valueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>valueOf</B>(char[]&nbsp;data)</PRE>
+<DL>
+<DD>Returns the string representation of the <code>char</code> array
+ argument. The contents of the character array are copied; subsequent
+ modification of the character array does not affect the newly
+ created string.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>data</CODE> - a <code>char</code> array.
+<DT><B>Returns:</B><DD>a newly allocated string representing the same sequence of
+          characters contained in the character array argument.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="valueOf(char[], int, int)"><!-- --></A><H3>
+valueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>valueOf</B>(char[]&nbsp;data,
+                             int&nbsp;offset,
+                             int&nbsp;count)</PRE>
+<DL>
+<DD>Returns the string representation of a specific subarray of the
+ <code>char</code> array argument.
+ <p>
+ The <code>offset</code> argument is the index of the first
+ character of the subarray. The <code>count</code> argument
+ specifies the length of the subarray. The contents of the subarray
+ are copied; subsequent modification of the character array does not
+ affect the newly created string.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>data</CODE> - the character array.<DD><CODE>offset</CODE> - the initial offset into the value of the
+                  <code>String</code>.<DD><CODE>count</CODE> - the length of the value of the <code>String</code>.
+<DT><B>Returns:</B><DD>a string representing the sequence of characters contained
+          in the subarray of the character array argument.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</A></CODE> - if <code>offset</code> is
+          negative, or <code>count</code> is negative, or
+          <code>offset+count</code> is larger than
+          <code>data.length</code>.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="copyValueOf(char[], int, int)"><!-- --></A><H3>
+copyValueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>copyValueOf</B>(char[]&nbsp;data,
+                                 int&nbsp;offset,
+                                 int&nbsp;count)</PRE>
+<DL>
+<DD>Returns a String that represents the character sequence in the
+ array specified.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>data</CODE> - the character array.<DD><CODE>offset</CODE> - initial offset of the subarray.<DD><CODE>count</CODE> - length of the subarray.
+<DT><B>Returns:</B><DD>a <code>String</code> that contains the characters of the
+          specified subarray of the character array.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="copyValueOf(char[])"><!-- --></A><H3>
+copyValueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>copyValueOf</B>(char[]&nbsp;data)</PRE>
+<DL>
+<DD>Returns a String that represents the character sequence in the
+ array specified.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>data</CODE> - the character array.
+<DT><B>Returns:</B><DD>a <code>String</code> that contains the characters of the
+          character array.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="valueOf(boolean)"><!-- --></A><H3>
+valueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>valueOf</B>(boolean&nbsp;b)</PRE>
+<DL>
+<DD>Returns the string representation of the <code>boolean</code> argument.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>b</CODE> - a <code>boolean</code>.
+<DT><B>Returns:</B><DD>if the argument is <code>true</code>, a string equal to
+          <code>"true"</code> is returned; otherwise, a string equal to
+          <code>"false"</code> is returned.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="valueOf(char)"><!-- --></A><H3>
+valueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>valueOf</B>(char&nbsp;c)</PRE>
+<DL>
+<DD>Returns the string representation of the <code>char</code>
+ argument.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>c</CODE> - a <code>char</code>.
+<DT><B>Returns:</B><DD>a string of length <code>1</code> containing
+          as its single character the argument <code>c</code>.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="valueOf(int)"><!-- --></A><H3>
+valueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>valueOf</B>(int&nbsp;i)</PRE>
+<DL>
+<DD>Returns the string representation of the <code>int</code> argument.
+ <p>
+ The representation is exactly the one returned by the
+ <code>Integer.toString</code> method of one argument.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>i</CODE> - an <code>int</code>.
+<DT><B>Returns:</B><DD>a string representation of the <code>int</code> argument.<DT><B>See Also:</B><DD><A HREF="../../java/lang/Integer.html#toString(int, int)"><CODE>Integer.toString(int, int)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="valueOf(long)"><!-- --></A><H3>
+valueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>valueOf</B>(long&nbsp;l)</PRE>
+<DL>
+<DD>Returns the string representation of the <code>long</code> argument.
+ <p>
+ The representation is exactly the one returned by the
+ <code>Long.toString</code> method of one argument.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>l</CODE> - a <code>long</code>.
+<DT><B>Returns:</B><DD>a string representation of the <code>long</code> argument.<DT><B>See Also:</B><DD><A HREF="../../java/lang/Long.html#toString(long)"><CODE>Long.toString(long)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="valueOf(float)"><!-- --></A><H3>
+valueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>valueOf</B>(float&nbsp;f)</PRE>
+<DL>
+<DD>Returns the string representation of the <code>float</code> argument.
+ <p>
+ The representation is exactly the one returned by the
+ <code>Float.toString</code> method of one argument.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>f</CODE> - a <code>float</code>.
+<DT><B>Returns:</B><DD>a string representation of the <code>float</code> argument.<DT><B>See Also:</B><DD><A HREF="../../java/lang/Float.html#toString(float)"><CODE>Float.toString(float)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="valueOf(double)"><!-- --></A><H3>
+valueOf</H3>
+<PRE>
+public static <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>valueOf</B>(double&nbsp;d)</PRE>
+<DL>
+<DD>Returns the string representation of the <code>double</code> argument.
+ <p>
+ The representation is exactly the one returned by the
+ <code>Double.toString</code> method of one argument.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>d</CODE> - a <code>double</code>.
+<DT><B>Returns:</B><DD>a  string representation of the <code>double</code> argument.<DT><B>See Also:</B><DD><A HREF="../../java/lang/Double.html#toString(double)"><CODE>Double.toString(double)</CODE></A></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="intern()"><!-- --></A><H3>
+intern</H3>
+<PRE>
+public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>intern</B>()</PRE>
+<DL>
+<DD>Returns a canonical representation for the string object.
+ <p>
+ A pool of strings, initially empty, is maintained privately by the
+ class <code>String</code>.
+ <p>
+ When the intern method is invoked, if the pool already contains a
+ string equal to this <code>String</code> object as determined by
+ the <A HREF="../../java/lang/String.html#equals(java.lang.Object)"><CODE>equals(Object)</CODE></A> method, then the string from the pool is
+ returned. Otherwise, this <code>String</code> object is added to the
+ pool and a reference to this <code>String</code> object is returned.
+ <p>
+ It follows that for any two strings <code>s</code> and <code>t</code>,
+ <code>s.intern()&nbsp;==&nbsp;t.intern()</code> is <code>true</code>
+ if and only if <code>s.equals(t)</code> is <code>true</code>.
+ <p>
+ All literal strings and string-valued constant expressions are
+ interned. String literals are defined in &sect;3.10.5 of the
+ <a href="http://java.sun.com/docs/books/jls/html/">Java Language
+ Specification</a>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>a string that has the same contents as this string, but is
+          guaranteed to be from a pool of unique strings.</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/String.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+<b>Java&#x2122;&nbsp;Platform<br>Standard&nbsp;Ed.&nbsp;6</b></EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../java/lang/StrictMath.html" title="class in java.lang"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../java/lang/StringBuffer.html" title="class in java.lang"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../index.html?java/lang/String.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="String.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+<font size="-1"> <a href="http://bugs.sun.com/services/bugreport/index.jsp">Submit a bug or feature</a><br>For further API reference and developer documentation, see <a href="http://java.sun.com/javase/6/webnotes/devdocs-vs-specs.html">Java SE Developer Documentation</a>. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.<p> <a href="../../../legal/cpyr.html">Copyright</a> &# [...]
+<!-- Start SiteCatalyst code   -->
+<script type="text/JavaScript" src="http://www.oracle.com/ocom/groups/systemobject/@mktg_admin/documents/systemobject/s_code_download.js"></script>
+<script type="text/JavaScript" src="http://www.oracle.com/ocom/groups/systemobject/@mktg_admin/documents/systemobject/s_code.js"></script>
+
+<!-- ********** DO NOT ALTER ANYTHING BELOW THIS LINE ! *********** -->
+<!--  Below code will send the info to Omniture server -->
+<script type="text/JavaScript">var s_code=s.t();if(s_code)document.write(s_code)</script>
+
+<!-- End SiteCatalyst code -->
+<noscript>
+<p>Scripting on this page tracks web page traffic, but does not change the content in any way.</p>
+</noscript>
+</BODY>
+</HTML>
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java7_String.html b/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java7_String.html
new file mode 100644
index 0000000..49accee
--- /dev/null
+++ b/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java7_String.html
@@ -0,0 +1,3064 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (version 1.6.0_19) on Sat Jun 23 22:09:31 PDT 2018 -->
+<title>String (Java Platform SE 7 )</title>
+<meta name="date" content="2018-06-23">
+<meta name="keywords" content="java.lang.String class">
+<meta name="keywords" content="CASE_INSENSITIVE_ORDER">
+<meta name="keywords" content="length()">
+<meta name="keywords" content="isEmpty()">
+<meta name="keywords" content="charAt()">
+<meta name="keywords" content="codePointAt()">
+<meta name="keywords" content="codePointBefore()">
+<meta name="keywords" content="codePointCount()">
+<meta name="keywords" content="offsetByCodePoints()">
+<meta name="keywords" content="getChars()">
+<meta name="keywords" content="getBytes()">
+<meta name="keywords" content="equals()">
+<meta name="keywords" content="contentEquals()">
+<meta name="keywords" content="equalsIgnoreCase()">
+<meta name="keywords" content="compareTo()">
+<meta name="keywords" content="compareToIgnoreCase()">
+<meta name="keywords" content="regionMatches()">
+<meta name="keywords" content="startsWith()">
+<meta name="keywords" content="endsWith()">
+<meta name="keywords" content="hashCode()">
+<meta name="keywords" content="indexOf()">
+<meta name="keywords" content="lastIndexOf()">
+<meta name="keywords" content="substring()">
+<meta name="keywords" content="subSequence()">
+<meta name="keywords" content="concat()">
+<meta name="keywords" content="replace()">
+<meta name="keywords" content="matches()">
+<meta name="keywords" content="contains()">
+<meta name="keywords" content="replaceFirst()">
+<meta name="keywords" content="replaceAll()">
+<meta name="keywords" content="split()">
+<meta name="keywords" content="toLowerCase()">
+<meta name="keywords" content="toUpperCase()">
+<meta name="keywords" content="trim()">
+<meta name="keywords" content="toString()">
+<meta name="keywords" content="toCharArray()">
+<meta name="keywords" content="format()">
+<meta name="keywords" content="valueOf()">
+<meta name="keywords" content="copyValueOf()">
+<meta name="keywords" content="intern()">
+<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
+<script>window.ohcglobal || document.write('<script src="/en/dcommon/js/global.js">\x3C/script>')</script></head>
+<body>
+<script type="text/javascript"><!--
+    if (location.href.indexOf('is-external=true') == -1) {
+        parent.document.title="String (Java Platform SE 7 )";
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar_top">
+<!--   -->
+</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/String.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../index-files/index-1.html">Index</a></li>
+<li><a href="../../help-doc.html">Help</a></li>
+</ul>
+<div class="aboutLanguage"><em><strong>Java&trade;&nbsp;Platform<br>Standard&nbsp;Ed.&nbsp;7</strong></em></div>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../java/lang/StrictMath.html" title="class in java.lang"><span class="strong">Prev Class</span></a></li>
+<li><a href="../../java/lang/StringBuffer.html" title="class in java.lang"><span class="strong">Next Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../index.html?java/lang/String.html" target="_top">Frames</a></li>
+<li><a href="String.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method_summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method_detail">Method</a></li>
+</ul>
+</div>
+<a name="skip-navbar_top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">java.lang</div>
+<h2 title="Class String" class="title">Class String</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="../../java/lang/Object.html" title="class in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>java.lang.String</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="../../java/io/Serializable.html" title="interface in java.io">Serializable</a>, <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>, <a href="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt;</dd>
+</dl>
+<hr>
+<br>
+<pre>public final class <span class="strong">String</span>
+extends <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>
+implements <a href="../../java/io/Serializable.html" title="interface in java.io">Serializable</a>, <a href="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt;, <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></pre>
+<div class="block">The <code>String</code> class represents character strings. All
+ string literals in Java programs, such as <code>"abc"</code>, are
+ implemented as instances of this class.
+ <p>
+ Strings are constant; their values cannot be changed after they
+ are created. String buffers support mutable strings.
+ Because String objects are immutable they can be shared. For example:
+ <p><blockquote><pre>
+     String str = "abc";
+ </pre></blockquote><p>
+ is equivalent to:
+ <p><blockquote><pre>
+     char data[] = {'a', 'b', 'c'};
+     String str = new String(data);
+ </pre></blockquote><p>
+ Here are some more examples of how strings can be used:
+ <p><blockquote><pre>
+     System.out.println("abc");
+     String cde = "cde";
+     System.out.println("abc" + cde);
+     String c = "abc".substring(2,3);
+     String d = cde.substring(1, 2);
+ </pre></blockquote>
+ <p>
+ The class <code>String</code> includes methods for examining
+ individual characters of the sequence, for comparing strings, for
+ searching strings, for extracting substrings, and for creating a
+ copy of a string with all characters translated to uppercase or to
+ lowercase. Case mapping is based on the Unicode Standard version
+ specified by the <a href="../../java/lang/Character.html" title="class in java.lang"><code>Character</code></a> class.
+ <p>
+ The Java language provides special support for the string
+ concatenation operator (&nbsp;+&nbsp;), and for conversion of
+ other objects to strings. String concatenation is implemented
+ through the <code>StringBuilder</code>(or <code>StringBuffer</code>)
+ class and its <code>append</code> method.
+ String conversions are implemented through the method
+ <code>toString</code>, defined by <code>Object</code> and
+ inherited by all classes in Java. For additional information on
+ string concatenation and conversion, see Gosling, Joy, and Steele,
+ <i>The Java Language Specification</i>.
+
+ <p> Unless otherwise noted, passing a <tt>null</tt> argument to a constructor
+ or method in this class will cause a <a href="../../java/lang/NullPointerException.html" title="class in java.lang"><code>NullPointerException</code></a> to be
+ thrown.
+
+ <p>A <code>String</code> represents a string in the UTF-16 format
+ in which <em>supplementary characters</em> are represented by <em>surrogate
+ pairs</em> (see the section <a href="Character.html#unicode">Unicode
+ Character Representations</a> in the <code>Character</code> class for
+ more information).
+ Index values refer to <code>char</code> code units, so a supplementary
+ character uses two positions in a <code>String</code>.
+ <p>The <code>String</code> class provides methods for dealing with
+ Unicode code points (i.e., characters), in addition to those for
+ dealing with Unicode code units (i.e., <code>char</code> values).</div>
+<dl><dt><span class="strong">Since:</span></dt>
+  <dd>JDK1.0</dd>
+<dt><span class="strong">See Also:</span></dt><dd><a href="../../java/lang/Object.html#toString()"><code>Object.toString()</code></a>, 
+<a href="../../java/lang/StringBuffer.html" title="class in java.lang"><code>StringBuffer</code></a>, 
+<a href="../../java/lang/StringBuilder.html" title="class in java.lang"><code>StringBuilder</code></a>, 
+<a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, 
+<a href="../../serialized-form.html#java.lang.String">Serialized Form</a></dd></dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field_summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../java/util/Comparator.html" title="interface in java.util">Comparator</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt;</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#CASE_INSENSITIVE_ORDER">CASE_INSENSITIVE_ORDER</a></strong></code>
+<div class="block">A Comparator that orders <code>String</code> objects as by
+ <code>compareToIgnoreCase</code>.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor_summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String()">String</a></strong>()</code>
+<div class="block">Initializes a newly created <code>String</code> object so that it represents
+ an empty character sequence.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(byte[])">String</a></strong>(byte[]&nbsp;bytes)</code>
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the platform's default charset.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(byte[],%20java.nio.charset.Charset)">String</a></strong>(byte[]&nbsp;bytes,
+      <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code>
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of
+ bytes using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(byte[],%20int)">String</a></strong>(byte[]&nbsp;ascii,
+      int&nbsp;hibyte)</code>
+<div class="block"><strong>Deprecated.</strong>&nbsp;
+<div class="block"><i>This method does not properly convert bytes into
+ characters.  As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <code>String</code> constructors that take a <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, charset name, or that use the platform's
+ default charset.</i></div>
+</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(byte[],%20int,%20int)">String</a></strong>(byte[]&nbsp;bytes,
+      int&nbsp;offset,
+      int&nbsp;length)</code>
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the platform's default charset.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(byte[],%20int,%20int,%20java.nio.charset.Charset)">String</a></strong>(byte[]&nbsp;bytes,
+      int&nbsp;offset,
+      int&nbsp;length,
+      <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code>
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(byte[],%20int,%20int,%20int)">String</a></strong>(byte[]&nbsp;ascii,
+      int&nbsp;hibyte,
+      int&nbsp;offset,
+      int&nbsp;count)</code>
+<div class="block"><strong>Deprecated.</strong>&nbsp;
+<div class="block"><i>This method does not properly convert bytes into characters.
+ As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <code>String</code> constructors that take a <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, charset name, or that use the platform's
+ default charset.</i></div>
+</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(byte[],%20int,%20int,%20java.lang.String)">String</a></strong>(byte[]&nbsp;bytes,
+      int&nbsp;offset,
+      int&nbsp;length,
+      <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code>
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified charset.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(byte[],%20java.lang.String)">String</a></strong>(byte[]&nbsp;bytes,
+      <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code>
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(char[])">String</a></strong>(char[]&nbsp;value)</code>
+<div class="block">Allocates a new <code>String</code> so that it represents the sequence of
+ characters currently contained in the character array argument.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(char[],%20int,%20int)">String</a></strong>(char[]&nbsp;value,
+      int&nbsp;offset,
+      int&nbsp;count)</code>
+<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
+ of the character array argument.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(int[],%20int,%20int)">String</a></strong>(int[]&nbsp;codePoints,
+      int&nbsp;offset,
+      int&nbsp;count)</code>
+<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
+ of the <a href="Character.html#unicode">Unicode code point</a> array
+ argument.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(java.lang.String)">String</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;original)</code>
+<div class="block">Initializes a newly created <code>String</code> object so that it represents
+ the same sequence of characters as the argument; in other words, the
+ newly created string is a copy of the argument string.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(java.lang.StringBuffer)">String</a></strong>(<a href="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;buffer)</code>
+<div class="block">Allocates a new string that contains the sequence of characters
+ currently contained in the string buffer argument.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><strong><a href="../../java/lang/String.html#String(java.lang.StringBuilder)">String</a></strong>(<a href="../../java/lang/StringBuilder.html" title="class in java.lang">StringBuilder</a>&nbsp;builder)</code>
+<div class="block">Allocates a new string that contains the sequence of characters
+ currently contained in the string builder argument.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method_summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>char</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#charAt(int)">charAt</a></strong>(int&nbsp;index)</code>
+<div class="block">Returns the <code>char</code> value at the
+ specified index.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#codePointAt(int)">codePointAt</a></strong>(int&nbsp;index)</code>
+<div class="block">Returns the character (Unicode code point) at the specified
+ index.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#codePointBefore(int)">codePointBefore</a></strong>(int&nbsp;index)</code>
+<div class="block">Returns the character (Unicode code point) before the specified
+ index.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#codePointCount(int,%20int)">codePointCount</a></strong>(int&nbsp;beginIndex,
+              int&nbsp;endIndex)</code>
+<div class="block">Returns the number of Unicode code points in the specified text
+ range of this <code>String</code>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#compareTo(java.lang.String)">compareTo</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;anotherString)</code>
+<div class="block">Compares two strings lexicographically.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#compareToIgnoreCase(java.lang.String)">compareToIgnoreCase</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</code>
+<div class="block">Compares two strings lexicographically, ignoring case
+ differences.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#concat(java.lang.String)">concat</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</code>
+<div class="block">Concatenates the specified string to the end of this string.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#contains(java.lang.CharSequence)">contains</a></strong>(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;s)</code>
+<div class="block">Returns true if and only if this string contains the specified
+ sequence of char values.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#contentEquals(java.lang.CharSequence)">contentEquals</a></strong>(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;cs)</code>
+<div class="block">Compares this string to the specified <code>CharSequence</code>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#contentEquals(java.lang.StringBuffer)">contentEquals</a></strong>(<a href="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;sb)</code>
+<div class="block">Compares this string to the specified <code>StringBuffer</code>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#copyValueOf(char[])">copyValueOf</a></strong>(char[]&nbsp;data)</code>
+<div class="block">Returns a String that represents the character sequence in the
+ array specified.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#copyValueOf(char[],%20int,%20int)">copyValueOf</a></strong>(char[]&nbsp;data,
+           int&nbsp;offset,
+           int&nbsp;count)</code>
+<div class="block">Returns a String that represents the character sequence in the
+ array specified.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#endsWith(java.lang.String)">endsWith</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;suffix)</code>
+<div class="block">Tests if this string ends with the specified suffix.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#equals(java.lang.Object)">equals</a></strong>(<a href="../../java/lang/Object.html" title="class in java.lang">Object</a>&nbsp;anObject)</code>
+<div class="block">Compares this string to the specified object.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#equalsIgnoreCase(java.lang.String)">equalsIgnoreCase</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;anotherString)</code>
+<div class="block">Compares this <code>String</code> to another <code>String</code>, ignoring case
+ considerations.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#format(java.util.Locale,%20java.lang.String,%20java.lang.Object...)">format</a></strong>(<a href="../../java/util/Locale.html" title="class in java.util">Locale</a>&nbsp;l,
+      <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;format,
+      <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>...&nbsp;args)</code>
+<div class="block">Returns a formatted string using the specified locale, format string,
+ and arguments.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#format(java.lang.String,%20java.lang.Object...)">format</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;format,
+      <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>...&nbsp;args)</code>
+<div class="block">Returns a formatted string using the specified format string and
+ arguments.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#getBytes()">getBytes</a></strong>()</code>
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the
+ platform's default charset, storing the result into a new byte array.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#getBytes(java.nio.charset.Charset)">getBytes</a></strong>(<a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code>
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the given
+ <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>, storing the result into a
+ new byte array.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#getBytes(int,%20int,%20byte[],%20int)">getBytes</a></strong>(int&nbsp;srcBegin,
+        int&nbsp;srcEnd,
+        byte[]&nbsp;dst,
+        int&nbsp;dstBegin)</code>
+<div class="block"><strong>Deprecated.</strong>&nbsp;
+<div class="block"><i>This method does not properly convert characters into
+ bytes.  As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <a href="../../java/lang/String.html#getBytes()"><code>getBytes()</code></a> method, which uses the platform's default charset.</i></div>
+</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#getBytes(java.lang.String)">getBytes</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code>
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the named
+ charset, storing the result into a new byte array.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#getChars(int,%20int,%20char[],%20int)">getChars</a></strong>(int&nbsp;srcBegin,
+        int&nbsp;srcEnd,
+        char[]&nbsp;dst,
+        int&nbsp;dstBegin)</code>
+<div class="block">Copies characters from this string into the destination character
+ array.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#hashCode()">hashCode</a></strong>()</code>
+<div class="block">Returns a hash code for this string.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#indexOf(int)">indexOf</a></strong>(int&nbsp;ch)</code>
+<div class="block">Returns the index within this string of the first occurrence of
+ the specified character.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#indexOf(int,%20int)">indexOf</a></strong>(int&nbsp;ch,
+       int&nbsp;fromIndex)</code>
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified character, starting the search at the specified index.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#indexOf(java.lang.String)">indexOf</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</code>
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified substring.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#indexOf(java.lang.String,%20int)">indexOf</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str,
+       int&nbsp;fromIndex)</code>
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified substring, starting at the specified index.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#intern()">intern</a></strong>()</code>
+<div class="block">Returns a canonical representation for the string object.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#isEmpty()">isEmpty</a></strong>()</code>
+<div class="block">Returns <tt>true</tt> if, and only if, <a href="../../java/lang/String.html#length()"><code>length()</code></a> is <tt>0</tt>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#lastIndexOf(int)">lastIndexOf</a></strong>(int&nbsp;ch)</code>
+<div class="block">Returns the index within this string of the last occurrence of
+ the specified character.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#lastIndexOf(int,%20int)">lastIndexOf</a></strong>(int&nbsp;ch,
+           int&nbsp;fromIndex)</code>
+<div class="block">Returns the index within this string of the last occurrence of
+ the specified character, searching backward starting at the
+ specified index.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#lastIndexOf(java.lang.String)">lastIndexOf</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</code>
+<div class="block">Returns the index within this string of the last occurrence of the
+ specified substring.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#lastIndexOf(java.lang.String,%20int)">lastIndexOf</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str,
+           int&nbsp;fromIndex)</code>
+<div class="block">Returns the index within this string of the last occurrence of the
+ specified substring, searching backward starting at the specified index.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#length()">length</a></strong>()</code>
+<div class="block">Returns the length of this string.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#matches(java.lang.String)">matches</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex)</code>
+<div class="block">Tells whether or not this string matches the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#offsetByCodePoints(int,%20int)">offsetByCodePoints</a></strong>(int&nbsp;index,
+                  int&nbsp;codePointOffset)</code>
+<div class="block">Returns the index within this <code>String</code> that is
+ offset from the given <code>index</code> by
+ <code>codePointOffset</code> code points.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#regionMatches(boolean,%20int,%20java.lang.String,%20int,%20int)">regionMatches</a></strong>(boolean&nbsp;ignoreCase,
+             int&nbsp;toffset,
+             <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;other,
+             int&nbsp;ooffset,
+             int&nbsp;len)</code>
+<div class="block">Tests if two string regions are equal.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#regionMatches(int,%20java.lang.String,%20int,%20int)">regionMatches</a></strong>(int&nbsp;toffset,
+             <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;other,
+             int&nbsp;ooffset,
+             int&nbsp;len)</code>
+<div class="block">Tests if two string regions are equal.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#replace(char,%20char)">replace</a></strong>(char&nbsp;oldChar,
+       char&nbsp;newChar)</code>
+<div class="block">Returns a new string resulting from replacing all occurrences of
+ <code>oldChar</code> in this string with <code>newChar</code>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#replace(java.lang.CharSequence,%20java.lang.CharSequence)">replace</a></strong>(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;target,
+       <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;replacement)</code>
+<div class="block">Replaces each substring of this string that matches the literal target
+ sequence with the specified literal replacement sequence.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#replaceAll(java.lang.String,%20java.lang.String)">replaceAll</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex,
+          <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replacement)</code>
+<div class="block">Replaces each substring of this string that matches the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a> with the
+ given replacement.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#replaceFirst(java.lang.String,%20java.lang.String)">replaceFirst</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex,
+            <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replacement)</code>
+<div class="block">Replaces the first substring of this string that matches the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a> with the
+ given replacement.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a>[]</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#split(java.lang.String)">split</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex)</code>
+<div class="block">Splits this string around matches of the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a>[]</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#split(java.lang.String,%20int)">split</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex,
+     int&nbsp;limit)</code>
+<div class="block">Splits this string around matches of the given
+ <a href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#startsWith(java.lang.String)">startsWith</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;prefix)</code>
+<div class="block">Tests if this string starts with the specified prefix.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#startsWith(java.lang.String,%20int)">startsWith</a></strong>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;prefix,
+          int&nbsp;toffset)</code>
+<div class="block">Tests if the substring of this string beginning at the
+ specified index starts with the specified prefix.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#subSequence(int,%20int)">subSequence</a></strong>(int&nbsp;beginIndex,
+           int&nbsp;endIndex)</code>
+<div class="block">Returns a new character sequence that is a subsequence of this sequence.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#substring(int)">substring</a></strong>(int&nbsp;beginIndex)</code>
+<div class="block">Returns a new string that is a substring of this string.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#substring(int,%20int)">substring</a></strong>(int&nbsp;beginIndex,
+         int&nbsp;endIndex)</code>
+<div class="block">Returns a new string that is a substring of this string.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>char[]</code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#toCharArray()">toCharArray</a></strong>()</code>
+<div class="block">Converts this string to a new character array.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#toLowerCase()">toLowerCase</a></strong>()</code>
+<div class="block">Converts all of the characters in this <code>String</code> to lower
+ case using the rules of the default locale.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#toLowerCase(java.util.Locale)">toLowerCase</a></strong>(<a href="../../java/util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</code>
+<div class="block">Converts all of the characters in this <code>String</code> to lower
+ case using the rules of the given <code>Locale</code>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#toString()">toString</a></strong>()</code>
+<div class="block">This object (which is already a string!) is itself returned.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#toUpperCase()">toUpperCase</a></strong>()</code>
+<div class="block">Converts all of the characters in this <code>String</code> to upper
+ case using the rules of the default locale.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#toUpperCase(java.util.Locale)">toUpperCase</a></strong>(<a href="../../java/util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</code>
+<div class="block">Converts all of the characters in this <code>String</code> to upper
+ case using the rules of the given <code>Locale</code>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#trim()">trim</a></strong>()</code>
+<div class="block">Returns a copy of the string, with leading and trailing whitespace
+ omitted.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#valueOf(boolean)">valueOf</a></strong>(boolean&nbsp;b)</code>
+<div class="block">Returns the string representation of the <code>boolean</code> argument.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#valueOf(char)">valueOf</a></strong>(char&nbsp;c)</code>
+<div class="block">Returns the string representation of the <code>char</code>
+ argument.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#valueOf(char[])">valueOf</a></strong>(char[]&nbsp;data)</code>
+<div class="block">Returns the string representation of the <code>char</code> array
+ argument.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#valueOf(char[],%20int,%20int)">valueOf</a></strong>(char[]&nbsp;data,
+       int&nbsp;offset,
+       int&nbsp;count)</code>
+<div class="block">Returns the string representation of a specific subarray of the
+ <code>char</code> array argument.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#valueOf(double)">valueOf</a></strong>(double&nbsp;d)</code>
+<div class="block">Returns the string representation of the <code>double</code> argument.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#valueOf(float)">valueOf</a></strong>(float&nbsp;f)</code>
+<div class="block">Returns the string representation of the <code>float</code> argument.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#valueOf(int)">valueOf</a></strong>(int&nbsp;i)</code>
+<div class="block">Returns the string representation of the <code>int</code> argument.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#valueOf(long)">valueOf</a></strong>(long&nbsp;l)</code>
+<div class="block">Returns the string representation of the <code>long</code> argument.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static <a href="../../java/lang/String.html" title="class in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../java/lang/String.html#valueOf(java.lang.Object)">valueOf</a></strong>(<a href="../../java/lang/Object.html" title="class in java.lang">Object</a>&nbsp;obj)</code>
+<div class="block">Returns the string representation of the <code>Object</code> argument.</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="../../java/lang/Object.html" title="class in java.lang">Object</a></h3>
+<code><a href="../../java/lang/Object.html#clone()">clone</a>, <a href="../../java/lang/Object.html#finalize()">finalize</a>, <a href="../../java/lang/Object.html#getClass()">getClass</a>, <a href="../../java/lang/Object.html#notify()">notify</a>, <a href="../../java/lang/Object.html#notifyAll()">notifyAll</a>, <a href="../../java/lang/Object.html#wait()">wait</a>, <a href="../../java/lang/Object.html#wait(long)">wait</a>, <a href="../../java/lang/Object.html#wait(long,%20int)">wait</a>< [...]
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field_detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="CASE_INSENSITIVE_ORDER">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>CASE_INSENSITIVE_ORDER</h4>
+<pre>public static final&nbsp;<a href="../../java/util/Comparator.html" title="interface in java.util">Comparator</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt; CASE_INSENSITIVE_ORDER</pre>
+<div class="block">A Comparator that orders <code>String</code> objects as by
+ <code>compareToIgnoreCase</code>. This comparator is serializable.
+ <p>
+ Note that this Comparator does <em>not</em> take locale into account,
+ and will result in an unsatisfactory ordering for certain locales.
+ The java.text package provides <em>Collators</em> to allow
+ locale-sensitive ordering.</div>
+<dl><dt><span class="strong">Since:</span></dt>
+  <dd>1.2</dd>
+<dt><span class="strong">See Also:</span></dt><dd><a href="../../java/text/Collator.html#compare(java.lang.String,%20java.lang.String)"><code>Collator.compare(String, String)</code></a></dd></dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor_detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="String()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String()</pre>
+<div class="block">Initializes a newly created <code>String</code> object so that it represents
+ an empty character sequence.  Note that use of this constructor is
+ unnecessary since Strings are immutable.</div>
+</li>
+</ul>
+<a name="String(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;original)</pre>
+<div class="block">Initializes a newly created <code>String</code> object so that it represents
+ the same sequence of characters as the argument; in other words, the
+ newly created string is a copy of the argument string. Unless an
+ explicit copy of <code>original</code> is needed, use of this constructor is
+ unnecessary since Strings are immutable.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>original</code> - A <code>String</code></dd></dl>
+</li>
+</ul>
+<a name="String(char[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(char[]&nbsp;value)</pre>
+<div class="block">Allocates a new <code>String</code> so that it represents the sequence of
+ characters currently contained in the character array argument. The
+ contents of the character array are copied; subsequent modification of
+ the character array does not affect the newly created string.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - The initial value of the string</dd></dl>
+</li>
+</ul>
+<a name="String(char[], int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(char[]&nbsp;value,
+      int&nbsp;offset,
+      int&nbsp;count)</pre>
+<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
+ of the character array argument. The <code>offset</code> argument is the
+ index of the first character of the subarray and the <code>count</code>
+ argument specifies the length of the subarray. The contents of the
+ subarray are copied; subsequent modification of the character array does
+ not affect the newly created string.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - Array that is the source of characters</dd><dd><code>offset</code> - The initial offset</dd><dd><code>count</code> - The length</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If the <code>offset</code> and <code>count</code> arguments index
+          characters outside the bounds of the <code>value</code> array</dd></dl>
+</li>
+</ul>
+<a name="String(int[], int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(int[]&nbsp;codePoints,
+      int&nbsp;offset,
+      int&nbsp;count)</pre>
+<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
+ of the <a href="Character.html#unicode">Unicode code point</a> array
+ argument.  The <code>offset</code> argument is the index of the first code
+ point of the subarray and the <code>count</code> argument specifies the
+ length of the subarray.  The contents of the subarray are converted to
+ <code>char</code>s; subsequent modification of the <code>int</code> array does not
+ affect the newly created string.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>codePoints</code> - Array that is the source of Unicode code points</dd><dd><code>offset</code> - The initial offset</dd><dd><code>count</code> - The length</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - If any invalid Unicode code point is found in <code>codePoints</code></dd>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If the <code>offset</code> and <code>count</code> arguments index
+          characters outside the bounds of the <code>codePoints</code> array</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.5</dd></dl>
+</li>
+</ul>
+<a name="String(byte[], int, int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre><a href="../../java/lang/Deprecated.html" title="annotation in java.lang">@Deprecated</a>
+public&nbsp;String(byte[]&nbsp;ascii,
+                 int&nbsp;hibyte,
+                 int&nbsp;offset,
+                 int&nbsp;count)</pre>
+<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>This method does not properly convert bytes into characters.
+ As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <code>String</code> constructors that take a <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, charset name, or that use the platform's
+ default charset.</i></div>
+<div class="block">Allocates a new <code>String</code> constructed from a subarray of an array
+ of 8-bit integer values.
+
+ <p> The <code>offset</code> argument is the index of the first byte of the
+ subarray, and the <code>count</code> argument specifies the length of the
+ subarray.
+
+ <p> Each <code>byte</code> in the subarray is converted to a <code>char</code> as
+ specified in the method above.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>ascii</code> - The bytes to be converted to characters</dd><dd><code>hibyte</code> - The top 8 bits of each 16-bit Unicode code unit</dd><dd><code>offset</code> - The initial offset</dd><dd><code>count</code> - The length</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If the <code>offset</code> or <code>count</code> argument is invalid</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../java/lang/String.html#String(byte[],%20int)"><code>String(byte[], int)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[],%20int,%20int,%20java.lang.String)"><code>String(byte[], int, int, java.lang.String)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[],%20int,%20int,%20java.nio.charset.Charset)"><code>String(byte[], int, int, java.nio.charset.Charset)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[],%20int,%20int)"><code>String(byte[], int, int)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[],%20java.lang.String)"><code>String(byte[], java.lang.String)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[],%20java.nio.charset.Charset)"><code>String(byte[], java.nio.charset.Charset)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[])"><code>String(byte[])</code></a></dd></dl>
+</li>
+</ul>
+<a name="String(byte[], int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre><a href="../../java/lang/Deprecated.html" title="annotation in java.lang">@Deprecated</a>
+public&nbsp;String(byte[]&nbsp;ascii,
+                 int&nbsp;hibyte)</pre>
+<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>This method does not properly convert bytes into
+ characters.  As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <code>String</code> constructors that take a <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, charset name, or that use the platform's
+ default charset.</i></div>
+<div class="block">Allocates a new <code>String</code> containing characters constructed from
+ an array of 8-bit integer values. Each character <i>c</i>in the
+ resulting string is constructed from the corresponding component
+ <i>b</i> in the byte array such that:
+
+ <blockquote><pre>
+     <b><i>c</i></b> == (char)(((hibyte &amp; 0xff) &lt;&lt; 8)
+                         | (<b><i>b</i></b> &amp; 0xff))
+ </pre></blockquote></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>ascii</code> - The bytes to be converted to characters</dd><dd><code>hibyte</code> - The top 8 bits of each 16-bit Unicode code unit</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../java/lang/String.html#String(byte[],%20int,%20int,%20java.lang.String)"><code>String(byte[], int, int, java.lang.String)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[],%20int,%20int,%20java.nio.charset.Charset)"><code>String(byte[], int, int, java.nio.charset.Charset)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[],%20int,%20int)"><code>String(byte[], int, int)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[],%20java.lang.String)"><code>String(byte[], java.lang.String)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[],%20java.nio.charset.Charset)"><code>String(byte[], java.nio.charset.Charset)</code></a>, 
+<a href="../../java/lang/String.html#String(byte[])"><code>String(byte[])</code></a></dd></dl>
+</li>
+</ul>
+<a name="String(byte[], int, int, java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(byte[]&nbsp;bytes,
+      int&nbsp;offset,
+      int&nbsp;length,
+      <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)
+       throws <a href="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified charset.  The length of the new <code>String</code>
+ is a function of the charset, and hence may not be equal to the length
+ of the subarray.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the given charset is unspecified.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>bytes</code> - The bytes to be decoded into characters</dd><dd><code>offset</code> - The index of the first byte to decode</dd><dd><code>length</code> - The number of bytes to decode</dd><dd><code>charsetName</code> - The name of a supported <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></code> - If the named charset is not supported</dd>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If the <code>offset</code> and <code>length</code> arguments index
+          characters outside the bounds of the <code>bytes</code> array</dd><dt><span class="strong">Since:</span></dt>
+  <dd>JDK1.1</dd></dl>
+</li>
+</ul>
+<a name="String(byte[], int, int, java.nio.charset.Charset)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(byte[]&nbsp;bytes,
+      int&nbsp;offset,
+      int&nbsp;length,
+      <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.
+ The length of the new <code>String</code> is a function of the charset, and
+ hence may not be equal to the length of the subarray.
+
+ <p> This method always replaces malformed-input and unmappable-character
+ sequences with this charset's default replacement string.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>bytes</code> - The bytes to be decoded into characters</dd><dd><code>offset</code> - The index of the first byte to decode</dd><dd><code>length</code> - The number of bytes to decode</dd><dd><code>charset</code> - The <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a> to be used to
+         decode the <code>bytes</code></dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If the <code>offset</code> and <code>length</code> arguments index
+          characters outside the bounds of the <code>bytes</code> array</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.6</dd></dl>
+</li>
+</ul>
+<a name="String(byte[], java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(byte[]&nbsp;bytes,
+      <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)
+       throws <a href="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.  The
+ length of the new <code>String</code> is a function of the charset, and hence
+ may not be equal to the length of the byte array.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the given charset is unspecified.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>bytes</code> - The bytes to be decoded into characters</dd><dd><code>charsetName</code> - The name of a supported <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></code> - If the named charset is not supported</dd><dt><span class="strong">Since:</span></dt>
+  <dd>JDK1.1</dd></dl>
+</li>
+</ul>
+<a name="String(byte[], java.nio.charset.Charset)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(byte[]&nbsp;bytes,
+      <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of
+ bytes using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.
+ The length of the new <code>String</code> is a function of the charset, and
+ hence may not be equal to the length of the byte array.
+
+ <p> This method always replaces malformed-input and unmappable-character
+ sequences with this charset's default replacement string.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>bytes</code> - The bytes to be decoded into characters</dd><dd><code>charset</code> - The <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a> to be used to
+         decode the <code>bytes</code></dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.6</dd></dl>
+</li>
+</ul>
+<a name="String(byte[], int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(byte[]&nbsp;bytes,
+      int&nbsp;offset,
+      int&nbsp;length)</pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
+ bytes using the platform's default charset.  The length of the new
+ <code>String</code> is a function of the charset, and hence may not be equal
+ to the length of the subarray.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the default charset is unspecified.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>bytes</code> - The bytes to be decoded into characters</dd><dd><code>offset</code> - The index of the first byte to decode</dd><dd><code>length</code> - The number of bytes to decode</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If the <code>offset</code> and the <code>length</code> arguments index
+          characters outside the bounds of the <code>bytes</code> array</dd><dt><span class="strong">Since:</span></dt>
+  <dd>JDK1.1</dd></dl>
+</li>
+</ul>
+<a name="String(byte[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(byte[]&nbsp;bytes)</pre>
+<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
+ using the platform's default charset.  The length of the new <code>String</code> is a function of the charset, and hence may not be equal to the
+ length of the byte array.
+
+ <p> The behavior of this constructor when the given bytes are not valid
+ in the default charset is unspecified.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
+ over the decoding process is required.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>bytes</code> - The bytes to be decoded into characters</dd><dt><span class="strong">Since:</span></dt>
+  <dd>JDK1.1</dd></dl>
+</li>
+</ul>
+<a name="String(java.lang.StringBuffer)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(<a href="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;buffer)</pre>
+<div class="block">Allocates a new string that contains the sequence of characters
+ currently contained in the string buffer argument. The contents of the
+ string buffer are copied; subsequent modification of the string buffer
+ does not affect the newly created string.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>buffer</code> - A <code>StringBuffer</code></dd></dl>
+</li>
+</ul>
+<a name="String(java.lang.StringBuilder)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>String</h4>
+<pre>public&nbsp;String(<a href="../../java/lang/StringBuilder.html" title="class in java.lang">StringBuilder</a>&nbsp;builder)</pre>
+<div class="block">Allocates a new string that contains the sequence of characters
+ currently contained in the string builder argument. The contents of the
+ string builder are copied; subsequent modification of the string builder
+ does not affect the newly created string.
+
+ <p> This constructor is provided to ease migration to <code>StringBuilder</code>. Obtaining a string from a string builder via the <code>toString</code> method is likely to run faster and is generally preferred.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>builder</code> - A <code>StringBuilder</code></dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.5</dd></dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method_detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="length()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>length</h4>
+<pre>public&nbsp;int&nbsp;length()</pre>
+<div class="block">Returns the length of this string.
+ The length is equal to the number of <a href="Character.html#unicode">Unicode
+ code units</a> in the string.</div>
+<dl>
+<dt><strong>Specified by:</strong></dt>
+<dd><code><a href="../../java/lang/CharSequence.html#length()">length</a></code>&nbsp;in interface&nbsp;<code><a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
+<dt><span class="strong">Returns:</span></dt><dd>the length of the sequence of characters represented by this
+          object.</dd></dl>
+</li>
+</ul>
+<a name="isEmpty()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isEmpty</h4>
+<pre>public&nbsp;boolean&nbsp;isEmpty()</pre>
+<div class="block">Returns <tt>true</tt> if, and only if, <a href="../../java/lang/String.html#length()"><code>length()</code></a> is <tt>0</tt>.</div>
+<dl><dt><span class="strong">Returns:</span></dt><dd><tt>true</tt> if <a href="../../java/lang/String.html#length()"><code>length()</code></a> is <tt>0</tt>, otherwise
+ <tt>false</tt></dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.6</dd></dl>
+</li>
+</ul>
+<a name="charAt(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>charAt</h4>
+<pre>public&nbsp;char&nbsp;charAt(int&nbsp;index)</pre>
+<div class="block">Returns the <code>char</code> value at the
+ specified index. An index ranges from <code>0</code> to
+ <code>length() - 1</code>. The first <code>char</code> value of the sequence
+ is at index <code>0</code>, the next at index <code>1</code>,
+ and so on, as for array indexing.
+
+ <p>If the <code>char</code> value specified by the index is a
+ <a href="Character.html#unicode">surrogate</a>, the surrogate
+ value is returned.</div>
+<dl>
+<dt><strong>Specified by:</strong></dt>
+<dd><code><a href="../../java/lang/CharSequence.html#charAt(int)">charAt</a></code>&nbsp;in interface&nbsp;<code><a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
+<dt><span class="strong">Parameters:</span></dt><dd><code>index</code> - the index of the <code>char</code> value.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the <code>char</code> value at the specified index of this string.
+             The first <code>char</code> value is at index <code>0</code>.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the <code>index</code>
+             argument is negative or not less than the length of this
+             string.</dd></dl>
+</li>
+</ul>
+<a name="codePointAt(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>codePointAt</h4>
+<pre>public&nbsp;int&nbsp;codePointAt(int&nbsp;index)</pre>
+<div class="block">Returns the character (Unicode code point) at the specified
+ index. The index refers to <code>char</code> values
+ (Unicode code units) and ranges from <code>0</code> to
+ <a href="../../java/lang/String.html#length()"><code>length()</code></a><code> - 1</code>.
+
+ <p> If the <code>char</code> value specified at the given index
+ is in the high-surrogate range, the following index is less
+ than the length of this <code>String</code>, and the
+ <code>char</code> value at the following index is in the
+ low-surrogate range, then the supplementary code point
+ corresponding to this surrogate pair is returned. Otherwise,
+ the <code>char</code> value at the given index is returned.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>index</code> - the index to the <code>char</code> values</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the code point value of the character at the
+             <code>index</code></dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the <code>index</code>
+             argument is negative or not less than the length of this
+             string.</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.5</dd></dl>
+</li>
+</ul>
+<a name="codePointBefore(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>codePointBefore</h4>
+<pre>public&nbsp;int&nbsp;codePointBefore(int&nbsp;index)</pre>
+<div class="block">Returns the character (Unicode code point) before the specified
+ index. The index refers to <code>char</code> values
+ (Unicode code units) and ranges from <code>1</code> to <a href="../../java/lang/CharSequence.html#length()"><code>length</code></a>.
+
+ <p> If the <code>char</code> value at <code>(index - 1)</code>
+ is in the low-surrogate range, <code>(index - 2)</code> is not
+ negative, and the <code>char</code> value at <code>(index -
+ 2)</code> is in the high-surrogate range, then the
+ supplementary code point value of the surrogate pair is
+ returned. If the <code>char</code> value at <code>index -
+ 1</code> is an unpaired low-surrogate or a high-surrogate, the
+ surrogate value is returned.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>index</code> - the index following the code point that should be returned</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the Unicode code point value before the given index.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the <code>index</code>
+            argument is less than 1 or greater than the length
+            of this string.</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.5</dd></dl>
+</li>
+</ul>
+<a name="codePointCount(int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>codePointCount</h4>
+<pre>public&nbsp;int&nbsp;codePointCount(int&nbsp;beginIndex,
+                 int&nbsp;endIndex)</pre>
+<div class="block">Returns the number of Unicode code points in the specified text
+ range of this <code>String</code>. The text range begins at the
+ specified <code>beginIndex</code> and extends to the
+ <code>char</code> at index <code>endIndex - 1</code>. Thus the
+ length (in <code>char</code>s) of the text range is
+ <code>endIndex-beginIndex</code>. Unpaired surrogates within
+ the text range count as one code point each.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>beginIndex</code> - the index to the first <code>char</code> of
+ the text range.</dd><dd><code>endIndex</code> - the index after the last <code>char</code> of
+ the text range.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the number of Unicode code points in the specified text
+ range</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the
+ <code>beginIndex</code> is negative, or <code>endIndex</code>
+ is larger than the length of this <code>String</code>, or
+ <code>beginIndex</code> is larger than <code>endIndex</code>.</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.5</dd></dl>
+</li>
+</ul>
+<a name="offsetByCodePoints(int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>offsetByCodePoints</h4>
+<pre>public&nbsp;int&nbsp;offsetByCodePoints(int&nbsp;index,
+                     int&nbsp;codePointOffset)</pre>
+<div class="block">Returns the index within this <code>String</code> that is
+ offset from the given <code>index</code> by
+ <code>codePointOffset</code> code points. Unpaired surrogates
+ within the text range given by <code>index</code> and
+ <code>codePointOffset</code> count as one code point each.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>index</code> - the index to be offset</dd><dd><code>codePointOffset</code> - the offset in code points</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the index within this <code>String</code></dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if <code>index</code>
+   is negative or larger then the length of this
+   <code>String</code>, or if <code>codePointOffset</code> is positive
+   and the substring starting with <code>index</code> has fewer
+   than <code>codePointOffset</code> code points,
+   or if <code>codePointOffset</code> is negative and the substring
+   before <code>index</code> has fewer than the absolute value
+   of <code>codePointOffset</code> code points.</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.5</dd></dl>
+</li>
+</ul>
+<a name="getChars(int, int, char[], int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getChars</h4>
+<pre>public&nbsp;void&nbsp;getChars(int&nbsp;srcBegin,
+            int&nbsp;srcEnd,
+            char[]&nbsp;dst,
+            int&nbsp;dstBegin)</pre>
+<div class="block">Copies characters from this string into the destination character
+ array.
+ <p>
+ The first character to be copied is at index <code>srcBegin</code>;
+ the last character to be copied is at index <code>srcEnd-1</code>
+ (thus the total number of characters to be copied is
+ <code>srcEnd-srcBegin</code>). The characters are copied into the
+ subarray of <code>dst</code> starting at index <code>dstBegin</code>
+ and ending at index:
+ <p><blockquote><pre>
+     dstbegin + (srcEnd-srcBegin) - 1
+ </pre></blockquote></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>srcBegin</code> - index of the first character in the string
+                        to copy.</dd><dd><code>srcEnd</code> - index after the last character in the string
+                        to copy.</dd><dd><code>dst</code> - the destination array.</dd><dd><code>dstBegin</code> - the start offset in the destination array.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If any of the following
+            is true:
+            <ul><li><code>srcBegin</code> is negative.
+            <li><code>srcBegin</code> is greater than <code>srcEnd</code>
+            <li><code>srcEnd</code> is greater than the length of this
+                string
+            <li><code>dstBegin</code> is negative
+            <li><code>dstBegin+(srcEnd-srcBegin)</code> is larger than
+                <code>dst.length</code></ul></dd></dl>
+</li>
+</ul>
+<a name="getBytes(int, int, byte[], int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBytes</h4>
+<pre><a href="../../java/lang/Deprecated.html" title="annotation in java.lang">@Deprecated</a>
+public&nbsp;void&nbsp;getBytes(int&nbsp;srcBegin,
+                       int&nbsp;srcEnd,
+                       byte[]&nbsp;dst,
+                       int&nbsp;dstBegin)</pre>
+<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>This method does not properly convert characters into
+ bytes.  As of JDK&nbsp;1.1, the preferred way to do this is via the
+ <a href="../../java/lang/String.html#getBytes()"><code>getBytes()</code></a> method, which uses the platform's default charset.</i></div>
+<div class="block">Copies characters from this string into the destination byte array. Each
+ byte receives the 8 low-order bits of the corresponding character. The
+ eight high-order bits of each character are not copied and do not
+ participate in the transfer in any way.
+
+ <p> The first character to be copied is at index <code>srcBegin</code>; the
+ last character to be copied is at index <code>srcEnd-1</code>.  The total
+ number of characters to be copied is <code>srcEnd-srcBegin</code>. The
+ characters, converted to bytes, are copied into the subarray of <code>dst</code> starting at index <code>dstBegin</code> and ending at index:
+
+ <blockquote><pre>
+     dstbegin + (srcEnd-srcBegin) - 1
+ </pre></blockquote></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>srcBegin</code> - Index of the first character in the string to copy</dd><dd><code>srcEnd</code> - Index after the last character in the string to copy</dd><dd><code>dst</code> - The destination array</dd><dd><code>dstBegin</code> - The start offset in the destination array</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If any of the following is true:
+          <ul>
+            <li> <code>srcBegin</code> is negative
+            <li> <code>srcBegin</code> is greater than <code>srcEnd</code>
+            <li> <code>srcEnd</code> is greater than the length of this String
+            <li> <code>dstBegin</code> is negative
+            <li> <code>dstBegin+(srcEnd-srcBegin)</code> is larger than <code>dst.length</code>
+          </ul></dd></dl>
+</li>
+</ul>
+<a name="getBytes(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBytes</h4>
+<pre>public&nbsp;byte[]&nbsp;getBytes(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)
+                throws <a href="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the named
+ charset, storing the result into a new byte array.
+
+ <p> The behavior of this method when this string cannot be encoded in
+ the given charset is unspecified.  The <a href="../../java/nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more control
+ over the encoding process is required.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>charsetName</code> - The name of a supported <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
+<dt><span class="strong">Returns:</span></dt><dd>The resultant byte array</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></code> - If the named charset is not supported</dd><dt><span class="strong">Since:</span></dt>
+  <dd>JDK1.1</dd></dl>
+</li>
+</ul>
+<a name="getBytes(java.nio.charset.Charset)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBytes</h4>
+<pre>public&nbsp;byte[]&nbsp;getBytes(<a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the given
+ <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>, storing the result into a
+ new byte array.
+
+ <p> This method always replaces malformed-input and unmappable-character
+ sequences with this charset's default replacement byte array.  The
+ <a href="../../java/nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more
+ control over the encoding process is required.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>charset</code> - The <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> to be used to encode
+         the <code>String</code></dd>
+<dt><span class="strong">Returns:</span></dt><dd>The resultant byte array</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.6</dd></dl>
+</li>
+</ul>
+<a name="getBytes()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBytes</h4>
+<pre>public&nbsp;byte[]&nbsp;getBytes()</pre>
+<div class="block">Encodes this <code>String</code> into a sequence of bytes using the
+ platform's default charset, storing the result into a new byte array.
+
+ <p> The behavior of this method when this string cannot be encoded in
+ the default charset is unspecified.  The <a href="../../java/nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more control
+ over the encoding process is required.</div>
+<dl><dt><span class="strong">Returns:</span></dt><dd>The resultant byte array</dd><dt><span class="strong">Since:</span></dt>
+  <dd>JDK1.1</dd></dl>
+</li>
+</ul>
+<a name="equals(java.lang.Object)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>equals</h4>
+<pre>public&nbsp;boolean&nbsp;equals(<a href="../../java/lang/Object.html" title="class in java.lang">Object</a>&nbsp;anObject)</pre>
+<div class="block">Compares this string to the specified object.  The result is <code>true</code> if and only if the argument is not <code>null</code> and is a <code>String</code> object that represents the same sequence of characters as this
+ object.</div>
+<dl>
+<dt><strong>Overrides:</strong></dt>
+<dd><code><a href="../../java/lang/Object.html#equals(java.lang.Object)">equals</a></code>&nbsp;in class&nbsp;<code><a href="../../java/lang/Object.html" title="class in java.lang">Object</a></code></dd>
+<dt><span class="strong">Parameters:</span></dt><dd><code>anObject</code> - The object to compare this <code>String</code> against</dd>
+<dt><span class="strong">Returns:</span></dt><dd><code>true</code> if the given object represents a <code>String</code>
+          equivalent to this string, <code>false</code> otherwise</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../java/lang/String.html#compareTo(java.lang.String)"><code>compareTo(String)</code></a>, 
+<a href="../../java/lang/String.html#equalsIgnoreCase(java.lang.String)"><code>equalsIgnoreCase(String)</code></a></dd></dl>
+</li>
+</ul>
+<a name="contentEquals(java.lang.StringBuffer)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>contentEquals</h4>
+<pre>public&nbsp;boolean&nbsp;contentEquals(<a href="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;sb)</pre>
+<div class="block">Compares this string to the specified <code>StringBuffer</code>.  The result
+ is <code>true</code> if and only if this <code>String</code> represents the same
+ sequence of characters as the specified <code>StringBuffer</code>.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sb</code> - The <code>StringBuffer</code> to compare this <code>String</code> against</dd>
+<dt><span class="strong">Returns:</span></dt><dd><code>true</code> if this <code>String</code> represents the same
+          sequence of characters as the specified <code>StringBuffer</code>,
+          <code>false</code> otherwise</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.4</dd></dl>
+</li>
+</ul>
+<a name="contentEquals(java.lang.CharSequence)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>contentEquals</h4>
+<pre>public&nbsp;boolean&nbsp;contentEquals(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;cs)</pre>
+<div class="block">Compares this string to the specified <code>CharSequence</code>.  The result
+ is <code>true</code> if and only if this <code>String</code> represents the same
+ sequence of char values as the specified sequence.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>cs</code> - The sequence to compare this <code>String</code> against</dd>
+<dt><span class="strong">Returns:</span></dt><dd><code>true</code> if this <code>String</code> represents the same
+          sequence of char values as the specified sequence, <code>false</code> otherwise</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.5</dd></dl>
+</li>
+</ul>
+<a name="equalsIgnoreCase(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>equalsIgnoreCase</h4>
+<pre>public&nbsp;boolean&nbsp;equalsIgnoreCase(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;anotherString)</pre>
+<div class="block">Compares this <code>String</code> to another <code>String</code>, ignoring case
+ considerations.  Two strings are considered equal ignoring case if they
+ are of the same length and corresponding characters in the two strings
+ are equal ignoring case.
+
+ <p> Two characters <code>c1</code> and <code>c2</code> are considered the same
+ ignoring case if at least one of the following is true:
+ <ul>
+   <li> The two characters are the same (as compared by the
+        <code>==</code> operator)
+   <li> Applying the method <a href="../../java/lang/Character.html#toUpperCase(char)"><code>Character.toUpperCase(char)</code></a> to each character
+        produces the same result
+   <li> Applying the method <a href="../../java/lang/Character.html#toLowerCase(char)"><code>Character.toLowerCase(char)</code></a> to each character
+        produces the same result
+ </ul></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>anotherString</code> - The <code>String</code> to compare this <code>String</code> against</dd>
+<dt><span class="strong">Returns:</span></dt><dd><code>true</code> if the argument is not <code>null</code> and it
+          represents an equivalent <code>String</code> ignoring case; <code>false</code> otherwise</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../java/lang/String.html#equals(java.lang.Object)"><code>equals(Object)</code></a></dd></dl>
+</li>
+</ul>
+<a name="compareTo(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>compareTo</h4>
+<pre>public&nbsp;int&nbsp;compareTo(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;anotherString)</pre>
+<div class="block">Compares two strings lexicographically.
+ The comparison is based on the Unicode value of each character in
+ the strings. The character sequence represented by this
+ <code>String</code> object is compared lexicographically to the
+ character sequence represented by the argument string. The result is
+ a negative integer if this <code>String</code> object
+ lexicographically precedes the argument string. The result is a
+ positive integer if this <code>String</code> object lexicographically
+ follows the argument string. The result is zero if the strings
+ are equal; <code>compareTo</code> returns <code>0</code> exactly when
+ the <a href="../../java/lang/String.html#equals(java.lang.Object)"><code>equals(Object)</code></a> method would return <code>true</code>.
+ <p>
+ This is the definition of lexicographic ordering. If two strings are
+ different, then either they have different characters at some index
+ that is a valid index for both strings, or their lengths are different,
+ or both. If they have different characters at one or more index
+ positions, let <i>k</i> be the smallest such index; then the string
+ whose character at position <i>k</i> has the smaller value, as
+ determined by using the &lt; operator, lexicographically precedes the
+ other string. In this case, <code>compareTo</code> returns the
+ difference of the two character values at position <code>k</code> in
+ the two string -- that is, the value:
+ <blockquote><pre>
+ this.charAt(k)-anotherString.charAt(k)
+ </pre></blockquote>
+ If there is no index position at which they differ, then the shorter
+ string lexicographically precedes the longer string. In this case,
+ <code>compareTo</code> returns the difference of the lengths of the
+ strings -- that is, the value:
+ <blockquote><pre>
+ this.length()-anotherString.length()
+ </pre></blockquote></div>
+<dl>
+<dt><strong>Specified by:</strong></dt>
+<dd><code><a href="../../java/lang/Comparable.html#compareTo(T)">compareTo</a></code>&nbsp;in interface&nbsp;<code><a href="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt;</code></dd>
+<dt><span class="strong">Parameters:</span></dt><dd><code>anotherString</code> - the <code>String</code> to be compared.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the value <code>0</code> if the argument string is equal to
+          this string; a value less than <code>0</code> if this string
+          is lexicographically less than the string argument; and a
+          value greater than <code>0</code> if this string is
+          lexicographically greater than the string argument.</dd></dl>
+</li>
+</ul>
+<a name="compareToIgnoreCase(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>compareToIgnoreCase</h4>
+<pre>public&nbsp;int&nbsp;compareToIgnoreCase(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
+<div class="block">Compares two strings lexicographically, ignoring case
+ differences. This method returns an integer whose sign is that of
+ calling <code>compareTo</code> with normalized versions of the strings
+ where case differences have been eliminated by calling
+ <code>Character.toLowerCase(Character.toUpperCase(character))</code> on
+ each character.
+ <p>
+ Note that this method does <em>not</em> take locale into account,
+ and will result in an unsatisfactory ordering for certain locales.
+ The java.text package provides <em>collators</em> to allow
+ locale-sensitive ordering.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>str</code> - the <code>String</code> to be compared.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>a negative integer, zero, or a positive integer as the
+          specified String is greater than, equal to, or less
+          than this String, ignoring case considerations.</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.2</dd>
+<dt><span class="strong">See Also:</span></dt><dd><a href="../../java/text/Collator.html#compare(java.lang.String,%20java.lang.String)"><code>Collator.compare(String, String)</code></a></dd></dl>
+</li>
+</ul>
+<a name="regionMatches(int, java.lang.String, int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>regionMatches</h4>
+<pre>public&nbsp;boolean&nbsp;regionMatches(int&nbsp;toffset,
+                    <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;other,
+                    int&nbsp;ooffset,
+                    int&nbsp;len)</pre>
+<div class="block">Tests if two string regions are equal.
+ <p>
+ A substring of this <tt>String</tt> object is compared to a substring
+ of the argument other. The result is true if these substrings
+ represent identical character sequences. The substring of this
+ <tt>String</tt> object to be compared begins at index <tt>toffset</tt>
+ and has length <tt>len</tt>. The substring of other to be compared
+ begins at index <tt>ooffset</tt> and has length <tt>len</tt>. The
+ result is <tt>false</tt> if and only if at least one of the following
+ is true:
+ <ul><li><tt>toffset</tt> is negative.
+ <li><tt>ooffset</tt> is negative.
+ <li><tt>toffset+len</tt> is greater than the length of this
+ <tt>String</tt> object.
+ <li><tt>ooffset+len</tt> is greater than the length of the other
+ argument.
+ <li>There is some nonnegative integer <i>k</i> less than <tt>len</tt>
+ such that:
+ <tt>this.charAt(toffset+<i>k</i>)&nbsp;!=&nbsp;other.charAt(ooffset+<i>k</i>)</tt>
+ </ul></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>toffset</code> - the starting offset of the subregion in this string.</dd><dd><code>other</code> - the string argument.</dd><dd><code>ooffset</code> - the starting offset of the subregion in the string
+                    argument.</dd><dd><code>len</code> - the number of characters to compare.</dd>
+<dt><span class="strong">Returns:</span></dt><dd><code>true</code> if the specified subregion of this string
+          exactly matches the specified subregion of the string argument;
+          <code>false</code> otherwise.</dd></dl>
+</li>
+</ul>
+<a name="regionMatches(boolean, int, java.lang.String, int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>regionMatches</h4>
+<pre>public&nbsp;boolean&nbsp;regionMatches(boolean&nbsp;ignoreCase,
+                    int&nbsp;toffset,
+                    <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;other,
+                    int&nbsp;ooffset,
+                    int&nbsp;len)</pre>
+<div class="block">Tests if two string regions are equal.
+ <p>
+ A substring of this <tt>String</tt> object is compared to a substring
+ of the argument <tt>other</tt>. The result is <tt>true</tt> if these
+ substrings represent character sequences that are the same, ignoring
+ case if and only if <tt>ignoreCase</tt> is true. The substring of
+ this <tt>String</tt> object to be compared begins at index
+ <tt>toffset</tt> and has length <tt>len</tt>. The substring of
+ <tt>other</tt> to be compared begins at index <tt>ooffset</tt> and
+ has length <tt>len</tt>. The result is <tt>false</tt> if and only if
+ at least one of the following is true:
+ <ul><li><tt>toffset</tt> is negative.
+ <li><tt>ooffset</tt> is negative.
+ <li><tt>toffset+len</tt> is greater than the length of this
+ <tt>String</tt> object.
+ <li><tt>ooffset+len</tt> is greater than the length of the other
+ argument.
+ <li><tt>ignoreCase</tt> is <tt>false</tt> and there is some nonnegative
+ integer <i>k</i> less than <tt>len</tt> such that:
+ <blockquote><pre>
+ this.charAt(toffset+k) != other.charAt(ooffset+k)
+ </pre></blockquote>
+ <li><tt>ignoreCase</tt> is <tt>true</tt> and there is some nonnegative
+ integer <i>k</i> less than <tt>len</tt> such that:
+ <blockquote><pre>
+ Character.toLowerCase(this.charAt(toffset+k)) !=
+     Character.toLowerCase(other.charAt(ooffset+k))
+ </pre></blockquote>
+ and:
+ <blockquote><pre>
+ Character.toUpperCase(this.charAt(toffset+k)) !=
+         Character.toUpperCase(other.charAt(ooffset+k))
+ </pre></blockquote>
+ </ul></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>ignoreCase</code> - if <code>true</code>, ignore case when comparing
+                       characters.</dd><dd><code>toffset</code> - the starting offset of the subregion in this
+                       string.</dd><dd><code>other</code> - the string argument.</dd><dd><code>ooffset</code> - the starting offset of the subregion in the string
+                       argument.</dd><dd><code>len</code> - the number of characters to compare.</dd>
+<dt><span class="strong">Returns:</span></dt><dd><code>true</code> if the specified subregion of this string
+          matches the specified subregion of the string argument;
+          <code>false</code> otherwise. Whether the matching is exact
+          or case insensitive depends on the <code>ignoreCase</code>
+          argument.</dd></dl>
+</li>
+</ul>
+<a name="startsWith(java.lang.String, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>startsWith</h4>
+<pre>public&nbsp;boolean&nbsp;startsWith(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;prefix,
+                 int&nbsp;toffset)</pre>
+<div class="block">Tests if the substring of this string beginning at the
+ specified index starts with the specified prefix.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>prefix</code> - the prefix.</dd><dd><code>toffset</code> - where to begin looking in this string.</dd>
+<dt><span class="strong">Returns:</span></dt><dd><code>true</code> if the character sequence represented by the
+          argument is a prefix of the substring of this object starting
+          at index <code>toffset</code>; <code>false</code> otherwise.
+          The result is <code>false</code> if <code>toffset</code> is
+          negative or greater than the length of this
+          <code>String</code> object; otherwise the result is the same
+          as the result of the expression
+          <pre>
+          this.substring(toffset).startsWith(prefix)
+          </pre></dd></dl>
+</li>
+</ul>
+<a name="startsWith(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>startsWith</h4>
+<pre>public&nbsp;boolean&nbsp;startsWith(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;prefix)</pre>
+<div class="block">Tests if this string starts with the specified prefix.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>prefix</code> - the prefix.</dd>
+<dt><span class="strong">Returns:</span></dt><dd><code>true</code> if the character sequence represented by the
+          argument is a prefix of the character sequence represented by
+          this string; <code>false</code> otherwise.
+          Note also that <code>true</code> will be returned if the
+          argument is an empty string or is equal to this
+          <code>String</code> object as determined by the
+          <a href="../../java/lang/String.html#equals(java.lang.Object)"><code>equals(Object)</code></a> method.</dd><dt><span class="strong">Since:</span></dt>
+  <dd>1. 0</dd></dl>
+</li>
+</ul>
+<a name="endsWith(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>endsWith</h4>
+<pre>public&nbsp;boolean&nbsp;endsWith(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;suffix)</pre>
+<div class="block">Tests if this string ends with the specified suffix.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>suffix</code> - the suffix.</dd>
+<dt><span class="strong">Returns:</span></dt><dd><code>true</code> if the character sequence represented by the
+          argument is a suffix of the character sequence represented by
+          this object; <code>false</code> otherwise. Note that the
+          result will be <code>true</code> if the argument is the
+          empty string or is equal to this <code>String</code> object
+          as determined by the <a href="../../java/lang/String.html#equals(java.lang.Object)"><code>equals(Object)</code></a> method.</dd></dl>
+</li>
+</ul>
+<a name="hashCode()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>hashCode</h4>
+<pre>public&nbsp;int&nbsp;hashCode()</pre>
+<div class="block">Returns a hash code for this string. The hash code for a
+ <code>String</code> object is computed as
+ <blockquote><pre>
+ s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
+ </pre></blockquote>
+ using <code>int</code> arithmetic, where <code>s[i]</code> is the
+ <i>i</i>th character of the string, <code>n</code> is the length of
+ the string, and <code>^</code> indicates exponentiation.
+ (The hash value of the empty string is zero.)</div>
+<dl>
+<dt><strong>Overrides:</strong></dt>
+<dd><code><a href="../../java/lang/Object.html#hashCode()">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="../../java/lang/Object.html" title="class in java.lang">Object</a></code></dd>
+<dt><span class="strong">Returns:</span></dt><dd>a hash code value for this object.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../java/lang/Object.html#equals(java.lang.Object)"><code>Object.equals(java.lang.Object)</code></a>, 
+<a href="../../java/lang/System.html#identityHashCode(java.lang.Object)"><code>System.identityHashCode(java.lang.Object)</code></a></dd></dl>
+</li>
+</ul>
+<a name="indexOf(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>indexOf</h4>
+<pre>public&nbsp;int&nbsp;indexOf(int&nbsp;ch)</pre>
+<div class="block">Returns the index within this string of the first occurrence of
+ the specified character. If a character with value
+ <code>ch</code> occurs in the character sequence represented by
+ this <code>String</code> object, then the index (in Unicode
+ code units) of the first such occurrence is returned. For
+ values of <code>ch</code> in the range from 0 to 0xFFFF
+ (inclusive), this is the smallest value <i>k</i> such that:
+ <blockquote><pre>
+ this.charAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ smallest value <i>k</i> such that:
+ <blockquote><pre>
+ this.codePointAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true. In either case, if no such character occurs in this
+ string, then <code>-1</code> is returned.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>ch</code> - a character (Unicode code point).</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the index of the first occurrence of the character in the
+          character sequence represented by this object, or
+          <code>-1</code> if the character does not occur.</dd></dl>
+</li>
+</ul>
+<a name="indexOf(int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>indexOf</h4>
+<pre>public&nbsp;int&nbsp;indexOf(int&nbsp;ch,
+          int&nbsp;fromIndex)</pre>
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified character, starting the search at the specified index.
+ <p>
+ If a character with value <code>ch</code> occurs in the
+ character sequence represented by this <code>String</code>
+ object at an index no smaller than <code>fromIndex</code>, then
+ the index of the first such occurrence is returned. For values
+ of <code>ch</code> in the range from 0 to 0xFFFF (inclusive),
+ this is the smallest value <i>k</i> such that:
+ <blockquote><pre>
+ (this.charAt(<i>k</i>) == ch) && (<i>k</i> &gt;= fromIndex)
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ smallest value <i>k</i> such that:
+ <blockquote><pre>
+ (this.codePointAt(<i>k</i>) == ch) && (<i>k</i> &gt;= fromIndex)
+ </pre></blockquote>
+ is true. In either case, if no such character occurs in this
+ string at or after position <code>fromIndex</code>, then
+ <code>-1</code> is returned.
+
+ <p>
+ There is no restriction on the value of <code>fromIndex</code>. If it
+ is negative, it has the same effect as if it were zero: this entire
+ string may be searched. If it is greater than the length of this
+ string, it has the same effect as if it were equal to the length of
+ this string: <code>-1</code> is returned.
+
+ <p>All indices are specified in <code>char</code> values
+ (Unicode code units).</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>ch</code> - a character (Unicode code point).</dd><dd><code>fromIndex</code> - the index to start the search from.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the index of the first occurrence of the character in the
+          character sequence represented by this object that is greater
+          than or equal to <code>fromIndex</code>, or <code>-1</code>
+          if the character does not occur.</dd></dl>
+</li>
+</ul>
+<a name="lastIndexOf(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lastIndexOf</h4>
+<pre>public&nbsp;int&nbsp;lastIndexOf(int&nbsp;ch)</pre>
+<div class="block">Returns the index within this string of the last occurrence of
+ the specified character. For values of <code>ch</code> in the
+ range from 0 to 0xFFFF (inclusive), the index (in Unicode code
+ units) returned is the largest value <i>k</i> such that:
+ <blockquote><pre>
+ this.charAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ largest value <i>k</i> such that:
+ <blockquote><pre>
+ this.codePointAt(<i>k</i>) == ch
+ </pre></blockquote>
+ is true.  In either case, if no such character occurs in this
+ string, then <code>-1</code> is returned.  The
+ <code>String</code> is searched backwards starting at the last
+ character.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>ch</code> - a character (Unicode code point).</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the index of the last occurrence of the character in the
+          character sequence represented by this object, or
+          <code>-1</code> if the character does not occur.</dd></dl>
+</li>
+</ul>
+<a name="lastIndexOf(int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lastIndexOf</h4>
+<pre>public&nbsp;int&nbsp;lastIndexOf(int&nbsp;ch,
+              int&nbsp;fromIndex)</pre>
+<div class="block">Returns the index within this string of the last occurrence of
+ the specified character, searching backward starting at the
+ specified index. For values of <code>ch</code> in the range
+ from 0 to 0xFFFF (inclusive), the index returned is the largest
+ value <i>k</i> such that:
+ <blockquote><pre>
+ (this.charAt(<i>k</i>) == ch) && (<i>k</i> &lt;= fromIndex)
+ </pre></blockquote>
+ is true. For other values of <code>ch</code>, it is the
+ largest value <i>k</i> such that:
+ <blockquote><pre>
+ (this.codePointAt(<i>k</i>) == ch) && (<i>k</i> &lt;= fromIndex)
+ </pre></blockquote>
+ is true. In either case, if no such character occurs in this
+ string at or before position <code>fromIndex</code>, then
+ <code>-1</code> is returned.
+
+ <p>All indices are specified in <code>char</code> values
+ (Unicode code units).</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>ch</code> - a character (Unicode code point).</dd><dd><code>fromIndex</code> - the index to start the search from. There is no
+          restriction on the value of <code>fromIndex</code>. If it is
+          greater than or equal to the length of this string, it has
+          the same effect as if it were equal to one less than the
+          length of this string: this entire string may be searched.
+          If it is negative, it has the same effect as if it were -1:
+          -1 is returned.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the index of the last occurrence of the character in the
+          character sequence represented by this object that is less
+          than or equal to <code>fromIndex</code>, or <code>-1</code>
+          if the character does not occur before that point.</dd></dl>
+</li>
+</ul>
+<a name="indexOf(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>indexOf</h4>
+<pre>public&nbsp;int&nbsp;indexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified substring.
+
+ <p>The returned index is the smallest value <i>k</i> for which:
+ <blockquote><pre>
+ this.startsWith(str, <i>k</i>)
+ </pre></blockquote>
+ If no such value of <i>k</i> exists, then <code>-1</code> is returned.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>str</code> - the substring to search for.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the index of the first occurrence of the specified substring,
+          or <code>-1</code> if there is no such occurrence.</dd></dl>
+</li>
+</ul>
+<a name="indexOf(java.lang.String, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>indexOf</h4>
+<pre>public&nbsp;int&nbsp;indexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str,
+          int&nbsp;fromIndex)</pre>
+<div class="block">Returns the index within this string of the first occurrence of the
+ specified substring, starting at the specified index.
+
+ <p>The returned index is the smallest value <i>k</i> for which:
+ <blockquote><pre>
+ <i>k</i> &gt;= fromIndex && this.startsWith(str, <i>k</i>)
+ </pre></blockquote>
+ If no such value of <i>k</i> exists, then <code>-1</code> is returned.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>str</code> - the substring to search for.</dd><dd><code>fromIndex</code> - the index from which to start the search.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the index of the first occurrence of the specified substring,
+          starting at the specified index,
+          or <code>-1</code> if there is no such occurrence.</dd></dl>
+</li>
+</ul>
+<a name="lastIndexOf(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lastIndexOf</h4>
+<pre>public&nbsp;int&nbsp;lastIndexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
+<div class="block">Returns the index within this string of the last occurrence of the
+ specified substring.  The last occurrence of the empty string ""
+ is considered to occur at the index value <code>this.length()</code>.
+
+ <p>The returned index is the largest value <i>k</i> for which:
+ <blockquote><pre>
+ this.startsWith(str, <i>k</i>)
+ </pre></blockquote>
+ If no such value of <i>k</i> exists, then <code>-1</code> is returned.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>str</code> - the substring to search for.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the index of the last occurrence of the specified substring,
+          or <code>-1</code> if there is no such occurrence.</dd></dl>
+</li>
+</ul>
+<a name="lastIndexOf(java.lang.String, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lastIndexOf</h4>
+<pre>public&nbsp;int&nbsp;lastIndexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str,
+              int&nbsp;fromIndex)</pre>
+<div class="block">Returns the index within this string of the last occurrence of the
+ specified substring, searching backward starting at the specified index.
+
+ <p>The returned index is the largest value <i>k</i> for which:
+ <blockquote><pre>
+ <i>k</i> &lt;= fromIndex && this.startsWith(str, <i>k</i>)
+ </pre></blockquote>
+ If no such value of <i>k</i> exists, then <code>-1</code> is returned.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>str</code> - the substring to search for.</dd><dd><code>fromIndex</code> - the index to start the search from.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the index of the last occurrence of the specified substring,
+          searching backward from the specified index,
+          or <code>-1</code> if there is no such occurrence.</dd></dl>
+</li>
+</ul>
+<a name="substring(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>substring</h4>
+<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;substring(int&nbsp;beginIndex)</pre>
+<div class="block">Returns a new string that is a substring of this string. The
+ substring begins with the character at the specified index and
+ extends to the end of this string. <p>
+ Examples:
+ <blockquote><pre>
+ "unhappy".substring(2) returns "happy"
+ "Harbison".substring(3) returns "bison"
+ "emptiness".substring(9) returns "" (an empty string)
+ </pre></blockquote></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>beginIndex</code> - the beginning index, inclusive.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the specified substring.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if
+             <code>beginIndex</code> is negative or larger than the
+             length of this <code>String</code> object.</dd></dl>
+</li>
+</ul>
+<a name="substring(int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>substring</h4>
+<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;substring(int&nbsp;beginIndex,
+               int&nbsp;endIndex)</pre>
+<div class="block">Returns a new string that is a substring of this string. The
+ substring begins at the specified <code>beginIndex</code> and
+ extends to the character at index <code>endIndex - 1</code>.
+ Thus the length of the substring is <code>endIndex-beginIndex</code>.
+ <p>
+ Examples:
+ <blockquote><pre>
+ "hamburger".substring(4, 8) returns "urge"
+ "smiles".substring(1, 5) returns "mile"
+ </pre></blockquote></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>beginIndex</code> - the beginning index, inclusive.</dd><dd><code>endIndex</code> - the ending index, exclusive.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the specified substring.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the
+             <code>beginIndex</code> is negative, or
+             <code>endIndex</code> is larger than the length of
+             this <code>String</code> object, or
+             <code>beginIndex</code> is larger than
+             <code>endIndex</code>.</dd></dl>
+</li>
+</ul>
+<a name="subSequence(int, int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>subSequence</h4>
+<pre>public&nbsp;<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;subSequence(int&nbsp;beginIndex,
+                       int&nbsp;endIndex)</pre>
+<div class="block">Returns a new character sequence that is a subsequence of this sequence.
+
+ <p> An invocation of this method of the form
+
+ <blockquote><pre>
+ str.subSequence(begin,&nbsp;end)</pre></blockquote>
+
+ behaves in exactly the same way as the invocation
+
+ <blockquote><pre>
+ str.substring(begin,&nbsp;end)</pre></blockquote>
+
+ This method is defined so that the <tt>String</tt> class can implement
+ the <a href="../../java/lang/CharSequence.html" title="interface in java.lang"><code>CharSequence</code></a> interface. </p></div>
+<dl>
+<dt><strong>Specified by:</strong></dt>
+<dd><code><a href="../../java/lang/CharSequence.html#subSequence(int,%20int)">subSequence</a></code>&nbsp;in interface&nbsp;<code><a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
+<dt><span class="strong">Parameters:</span></dt><dd><code>beginIndex</code> - the begin index, inclusive.</dd><dd><code>endIndex</code> - the end index, exclusive.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>the specified subsequence.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if <tt>beginIndex</tt> or <tt>endIndex</tt> are negative,
+          if <tt>endIndex</tt> is greater than <tt>length()</tt>,
+          or if <tt>beginIndex</tt> is greater than <tt>startIndex</tt></dd><dt><span class="strong">Since:</span></dt>
+  <dd>1.4</dd></dl>
+</li>
+</ul>
+<a name="concat(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>concat</h4>
+<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;concat(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
+<div class="block">Concatenates the specified string to the end of this string.
+ <p>
+ If the length of the argument string is <code>0</code>, then this
+ <code>String</code> object is returned. Otherwise, a new
+ <code>String</code> object is created, representing a character
+ sequence that is the concatenation of the character sequence
+ represented by this <code>String</code> object and the character
+ sequence represented by the argument string.<p>
+ Examples:
+ <blockquote><pre>
+ "cares".concat("s") returns "caress"
+ "to".concat("get").concat("her") returns "together"
+ </pre></blockquote></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>str</code> - the <code>String</code> that is concatenated to the end
+                of this <code>String</code>.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>a string that represents the concatenation of this object's
+          characters followed by the string argument's characters.</dd></dl>
+</li>
+</ul>
+<a name="replace(char, char)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>replace</h4>
+<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replace(char&nbsp;oldChar,
+             char&nbsp;newChar)</pre>
+<div class="block">Returns a new string resulting from replacing all occurrences of
+ <code>oldChar</code> in this string with <code>newChar</code>.
+ <p>
+ If the character <code>oldChar</code> does not occur in the
+ character sequence represented by this <code>String</code> object,
+ then a reference to this <code>String</code> object is returned.
+ Otherwise, a new <code>String</code> object is created that
+ represents a character sequence identical to the character sequence
+ represented by this <code>String</code> object, except that every
+ occurrence of <code>oldChar</code> is replaced by an occurrence
+ of <code>newChar</code>.
+ <p>
+ Examples:
+ <blockquote><pre>
+ "mesquite in your cellar".replace('e', 'o')
+         returns "mosquito in your collar"
+ "the war of baronets".replace('r', 'y')
+         returns "the way of bayonets"
+ "sparring with a purple porpoise".replace('p', 't')
+         returns "starring with a turtle tortoise"
+ "JonL".replace('q', 'x') returns "JonL" (no change)
+ </pre></blockquote></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>oldChar</code> - the old character.</dd><dd><code>newChar</code> - the new character.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>a string derived from this string by replacing every
+          occurrence of <code>oldChar</code> with <code>newChar</code>.</dd></dl>
+</li>
+</ul>
+<a name="matches(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>matches</h4>
+<pre>public&nbsp;boolean&nbsp;matches(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex)</pre>
+<div class="block">Tells whether or not this string matches the given <a
+ href="../util/regex/Pattern.html#sum">regular expression</a>.
+
+ <p> An invocation of this method of the form
+ <i>str</i><tt>.matches(</tt><i>regex</i><tt>)</tt> yields exactly the
+ same result as the expression
+
+ <blockquote><tt> <a href="../../java/util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a>.<a href="../../java/util/regex/Pattern.html#matches(java.lang.String,%20java.lang.CharSequence)"><code>matches</code></a>(</tt><i>regex</i><tt>,</tt> <i>str</i><tt>)</tt></blockquote></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>regex</code> - the regular expression to which this string is to be matched</dd>
+<dt><span class="strong">Returns:</span></dt><dd><tt>true</tt> if, and only if, this string matches the
+          given regular expression</dd>
... 4418 lines suppressed ...