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 & 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 & 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 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: </li>
+<li>Nested | </li>
+<li><a href="#field.summary">Field</a> | </li>
+<li><a href="#constructor.summary">Constr</a> | </li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail: </li>
+<li><a href="#field.detail">Field</a> | </li>
+<li><a href="#constructor.detail">Constr</a> | </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"> </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> <a href="../../module-summary.html">java.base</a></div>
+<div class="subTitle"><span class="packageLabelInType">Package</span> <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><<a href="String.html" title="class in java.lang">String</a>></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><<a href="String.html" title="class in java.lang">String</a>>, <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 ( + ), and for conversion of
+ other objects to strings. For additional information on string
+ concatenation and conversion, see <i>The Java™ 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™ 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™ 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"> </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><<a href="String.html" title="class in java.lang">String</a>></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"> </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>​(byte[] 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>​(byte[] ascii,
+ int 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>​(byte[] bytes,
+ int offset,
+ int 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>​(byte[] ascii,
+ int hibyte,
+ int offset,
+ int 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>​(byte[] bytes,
+ int offset,
+ int length,
+ <a href="String.html" title="class in java.lang">String</a> 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>​(byte[] bytes,
+ int offset,
+ int length,
+ <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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>​(byte[] bytes,
+ <a href="String.html" title="class in java.lang">String</a> 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>​(byte[] bytes,
+ <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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>​(char[] 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>​(char[] value,
+ int offset,
+ int 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>​(int[] codePoints,
+ int offset,
+ int 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a> 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>​(<a href="StringBuilder.html" title="class in java.lang">StringBuilder</a> 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"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </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>​(int 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>​(int 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>​(int 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>​(int beginIndex,
+ int 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a> 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>​(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a> 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>​(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a> 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>​(char[] 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>​(char[] data,
+ int offset,
+ int 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="Object.html" title="class in java.lang">Object</a> 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="String.html" title="class in java.lang">String</a> format,
+ <a href="Object.html" title="class in java.lang">Object</a>... 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>​(<a href="../util/Locale.html" title="class in java.util">Locale</a> l,
+ <a href="String.html" title="class in java.lang">String</a> format,
+ <a href="Object.html" title="class in java.lang">Object</a>... 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>​(int srcBegin,
+ int srcEnd,
+ byte[] dst,
+ int 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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>​(int srcBegin,
+ int srcEnd,
+ char[] dst,
+ int 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>​(int 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>​(int ch,
+ int 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="String.html" title="class in java.lang">String</a> str,
+ int 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>​(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a> delimiter,
+ <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>... 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>​(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a> delimiter,
+ <a href="Iterable.html" title="interface in java.lang">Iterable</a><? extends <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>> 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>​(int 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>​(int ch,
+ int 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="String.html" title="class in java.lang">String</a> str,
+ int 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><<a href="String.html" title="class in java.lang">String</a>></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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(int index,
+ int 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>​(boolean ignoreCase,
+ int toffset,
+ <a href="String.html" title="class in java.lang">String</a> other,
+ int ooffset,
+ int 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>​(int toffset,
+ <a href="String.html" title="class in java.lang">String</a> other,
+ int ooffset,
+ int 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>​(int 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>​(char oldChar,
+ char 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>​(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a> target,
+ <a href="CharSequence.html" title="interface in java.lang">CharSequence</a> 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>​(<a href="String.html" title="class in java.lang">String</a> regex,
+ <a href="String.html" title="class in java.lang">String</a> 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>​(<a href="String.html" title="class in java.lang">String</a> regex,
+ <a href="String.html" title="class in java.lang">String</a> 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="String.html" title="class in java.lang">String</a> regex,
+ int 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>​(<a href="String.html" title="class in java.lang">String</a> 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>​(<a href="String.html" title="class in java.lang">String</a> prefix,
+ int 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>​(int beginIndex,
+ int 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>​(int 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>​(int beginIndex,
+ int 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>​(<a href="../util/Locale.html" title="class in java.util">Locale</a> 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>​(<a href="../util/Locale.html" title="class in java.util">Locale</a> 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>​(boolean 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>​(char 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>​(char[] 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>​(char[] data,
+ int offset,
+ int 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>​(double 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>​(float 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>​(int 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>​(long 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>​(<a href="Object.html" title="class in java.lang">Object</a> 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 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 <a href="../util/Comparator.html" title="interface in java.util">Comparator</a><<a href="String.html" title="class in java.lang">String</a>> 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="<init>()">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public 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="<init>(java.lang.String)">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(<a href="String.html" title="class in java.lang">String</a> 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="<init>(char[])">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(char[] 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="<init>(char[],int,int)">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(char[] value,
+ int offset,
+ int 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="<init>(int[],int,int)">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(int[] codePoints,
+ int offset,
+ int 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="<init>(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 String​(byte[] ascii,
+ int hibyte,
+ int offset,
+ int 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 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="<init>(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 String​(byte[] ascii,
+ int 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 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 & 0xff) << 8)
+ | (<b><i>b</i></b> & 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="<init>(byte[],int,int,java.lang.String)">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(byte[] bytes,
+ int offset,
+ int length,
+ <a href="String.html" title="class in java.lang">String</a> 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="<init>(byte[],int,int,java.nio.charset.Charset)">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(byte[] bytes,
+ int offset,
+ int length,
+ <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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="<init>(byte[],java.lang.String)">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(byte[] bytes,
+ <a href="String.html" title="class in java.lang">String</a> 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="<init>(byte[],java.nio.charset.Charset)">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(byte[] bytes,
+ <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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="<init>(byte[],int,int)">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(byte[] bytes,
+ int offset,
+ int 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="<init>(byte[])">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(byte[] 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="<init>(java.lang.StringBuffer)">
+<!-- -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a> 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="<init>(java.lang.StringBuilder)">
+<!-- -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>String</h4>
+<pre>public String​(<a href="StringBuilder.html" title="class in java.lang">StringBuilder</a> 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 int 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> in interface <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 boolean 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 char charAt​(int 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> in interface <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 int codePointAt​(int 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 int codePointBefore​(int 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 int codePointCount​(int beginIndex,
+ int 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 int offsetByCodePoints​(int index,
+ int 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 void getChars​(int srcBegin,
+ int srcEnd,
+ char[] dst,
+ int 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 void getBytes​(int srcBegin,
+ int srcEnd,
+ byte[] dst,
+ int 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 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 byte[] getBytes​(<a href="String.html" title="class in java.lang">String</a> 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 byte[] getBytes​(<a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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 byte[] 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 boolean equals​(<a href="Object.html" title="class in java.lang">Object</a> 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> in class <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 boolean contentEquals​(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a> 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 boolean contentEquals​(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a> 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 boolean equalsIgnoreCase​(<a href="String.html" title="class in java.lang">String</a> 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 int compareTo​(<a href="String.html" title="class in java.lang">String</a> 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><</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> in interface <code><a href="Comparable.html" title="interface in java.lang">Comparable</a><<a href="String.html" title="class in java.lang">String</a>></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 int compareToIgnoreCase​(<a href="String.html" title="class in java.lang">String</a> 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 boolean regionMatches​(int toffset,
+ <a href="String.html" title="class in java.lang">String</a> other,
+ int ooffset,
+ int 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 boolean regionMatches​(boolean ignoreCase,
+ int toffset,
+ <a href="String.html" title="class in java.lang">String</a> other,
+ int ooffset,
+ int 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 boolean startsWith​(<a href="String.html" title="class in java.lang">String</a> prefix,
+ int 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 boolean startsWith​(<a href="String.html" title="class in java.lang">String</a> 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 boolean endsWith​(<a href="String.html" title="class in java.lang">String</a> 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 int 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> in class <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 int indexOf​(int 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 int indexOf​(int ch,
+ int 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>&&</code> (<i>k</i> >= 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>&&</code> (<i>k</i> >= 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 int lastIndexOf​(int 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 int lastIndexOf​(int ch,
+ int 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>&&</code> (<i>k</i> <= 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>&&</code> (<i>k</i> <= 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 int indexOf​(<a href="String.html" title="class in java.lang">String</a> 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 int indexOf​(<a href="String.html" title="class in java.lang">String</a> str,
+ int 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 >= Math.min(fromIndex, this.length()) &&
+ 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 int lastIndexOf​(<a href="String.html" title="class in java.lang">String</a> 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 int lastIndexOf​(<a href="String.html" title="class in java.lang">String</a> str,
+ int 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 <= Math.min(fromIndex, this.length()) &&
+ 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 <a href="String.html" title="class in java.lang">String</a> substring​(int 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 <a href="String.html" title="class in java.lang">String</a> substring​(int beginIndex,
+ int 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 <a href="CharSequence.html" title="interface in java.lang">CharSequence</a> subSequence​(int beginIndex,
+ int 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, end)</pre></blockquote>
+
+ behaves in exactly the same way as the invocation
+
+ <blockquote><pre>
+ str.substring(begin, 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> in interface <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 <a href="String.html" title="class in java.lang">String</a> concat​(<a href="String.html" title="class in java.lang">String</a> 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 <a href="String.html" title="class in java.lang">String</a> replace​(char oldChar,
+ char 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 boolean matches​(<a href="String.html" title="class in java.lang">String</a> 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 boolean contains​(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a> 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 <a href="String.html" title="class in java.lang">String</a> replaceFirst​(<a href="String.html" title="class in java.lang">String</a> regex,
+ <a href="String.html" title="class in java.lang">String</a> 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 <a href="String.html" title="class in java.lang">String</a> replaceAll​(<a href="String.html" title="class in java.lang">String</a> regex,
+ <a href="String.html" title="class in java.lang">String</a> 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 <a href="String.html" title="class in java.lang">String</a> replace​(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a> target,
+ <a href="CharSequence.html" title="interface in java.lang">CharSequence</a> 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 <a href="String.html" title="class in java.lang">String</a>[] split​(<a href="String.html" title="class in java.lang">String</a> regex,
+ int 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> - 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> <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>, <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 <a href="String.html" title="class in java.lang">String</a>[] split​(<a href="String.html" title="class in java.lang">String</a> 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 <a href="String.html" title="class in java.lang">String</a> join​(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a> delimiter,
+ <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>... 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 <a href="String.html" title="class in java.lang">String</a> join​(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a> delimiter,
+ <a href="Iterable.html" title="interface in java.lang">Iterable</a><? extends <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>> 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<String> strings = List.of("Java", "is", "cool");
+ String message = String.join(" ", strings);
+ //message returned is: "Java is cool"
+
+ Set<String> strings =
+ new LinkedHashSet<>(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 <a href="String.html" title="class in java.lang">String</a> toLowerCase​(<a href="../util/Locale.html" title="class in java.util">Locale</a> 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">\u0130</th>
+ <td>\u0069</td>
+ <td>capital letter I with dot above -> small letter i</td>
+ </tr>
+ <tr>
+ <td>tr (Turkish)</td>
+ <th scope="row" style="font-weight:normal; text-align:left">\u0049</th>
+ <td>\u0131</td>
+ <td>capital letter I -> 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">
+ ΙΧΘΥΣ</th>
+ <td>ιχθυσ</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 <a href="String.html" title="class in java.lang">String</a> 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 <a href="String.html" title="class in java.lang">String</a> toUpperCase​(<a href="../util/Locale.html" title="class in java.util">Locale</a> 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">\u0069</th>
+ <td>\u0130</td>
+ <td>small letter i -> capital letter I with dot above</td>
+ </tr>
+ <tr>
+ <td>tr (Turkish)</td>
+ <th scope="row" style="font-weight:normal; text-align:left">\u0131</th>
+ <td>\u0049</td>
+ <td>small letter dotless i -> capital letter I</td>
+ </tr>
+ <tr>
+ <td>(all)</td>
+ <th scope="row" style="font-weight:normal; text-align:left">\u00df</th>
+ <td>\u0053 \u0053</td>
+ <td>small letter sharp s -> two letters: SS</td>
+ </tr>
+ <tr>
+ <td>(all)</td>
+ <th scope="row" style="font-weight:normal; text-align:left">Fahrvergnügen</th>
+ <td>FAHRVERGNÜ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 <a href="String.html" title="class in java.lang">String</a> 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 <a href="String.html" title="class in java.lang">String</a> 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 <a href="String.html" title="class in java.lang">String</a> 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 <a href="String.html" title="class in java.lang">String</a> 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 <a href="String.html" title="class in java.lang">String</a> 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 boolean 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 <a href="../util/stream/Stream.html" title="interface in java.util.stream">Stream</a><<a href="String.html" title="class in java.lang">String</a>> 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 <a href="String.html" title="class in java.lang">String</a> 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> in interface <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> in class <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 <a href="../util/stream/IntStream.html" title="interface in java.util.stream">IntStream</a> 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> in interface <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 <a href="../util/stream/IntStream.html" title="interface in java.util.stream">IntStream</a> 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> in interface <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 char[] 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 <a href="String.html" title="class in java.lang">String</a> format​(<a href="String.html" title="class in java.lang">String</a> format,
+ <a href="Object.html" title="class in java.lang">Object</a>... 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™ 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 <a href="String.html" title="class in java.lang">String</a> format​(<a href="../util/Locale.html" title="class in java.util">Locale</a> l,
+ <a href="String.html" title="class in java.lang">String</a> format,
+ <a href="Object.html" title="class in java.lang">Object</a>... 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™ 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 <a href="String.html" title="class in java.lang">String</a> valueOf​(<a href="Object.html" title="class in java.lang">Object</a> 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 <a href="String.html" title="class in java.lang">String</a> valueOf​(char[] 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 <a href="String.html" title="class in java.lang">String</a> valueOf​(char[] data,
+ int offset,
+ int 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 <a href="String.html" title="class in java.lang">String</a> copyValueOf​(char[] data,
+ int offset,
+ int 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 <a href="String.html" title="class in java.lang">String</a> copyValueOf​(char[] 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 <a href="String.html" title="class in java.lang">String</a> valueOf​(boolean 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 <a href="String.html" title="class in java.lang">String</a> valueOf​(char 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 <a href="String.html" title="class in java.lang">String</a> valueOf​(int 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 <a href="String.html" title="class in java.lang">String</a> valueOf​(long 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 <a href="String.html" title="class in java.lang">String</a> valueOf​(float 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 <a href="String.html" title="class in java.lang">String</a> valueOf​(double 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 <a href="String.html" title="class in java.lang">String</a> 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™ 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™ 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 <a href="String.html" title="class in java.lang">String</a> repeat​(int 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 & 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 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: </li>
+<li>Nested | </li>
+<li><a href="#field.summary">Field</a> | </li>
+<li><a href="#constructor.summary">Constr</a> | </li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail: </li>
+<li><a href="#field.detail">Field</a> | </li>
+<li><a href="#constructor.detail">Constr</a> | </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&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> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/String.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+<b>Java™ Platform<br>Standard Ed. 6</b></EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../java/lang/StrictMath.html" title="class in java.lang"><B>PREV CLASS</B></A>
+ <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>
+ <A HREF="String.html" target="_top"><B>NO FRAMES</B></A>
+ <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: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <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><<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>></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><<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>>, <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 ( + ), 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 <A HREF="../../java/util/Comparator.html" title="interface in java.util">Comparator</A><<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#CASE_INSENSITIVE_ORDER">CASE_INSENSITIVE_ORDER</A></B></CODE>
+
+<BR>
+ A Comparator that orders <code>String</code> objects as by
+ <code>compareToIgnoreCase</code>.</TD>
+</TR>
+</TABLE>
+
+<!-- ======== 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>
+ 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[] bytes)</CODE>
+
+<BR>
+ 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[] bytes,
+ <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A> charset)</CODE>
+
+<BR>
+ 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[] ascii,
+ int hibyte)</CODE>
+
+<BR>
+ <B>Deprecated.</B> <I>This method does not properly convert bytes into
+ characters. As of JDK 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[] bytes,
+ int offset,
+ int length)</CODE>
+
+<BR>
+ 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[] bytes,
+ int offset,
+ int length,
+ <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A> charset)</CODE>
+
+<BR>
+ 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[] ascii,
+ int hibyte,
+ int offset,
+ int count)</CODE>
+
+<BR>
+ <B>Deprecated.</B> <I>This method does not properly convert bytes into characters.
+ As of JDK 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[] bytes,
+ int offset,
+ int length,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> charsetName)</CODE>
+
+<BR>
+ 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[] bytes,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> charsetName)</CODE>
+
+<BR>
+ 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[] value)</CODE>
+
+<BR>
+ 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[] value,
+ int offset,
+ int count)</CODE>
+
+<BR>
+ 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[] codePoints,
+ int offset,
+ int count)</CODE>
+
+<BR>
+ 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> original)</CODE>
+
+<BR>
+ 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> buffer)</CODE>
+
+<BR>
+ 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> builder)</CODE>
+
+<BR>
+ Allocates a new string that contains the sequence of characters
+ currently contained in the string builder argument.</TD>
+</TR>
+</TABLE>
+
+<!-- ========== 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> char</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#charAt(int)">charAt</A></B>(int index)</CODE>
+
+<BR>
+ 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> int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#codePointAt(int)">codePointAt</A></B>(int index)</CODE>
+
+<BR>
+ 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> int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#codePointBefore(int)">codePointBefore</A></B>(int index)</CODE>
+
+<BR>
+ 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> int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#codePointCount(int, int)">codePointCount</A></B>(int beginIndex,
+ int endIndex)</CODE>
+
+<BR>
+ 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> 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> anotherString)</CODE>
+
+<BR>
+ Compares two strings lexicographically.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> 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> str)</CODE>
+
+<BR>
+ 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> <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> str)</CODE>
+
+<BR>
+ 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> 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> s)</CODE>
+
+<BR>
+ 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> 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> cs)</CODE>
+
+<BR>
+ 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> 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> sb)</CODE>
+
+<BR>
+ 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 <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[] data)</CODE>
+
+<BR>
+ 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 <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[] data,
+ int offset,
+ int count)</CODE>
+
+<BR>
+ 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> 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> suffix)</CODE>
+
+<BR>
+ 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> 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> anObject)</CODE>
+
+<BR>
+ 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> 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> anotherString)</CODE>
+
+<BR>
+ 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 <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> l,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> format,
+ <A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>... args)</CODE>
+
+<BR>
+ 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 <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> format,
+ <A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>... args)</CODE>
+
+<BR>
+ 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> byte[]</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#getBytes()">getBytes</A></B>()</CODE>
+
+<BR>
+ 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> 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> charset)</CODE>
+
+<BR>
+ 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> void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#getBytes(int, int, byte[], int)">getBytes</A></B>(int srcBegin,
+ int srcEnd,
+ byte[] dst,
+ int dstBegin)</CODE>
+
+<BR>
+ <B>Deprecated.</B> <I>This method does not properly convert characters into
+ bytes. As of JDK 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> 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> charsetName)</CODE>
+
+<BR>
+ 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> void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#getChars(int, int, char[], int)">getChars</A></B>(int srcBegin,
+ int srcEnd,
+ char[] dst,
+ int dstBegin)</CODE>
+
+<BR>
+ 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> int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#hashCode()">hashCode</A></B>()</CODE>
+
+<BR>
+ 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> int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#indexOf(int)">indexOf</A></B>(int ch)</CODE>
+
+<BR>
+ 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> int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#indexOf(int, int)">indexOf</A></B>(int ch,
+ int fromIndex)</CODE>
+
+<BR>
+ 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> 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> str)</CODE>
+
+<BR>
+ 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> 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> str,
+ int fromIndex)</CODE>
+
+<BR>
+ 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> <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>
+ 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> boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#isEmpty()">isEmpty</A></B>()</CODE>
+
+<BR>
+ 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> int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#lastIndexOf(int)">lastIndexOf</A></B>(int ch)</CODE>
+
+<BR>
+ 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> int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#lastIndexOf(int, int)">lastIndexOf</A></B>(int ch,
+ int fromIndex)</CODE>
+
+<BR>
+ 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> 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> str)</CODE>
+
+<BR>
+ 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> 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> str,
+ int fromIndex)</CODE>
+
+<BR>
+ 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> int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#length()">length</A></B>()</CODE>
+
+<BR>
+ Returns the length of this string.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE> 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> regex)</CODE>
+
+<BR>
+ 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> int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#offsetByCodePoints(int, int)">offsetByCodePoints</A></B>(int index,
+ int codePointOffset)</CODE>
+
+<BR>
+ 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> 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 ignoreCase,
+ int toffset,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> other,
+ int ooffset,
+ int len)</CODE>
+
+<BR>
+ 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> boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#regionMatches(int, java.lang.String, int, int)">regionMatches</A></B>(int toffset,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> other,
+ int ooffset,
+ int len)</CODE>
+
+<BR>
+ 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> <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 oldChar,
+ char newChar)</CODE>
+
+<BR>
+ 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> <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> target,
+ <A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A> replacement)</CODE>
+
+<BR>
+ 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> <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> regex,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> replacement)</CODE>
+
+<BR>
+ 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> <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> regex,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> replacement)</CODE>
+
+<BR>
+ 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> <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> regex)</CODE>
+
+<BR>
+ 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> <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> regex,
+ int limit)</CODE>
+
+<BR>
+ 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> 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> prefix)</CODE>
+
+<BR>
+ 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> 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> prefix,
+ int toffset)</CODE>
+
+<BR>
+ 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> <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 beginIndex,
+ int endIndex)</CODE>
+
+<BR>
+ 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> <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 beginIndex)</CODE>
+
+<BR>
+ 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> <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 beginIndex,
+ int endIndex)</CODE>
+
+<BR>
+ 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> char[]</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../java/lang/String.html#toCharArray()">toCharArray</A></B>()</CODE>
+
+<BR>
+ 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> <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>
+ 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> <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> locale)</CODE>
+
+<BR>
+ 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> <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>
+ 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> <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>
+ 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> <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> locale)</CODE>
+
+<BR>
+ 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> <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>
+ 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 <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 b)</CODE>
+
+<BR>
+ 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 <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 c)</CODE>
+
+<BR>
+ 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 <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[] data)</CODE>
+
+<BR>
+ 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 <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[] data,
+ int offset,
+ int count)</CODE>
+
+<BR>
+ 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 <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 d)</CODE>
+
+<BR>
+ 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 <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 f)</CODE>
+
+<BR>
+ 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 <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 i)</CODE>
+
+<BR>
+ 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 <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 l)</CODE>
+
+<BR>
+ 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 <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> obj)</CODE>
+
+<BR>
+ Returns the string representation of the <code>Object</code> argument.</TD>
+</TR>
+</TABLE>
+ <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>
+
+<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><<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>> <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> 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[] 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[] value,
+ int offset,
+ int 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[] codePoints,
+ int offset,
+ int 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[] ascii,
+ int hibyte,
+ int offset,
+ int count)</PRE>
+<DL>
+<DD><B>Deprecated.</B> <I>This method does not properly convert bytes into characters.
+ As of JDK 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[] ascii,
+ int hibyte)</PRE>
+<DL>
+<DD><B>Deprecated.</B> <I>This method does not properly convert bytes into
+ characters. As of JDK 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 & 0xff) << 8)
+ | (<b><i>b</i></b> & 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[] bytes,
+ int offset,
+ int length,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> 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[] bytes,
+ int offset,
+ int length,
+ <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A> 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[] bytes,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> 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[] bytes,
+ <A HREF="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</A> 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[] bytes,
+ int offset,
+ int 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[] 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> 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> 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 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 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 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 beginIndex,
+ int 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 index,
+ int 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 srcBegin,
+ int srcEnd,
+ char[] dst,
+ int 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 srcBegin,
+ int srcEnd,
+ byte[] dst,
+ int dstBegin)</PRE>
+<DL>
+<DD><B>Deprecated.</B> <I>This method does not properly convert characters into
+ bytes. As of JDK 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> 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> 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> 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> 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> 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> 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> 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 < 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><<A HREF="../../java/lang/String.html" title="class in java.lang">String</A>></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> 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 toffset,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> other,
+ int ooffset,
+ int 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>) != 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 ignoreCase,
+ int toffset,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> other,
+ int ooffset,
+ int 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> prefix,
+ int 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> 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> 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 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 ch,
+ int 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> >= 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> >= 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 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 ch,
+ int 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> <= 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> <= 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> 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> str,
+ int 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 >= 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> 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> str,
+ int 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 <= 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 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 beginIndex,
+ int 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 beginIndex,
+ int 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, end)</pre></blockquote>
+
+ behaves in exactly the same way as the invocation
+
+ <blockquote><pre>
+ str.substring(begin, 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> 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 oldChar,
+ char 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> 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> 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> regex,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> 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> regex,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> 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> target,
+ <A HREF="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</A> 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> regex,
+ int 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> - 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> <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> <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> 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> 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>\u0130</td>
+ <td>\u0069</td>
+ <td>capital letter I with dot above -> small letter i</td>
+ </tr>
+ <tr>
+ <td>tr (Turkish)</td>
+ <td>\u0049</td>
+ <td>\u0131</td>
+ <td>capital letter I -> 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> 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>\u0069</td>
+ <td>\u0130</td>
+ <td>small letter i -> capital letter I with dot above</td>
+ </tr>
+ <tr>
+ <td>tr (Turkish)</td>
+ <td>\u0131</td>
+ <td>\u0049</td>
+ <td>small letter dotless i -> capital letter I</td>
+ </tr>
+ <tr>
+ <td>(all)</td>
+ <td>\u00df</td>
+ <td>\u0053 \u0053</td>
+ <td>small letter sharp s -> two letters: SS</td>
+ </tr>
+ <tr>
+ <td>(all)</td>
+ <td>Fahrvergnügen</td>
+ <td>FAHRVERGNÜ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>'\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>'\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>'\u0020'</code>, and let
+ <i>m</i> be the index of the last character in the string whose code
+ is greater than <code>'\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>, <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> format,
+ <A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>... 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> l,
+ <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> format,
+ <A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A>... 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> 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[] 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[] data,
+ int offset,
+ int 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[] data,
+ int offset,
+ int 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[] 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 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 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 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 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 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 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() == 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 §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> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/String.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+<b>Java™ Platform<br>Standard Ed. 6</b></EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../java/lang/StrictMath.html" title="class in java.lang"><B>PREV CLASS</B></A>
+ <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>
+ <A HREF="String.html" target="_top"><B>NO FRAMES</B></A>
+ <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: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <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™ Platform<br>Standard Ed. 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: </li>
+<li>Nested | </li>
+<li><a href="#field_summary">Field</a> | </li>
+<li><a href="#constructor_summary">Constr</a> | </li>
+<li><a href="#method_summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail: </li>
+<li><a href="#field_detail">Field</a> | </li>
+<li><a href="#constructor_detail">Constr</a> | </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><<a href="../../java/lang/String.html" title="class in java.lang">String</a>></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><<a href="../../java/lang/String.html" title="class in java.lang">String</a>>, <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 ( + ), 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"> </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><<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#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"> </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[] 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[] bytes,
+ <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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[] ascii,
+ int hibyte)</code>
+<div class="block"><strong>Deprecated.</strong>
+<div class="block"><i>This method does not properly convert bytes into
+ characters. As of JDK 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[] bytes,
+ int offset,
+ int 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[] bytes,
+ int offset,
+ int length,
+ <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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[] ascii,
+ int hibyte,
+ int offset,
+ int count)</code>
+<div class="block"><strong>Deprecated.</strong>
+<div class="block"><i>This method does not properly convert bytes into characters.
+ As of JDK 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[] bytes,
+ int offset,
+ int length,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> 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[] bytes,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> 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[] 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[] value,
+ int offset,
+ int 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[] codePoints,
+ int offset,
+ int 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> 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> 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> 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"> </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 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 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 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 beginIndex,
+ int 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> 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> 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> 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> 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> 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> 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[] 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[] data,
+ int offset,
+ int 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> 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> 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> 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> l,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> format,
+ <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>... 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> format,
+ <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>... 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> 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 srcBegin,
+ int srcEnd,
+ byte[] dst,
+ int dstBegin)</code>
+<div class="block"><strong>Deprecated.</strong>
+<div class="block"><i>This method does not properly convert characters into
+ bytes. As of JDK 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> 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 srcBegin,
+ int srcEnd,
+ char[] dst,
+ int 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 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 ch,
+ int 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> 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> str,
+ int 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 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 ch,
+ int 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> 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> str,
+ int 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> 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 index,
+ int 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 ignoreCase,
+ int toffset,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> other,
+ int ooffset,
+ int 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 toffset,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> other,
+ int ooffset,
+ int 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 oldChar,
+ char 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> target,
+ <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a> 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> regex,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> 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> regex,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> 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> 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> regex,
+ int 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> 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> prefix,
+ int 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 beginIndex,
+ int 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 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 beginIndex,
+ int 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> 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> 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 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 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[] 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[] data,
+ int offset,
+ int 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 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 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 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 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> 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 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 <a href="../../java/util/Comparator.html" title="interface in java.util">Comparator</a><<a href="../../java/lang/String.html" title="class in java.lang">String</a>> 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 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 String(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 String(char[] 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 String(char[] value,
+ int offset,
+ int 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 String(int[] codePoints,
+ int offset,
+ int 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 String(byte[] ascii,
+ int hibyte,
+ int offset,
+ int count)</pre>
+<div class="block"><span class="strong">Deprecated.</span> <i>This method does not properly convert bytes into characters.
+ As of JDK 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 String(byte[] ascii,
+ int hibyte)</pre>
+<div class="block"><span class="strong">Deprecated.</span> <i>This method does not properly convert bytes into
+ characters. As of JDK 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 & 0xff) << 8)
+ | (<b><i>b</i></b> & 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 String(byte[] bytes,
+ int offset,
+ int length,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 String(byte[] bytes,
+ int offset,
+ int length,
+ <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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 String(byte[] bytes,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 String(byte[] bytes,
+ <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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 String(byte[] bytes,
+ int offset,
+ int 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 String(byte[] 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 String(<a href="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</a> 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 String(<a href="../../java/lang/StringBuilder.html" title="class in java.lang">StringBuilder</a> 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 int 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> in interface <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 boolean 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 char charAt(int 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> in interface <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 int codePointAt(int 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 int codePointBefore(int 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 int codePointCount(int beginIndex,
+ int 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 int offsetByCodePoints(int index,
+ int 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 void getChars(int srcBegin,
+ int srcEnd,
+ char[] dst,
+ int 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 void getBytes(int srcBegin,
+ int srcEnd,
+ byte[] dst,
+ int dstBegin)</pre>
+<div class="block"><span class="strong">Deprecated.</span> <i>This method does not properly convert characters into
+ bytes. As of JDK 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 byte[] getBytes(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 byte[] getBytes(<a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> 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 byte[] 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 boolean equals(<a href="../../java/lang/Object.html" title="class in java.lang">Object</a> 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> in class <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 boolean contentEquals(<a href="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</a> 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 boolean contentEquals(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a> 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 boolean equalsIgnoreCase(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 int compareTo(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 < 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> in interface <code><a href="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</a><<a href="../../java/lang/String.html" title="class in java.lang">String</a>></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 int compareToIgnoreCase(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 boolean regionMatches(int toffset,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> other,
+ int ooffset,
+ int 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>) != 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 boolean regionMatches(boolean ignoreCase,
+ int toffset,
+ <a href="../../java/lang/String.html" title="class in java.lang">String</a> other,
+ int ooffset,
+ int 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 boolean startsWith(<a href="../../java/lang/String.html" title="class in java.lang">String</a> prefix,
+ int 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 boolean startsWith(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 boolean endsWith(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 int 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> in class <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 int indexOf(int 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 int indexOf(int ch,
+ int 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> >= 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> >= 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 int lastIndexOf(int 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 int lastIndexOf(int ch,
+ int 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> <= 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> <= 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 int indexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 int indexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a> str,
+ int 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> >= 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 int lastIndexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 int lastIndexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a> str,
+ int 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> <= 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 <a href="../../java/lang/String.html" title="class in java.lang">String</a> substring(int 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 <a href="../../java/lang/String.html" title="class in java.lang">String</a> substring(int beginIndex,
+ int 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 <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a> subSequence(int beginIndex,
+ int 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, end)</pre></blockquote>
+
+ behaves in exactly the same way as the invocation
+
+ <blockquote><pre>
+ str.substring(begin, 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> in interface <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 <a href="../../java/lang/String.html" title="class in java.lang">String</a> concat(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 <a href="../../java/lang/String.html" title="class in java.lang">String</a> replace(char oldChar,
+ char 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 boolean matches(<a href="../../java/lang/String.html" title="class in java.lang">String</a> 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 ...