You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2020/09/15 15:57:10 UTC

[camel] 21/22: CAMEL-15478: Remove old javadoc and signature file parser as they become obsolete

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

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

commit 6cde8b33f1476c3ec2dc908d939aa9ac280e0975
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Tue Sep 15 16:36:13 2020 +0200

    CAMEL-15478: Remove old javadoc and signature file parser as they become obsolete
---
 .../camel/maven/ApiComponentGeneratorMojo.java     |   69 +-
 .../main/java/org/apache/camel/maven/ApiProxy.java |   21 -
 .../camel/maven/FileApiMethodGeneratorMojo.java    |   65 -
 .../java/org/apache/camel/maven/FromJavadoc.java   |   74 -
 .../org/apache/camel/maven/FromJavasource.java     |   53 +-
 .../camel/maven/JavadocApiMethodGeneratorMojo.java |  190 -
 .../java/org/apache/camel/maven/JavadocParser.java |  310 --
 .../camel/maven/ApiComponentGeneratorMojoTest.java |   92 -
 .../maven/FileApiMethodGeneratorMojoTest.java      |   70 -
 .../maven/JavadocApiMethodGeneratorMojoTest.java   |   68 -
 .../org/apache/camel/maven/JavadocParserTest.java  |   86 -
 .../test/resources/BoxCollaborationsManager.html   |  459 ---
 .../src/test/resources/Java11_String.html          | 4097 --------------------
 .../src/test/resources/Java8_String.html           | 3627 -----------------
 .../src/test/resources/test-proxy-signatures.txt   |   10 -
 15 files changed, 68 insertions(+), 9223 deletions(-)

diff --git a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/ApiComponentGeneratorMojo.java b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/ApiComponentGeneratorMojo.java
index 0847af7..06bacdc 100644
--- a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/ApiComponentGeneratorMojo.java
+++ b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/ApiComponentGeneratorMojo.java
@@ -37,6 +37,8 @@ import org.apache.velocity.VelocityContext;
       defaultPhase = LifecyclePhase.GENERATE_SOURCES, threadSafe = true)
 public class ApiComponentGeneratorMojo extends AbstractApiMethodBaseMojo {
 
+    protected static final String DEFAULT_EXCLUDE_PACKAGES = "javax?\\.lang.*";
+
     /**
      * List of API names, proxies and code generation settings.
      */
@@ -44,12 +46,6 @@ public class ApiComponentGeneratorMojo extends AbstractApiMethodBaseMojo {
     protected ApiProxy[] apis;
 
     /**
-     * Common Javadoc code generation settings.
-     */
-    @Parameter
-    protected FromJavadoc fromJavadoc = new FromJavadoc();
-
-    /**
      * Common Javasource code generation settings.
      */
     @Parameter
@@ -166,56 +162,23 @@ public class ApiComponentGeneratorMojo extends AbstractApiMethodBaseMojo {
     private AbstractApiMethodGeneratorMojo getApiMethodGenerator(ApiProxy api) {
         AbstractApiMethodGeneratorMojo apiMethodGenerator = null;
 
-        final File signatureFile = api.getFromSignatureFile();
-        if (signatureFile != null) {
-            final FileApiMethodGeneratorMojo mojo = new FileApiMethodGeneratorMojo();
-            mojo.signatureFile = signatureFile;
+        final FromJavasource apiFromJavasource = api.getFromJavasource();
+        if (apiFromJavasource != null) {
+            final JavaSourceApiMethodGeneratorMojo mojo = new JavaSourceApiMethodGeneratorMojo();
+            mojo.excludePackages = apiFromJavasource.getExcludePackages() != null
+                    ? apiFromJavasource.getExcludePackages() : fromJavasource.getExcludePackages();
+            mojo.excludeClasses = apiFromJavasource.getExcludeClasses() != null
+                    ? apiFromJavasource.getExcludeClasses() : fromJavasource.getExcludeClasses();
+            mojo.includeMethods = apiFromJavasource.getIncludeMethods() != null
+                    ? apiFromJavasource.getIncludeMethods() : fromJavasource.getIncludeMethods();
+            mojo.excludeMethods = apiFromJavasource.getExcludeMethods() != null
+                    ? apiFromJavasource.getExcludeMethods() : fromJavasource.getExcludeMethods();
+            mojo.includeStaticMethods = apiFromJavasource.getIncludeStaticMethods() != null
+                    ? apiFromJavasource.getIncludeStaticMethods() : fromJavasource.getIncludeStaticMethods();
             mojo.aliases = api.getAliases().isEmpty() ? aliases : api.getAliases();
             apiMethodGenerator = mojo;
-        } else {
-            final FromJavadoc apiFromJavadoc = api.getFromJavadoc();
-            final FromJavasource apiFromJavasource = api.getFromJavasource();
-
-            if (apiFromJavadoc == null && apiFromJavasource == null) {
-                throw new IllegalArgumentException("Must specify to use either fromJavadoc or fromJavasource");
-            }
-            if (apiFromJavadoc != null && apiFromJavasource != null) {
-                throw new IllegalArgumentException("Cannot use both fromJavadoc and fromJavasource");
-            }
-
-            if (apiFromJavadoc != null) {
-                final JavadocApiMethodGeneratorMojo mojo = new JavadocApiMethodGeneratorMojo();
-                mojo.excludePackages = apiFromJavadoc.getExcludePackages() != null
-                        ? apiFromJavadoc.getExcludePackages() : fromJavadoc.getExcludePackages();
-                mojo.excludeClasses = apiFromJavadoc.getExcludeClasses() != null
-                        ? apiFromJavadoc.getExcludeClasses() : fromJavadoc.getExcludeClasses();
-                mojo.includeMethods = apiFromJavadoc.getIncludeMethods() != null
-                        ? apiFromJavadoc.getIncludeMethods() : fromJavadoc.getIncludeMethods();
-                mojo.excludeMethods = apiFromJavadoc.getExcludeMethods() != null
-                        ? apiFromJavadoc.getExcludeMethods() : fromJavadoc.getExcludeMethods();
-                mojo.includeStaticMethods = apiFromJavadoc.getIncludeStaticMethods() != null
-                        ? apiFromJavadoc.getIncludeStaticMethods() : fromJavadoc.getIncludeStaticMethods();
-                mojo.includeStaticMethods = apiFromJavadoc.getIncludeStaticMethods() != null
-                        ? apiFromJavadoc.getIncludeStaticMethods() : fromJavadoc.getIncludeStaticMethods();
-                mojo.aliases = api.getAliases().isEmpty() ? aliases : api.getAliases();
-                apiMethodGenerator = mojo;
-            }
-            if (apiFromJavasource != null) {
-                final JavaSourceApiMethodGeneratorMojo mojo = new JavaSourceApiMethodGeneratorMojo();
-                mojo.excludePackages = apiFromJavasource.getExcludePackages() != null
-                        ? apiFromJavasource.getExcludePackages() : fromJavasource.getExcludePackages();
-                mojo.excludeClasses = apiFromJavasource.getExcludeClasses() != null
-                        ? apiFromJavasource.getExcludeClasses() : fromJavasource.getExcludeClasses();
-                mojo.includeMethods = apiFromJavasource.getIncludeMethods() != null
-                        ? apiFromJavasource.getIncludeMethods() : fromJavasource.getIncludeMethods();
-                mojo.excludeMethods = apiFromJavasource.getExcludeMethods() != null
-                        ? apiFromJavasource.getExcludeMethods() : fromJavasource.getExcludeMethods();
-                mojo.includeStaticMethods = apiFromJavasource.getIncludeStaticMethods() != null
-                        ? apiFromJavasource.getIncludeStaticMethods() : fromJavasource.getIncludeStaticMethods();
-                mojo.aliases = api.getAliases().isEmpty() ? aliases : api.getAliases();
-                apiMethodGenerator = mojo;
-            }
         }
+
         return apiMethodGenerator;
     }
 
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/ApiProxy.java b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/ApiProxy.java
index 5d00cd9..fa88d3f 100644
--- a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/ApiProxy.java
+++ b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/ApiProxy.java
@@ -16,7 +16,6 @@
  */
 package org.apache.camel.maven;
 
-import java.io.File;
 import java.util.Collections;
 import java.util.List;
 
@@ -33,10 +32,6 @@ public class ApiProxy {
 
     private String proxyClass;
 
-    private File fromSignatureFile;
-
-    private FromJavadoc fromJavadoc;
-
     private FromJavasource fromJavasource;
 
     private Substitution[] substitutions = new Substitution[0];
@@ -77,22 +72,6 @@ public class ApiProxy {
         this.proxyClass = proxyClass;
     }
 
-    public File getFromSignatureFile() {
-        return fromSignatureFile;
-    }
-
-    public void setFromSignatureFile(File fromSignatureFile) {
-        this.fromSignatureFile = fromSignatureFile;
-    }
-
-    public FromJavadoc getFromJavadoc() {
-        return fromJavadoc;
-    }
-
-    public void setFromJavadoc(FromJavadoc fromJavadoc) {
-        this.fromJavadoc = fromJavadoc;
-    }
-
     public FromJavasource getFromJavasource() {
         return fromJavasource;
     }
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/FileApiMethodGeneratorMojo.java b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/FileApiMethodGeneratorMojo.java
deleted file mode 100644
index cd4c350..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/FileApiMethodGeneratorMojo.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.maven;
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileReader;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugins.annotations.LifecyclePhase;
-import org.apache.maven.plugins.annotations.Mojo;
-import org.apache.maven.plugins.annotations.Parameter;
-import org.apache.maven.plugins.annotations.ResolutionScope;
-
-/**
- * Parses ApiMethod signatures from a File.
- */
-@Mojo(name = "fromFile", requiresDependencyResolution = ResolutionScope.COMPILE_PLUS_RUNTIME, requiresProject = true,
-      defaultPhase = LifecyclePhase.GENERATE_SOURCES, threadSafe = true)
-@Deprecated
-public class FileApiMethodGeneratorMojo extends AbstractApiMethodGeneratorMojo {
-
-    @Parameter(required = true, property = PREFIX + "signatureFile")
-    protected File signatureFile;
-
-    @Override
-    public List<SignatureModel> getSignatureList() throws MojoExecutionException {
-        // get signatureFile as a list of Strings
-        List<SignatureModel> result = new ArrayList<>();
-        try {
-            BufferedReader reader = new BufferedReader(new FileReader(this.signatureFile));
-            String line = reader.readLine();
-            while (line != null) {
-                SignatureModel model = new SignatureModel();
-                model.setSignature(line);
-                result.add(model);
-                line = reader.readLine();
-            }
-            reader.close();
-        } catch (IOException e) {
-            throw new MojoExecutionException(e.getMessage(), e);
-        }
-        if (result.isEmpty()) {
-            throw new MojoExecutionException("Signature file " + signatureFile.getPath() + " is empty");
-        }
-        return result;
-    }
-}
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/FromJavadoc.java b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/FromJavadoc.java
deleted file mode 100644
index ee22f39..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/FromJavadoc.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.maven;
-
-/**
- * Javadoc API generator properties.
- */
-@Deprecated
-public class FromJavadoc {
-
-    protected String excludePackages = JavadocApiMethodGeneratorMojo.DEFAULT_EXCLUDE_PACKAGES;
-
-    protected String excludeClasses;
-
-    protected String includeMethods;
-
-    protected String excludeMethods;
-
-    protected Boolean includeStaticMethods;
-
-    public String getExcludePackages() {
-        return excludePackages;
-    }
-
-    public void setExcludePackages(String excludePackages) {
-        this.excludePackages = excludePackages;
-    }
-
-    public String getExcludeClasses() {
-        return excludeClasses;
-    }
-
-    public void setExcludeClasses(String excludeClasses) {
-        this.excludeClasses = excludeClasses;
-    }
-
-    public String getIncludeMethods() {
-        return includeMethods;
-    }
-
-    public void setIncludeMethods(String includeMethods) {
-        this.includeMethods = includeMethods;
-    }
-
-    public String getExcludeMethods() {
-        return excludeMethods;
-    }
-
-    public void setExcludeMethods(String excludeMethods) {
-        this.excludeMethods = excludeMethods;
-    }
-
-    public Boolean getIncludeStaticMethods() {
-        return includeStaticMethods;
-    }
-
-    public void setIncludeStaticMethods(Boolean includeStaticMethods) {
-        this.includeStaticMethods = includeStaticMethods;
-    }
-}
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/FromJavasource.java b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/FromJavasource.java
index 1fb2e7b..4a6f181 100644
--- a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/FromJavasource.java
+++ b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/FromJavasource.java
@@ -19,5 +19,56 @@ package org.apache.camel.maven;
 /**
  * Java source API generator properties.
  */
-public class FromJavasource extends FromJavadoc {
+public class FromJavasource {
+
+    protected String excludePackages = ApiComponentGeneratorMojo.DEFAULT_EXCLUDE_PACKAGES;
+
+    protected String excludeClasses;
+
+    protected String includeMethods;
+
+    protected String excludeMethods;
+
+    protected Boolean includeStaticMethods;
+
+    public String getExcludePackages() {
+        return excludePackages;
+    }
+
+    public void setExcludePackages(String excludePackages) {
+        this.excludePackages = excludePackages;
+    }
+
+    public String getExcludeClasses() {
+        return excludeClasses;
+    }
+
+    public void setExcludeClasses(String excludeClasses) {
+        this.excludeClasses = excludeClasses;
+    }
+
+    public String getIncludeMethods() {
+        return includeMethods;
+    }
+
+    public void setIncludeMethods(String includeMethods) {
+        this.includeMethods = includeMethods;
+    }
+
+    public String getExcludeMethods() {
+        return excludeMethods;
+    }
+
+    public void setExcludeMethods(String excludeMethods) {
+        this.excludeMethods = excludeMethods;
+    }
+
+    public Boolean getIncludeStaticMethods() {
+        return includeStaticMethods;
+    }
+
+    public void setIncludeStaticMethods(Boolean includeStaticMethods) {
+        this.includeStaticMethods = includeStaticMethods;
+    }
+
 }
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/JavadocApiMethodGeneratorMojo.java b/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/JavadocApiMethodGeneratorMojo.java
deleted file mode 100644
index e7b6b54..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/JavadocApiMethodGeneratorMojo.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.maven;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
-import java.util.ArrayList;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import javax.swing.text.html.parser.DTD;
-
-import org.apache.camel.support.component.ApiMethodParser;
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugins.annotations.LifecyclePhase;
-import org.apache.maven.plugins.annotations.Mojo;
-import org.apache.maven.plugins.annotations.Parameter;
-import org.apache.maven.plugins.annotations.ResolutionScope;
-
-/**
- * Parses ApiMethod signatures from Javadoc.
- */
-@Mojo(name = "fromJavadoc", requiresDependencyResolution = ResolutionScope.TEST, requiresProject = true,
-      defaultPhase = LifecyclePhase.GENERATE_SOURCES, threadSafe = true)
-@Deprecated
-public class JavadocApiMethodGeneratorMojo extends AbstractApiMethodGeneratorMojo {
-
-    static {
-        // set Java AWT to headless before using Swing HTML parser
-        System.setProperty("java.awt.headless", "true");
-    }
-
-    protected static final String DEFAULT_EXCLUDE_PACKAGES = "javax?\\.lang.*";
-    private static final Pattern RAW_ARGTYPES_PATTERN = Pattern.compile("\\s*([^<\\s,]+)\\s*(<[^>]+>)?\\s*,?");
-
-    @Parameter(property = PREFIX + "excludePackages", defaultValue = DEFAULT_EXCLUDE_PACKAGES)
-    protected String excludePackages;
-
-    @Parameter(property = PREFIX + "excludeClasses")
-    protected String excludeClasses;
-
-    @Parameter(property = PREFIX + "includeMethods")
-    protected String includeMethods;
-
-    @Parameter(property = PREFIX + "excludeMethods")
-    protected String excludeMethods;
-
-    @Parameter(property = PREFIX + "includeStaticMethods")
-    protected Boolean includeStaticMethods;
-
-    @Override
-    public List<SignatureModel> getSignatureList() throws MojoExecutionException {
-        // signatures as map from signature with no arg names to arg names from JavadocParser
-        Map<String, SignatureModel> result = new LinkedHashMap<>();
-
-        final Pattern packagePatterns = Pattern.compile(excludePackages);
-        final Pattern classPatterns = (excludeClasses != null) ? Pattern.compile(excludeClasses) : null;
-        final Pattern includeMethodPatterns = (includeMethods != null) ? Pattern.compile(includeMethods) : null;
-        final Pattern excludeMethodPatterns = (excludeMethods != null) ? Pattern.compile(excludeMethods) : null;
-
-        // for proxy class and super classes not matching excluded packages or classes
-        for (Class<?> aClass = getProxyType();
-             aClass != null && !packagePatterns.matcher(aClass.getPackage().getName()).matches()
-                     && (classPatterns == null || !classPatterns.matcher(aClass.getSimpleName()).matches());
-             aClass = aClass.getSuperclass()) {
-
-            log.debug("Processing " + aClass.getName());
-            final String javaDocPath = aClass.getName().replace('.', '/').replace('$', '.') + ".html";
-
-            // read javadoc html text for class
-
-            try (InputStream inputStream = getProjectClassLoader().getResourceAsStream(javaDocPath)) {
-                if (inputStream == null) {
-                    log.debug("JavaDoc not found on classpath for " + aClass.getName());
-                    break;
-                }
-                // transform the HTML to get method summary as text
-                // dummy DTD
-                final DTD dtd = DTD.getDTD("html.dtd");
-                final JavadocParser htmlParser = new JavadocParser(dtd, javaDocPath);
-                htmlParser.parse(new InputStreamReader(inputStream, "UTF-8"));
-
-                // look for parse errors
-                final String parseError = htmlParser.getErrorMessage();
-                if (parseError != null) {
-                    throw new MojoExecutionException(parseError);
-                }
-
-                // get public method signature
-                final Map<String, String> methodMap = htmlParser.getMethodText();
-                for (String method : htmlParser.getMethods()) {
-                    if (!result.containsKey(method)
-                            && (includeMethodPatterns == null || includeMethodPatterns.matcher(method).find())
-                            && (excludeMethodPatterns == null || !excludeMethodPatterns.matcher(method).find())) {
-
-                        final int leftBracket = method.indexOf('(');
-                        final String name = method.substring(0, leftBracket);
-                        final String args = method.substring(leftBracket + 1, method.length() - 1);
-                        String[] types;
-                        if (args.isEmpty()) {
-                            types = new String[0];
-                        } else {
-                            // get raw types from args
-                            final List<String> rawTypes = new ArrayList<>();
-                            final Matcher argTypesMatcher = RAW_ARGTYPES_PATTERN.matcher(args);
-                            while (argTypesMatcher.find()) {
-                                rawTypes.add(argTypesMatcher.group(1));
-                            }
-                            types = rawTypes.toArray(new String[rawTypes.size()]);
-                        }
-                        final String resultType = getResultType(aClass, name, types);
-                        if (resultType != null) {
-                            SignatureModel model = new SignatureModel();
-                            String signature = resultType + " " + name + methodMap.get(method);
-                            model.setSignature(signature);
-                            Map<String, String> params = htmlParser.getParameters().get(name);
-                            model.setParameters(params);
-                            result.put(method, model);
-                        }
-                    }
-                }
-            } catch (IOException e) {
-                throw new MojoExecutionException(e.getMessage(), e);
-            }
-        }
-
-        if (result.isEmpty()) {
-            throw new MojoExecutionException(
-                    "No public non-static methods found, "
-                                             + "make sure Javadoc is available as project test dependency");
-        }
-        return new ArrayList<>(result.values());
-    }
-
-    private String getResultType(Class<?> aClass, String name, String[] types) throws MojoExecutionException {
-        Class<?>[] argTypes = new Class<?>[types.length];
-        final ClassLoader classLoader = getProjectClassLoader();
-        for (int i = 0; i < types.length; i++) {
-            try {
-                try {
-                    argTypes[i] = ApiMethodParser.forName(types[i], classLoader);
-                } catch (ClassNotFoundException e) {
-                    throw new MojoExecutionException(e.getMessage(), e);
-                }
-            } catch (IllegalArgumentException e) {
-                throw new MojoExecutionException(e.getCause().getMessage(), e.getCause());
-            }
-        }
-
-        // return null for non-public methods, and for non-static methods if includeStaticMethods is null or false
-        String result = null;
-        try {
-            final Method method = aClass.getMethod(name, argTypes);
-            int modifiers = method.getModifiers();
-            if (!Modifier.isStatic(modifiers) || Boolean.TRUE.equals(includeStaticMethods)) {
-                result = method.getReturnType().getName();
-            }
-        } catch (NoSuchMethodException e) {
-            // could be a non-public method
-            try {
-                aClass.getDeclaredMethod(name, argTypes);
-            } catch (NoSuchMethodException e1) {
-                throw new MojoExecutionException(e1.getMessage(), e1);
-            }
-        }
-
-        return result;
-    }
-
-}
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
deleted file mode 100644
index 9a62be6..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/main/java/org/apache/camel/maven/JavadocParser.java
+++ /dev/null
@@ -1,310 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.maven;
-
-import java.io.UnsupportedEncodingException;
-import java.net.URLDecoder;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.swing.text.ChangedCharSetException;
-import javax.swing.text.SimpleAttributeSet;
-import javax.swing.text.html.HTML;
-import javax.swing.text.html.parser.DTD;
-import javax.swing.text.html.parser.Parser;
-import javax.swing.text.html.parser.TagElement;
-
-import org.apache.camel.util.StringHelper;
-import org.apache.commons.lang.StringEscapeUtils;
-
-import static org.apache.camel.tooling.util.JavadocHelper.sanitizeDescription;
-
-/**
- * Parses Javadoc HTML to get Method Signatures from Method Summary. Supports 8 and 11 Javadoc formats.
- */
-@Deprecated
-public class JavadocParser extends Parser {
-
-    private static final String NON_BREAKING_SPACE = "\u00A0";
-    private static final String JAVA6_NON_BREAKING_SPACE = "&nbsp";
-
-    private final String hrefPattern;
-
-    private ParserState parserState;
-    private String methodWithTypes;
-    private StringBuilder methodTextBuilder = new StringBuilder();
-
-    private List<String> methods = new ArrayList<>();
-    private Map<String, String> methodText = new HashMap<>();
-    private Map<String, Map<String, String>> parameters = new LinkedHashMap<>();
-    private Map<String, String> currentParameters;
-    private boolean parametersJavadoc;
-    private String errorMessage;
-
-    public JavadocParser(DTD dtd, String docPath) {
-        super(dtd);
-        this.hrefPattern = docPath + "#";
-        parserState = ParserState.INIT;
-    }
-
-    public void reset() {
-        parserState = ParserState.INIT;
-
-        methodWithTypes = null;
-        methodTextBuilder = new StringBuilder();
-
-        methods.clear();
-        methodText.clear();
-        parameters.clear();
-        currentParameters = null;
-        errorMessage = null;
-    }
-
-    @Override
-    protected void startTag(TagElement tag) throws ChangedCharSetException {
-        super.startTag(tag);
-
-        final HTML.Tag htmlTag = tag.getHTMLTag();
-        if (htmlTag != null) {
-            if (HTML.Tag.A.equals(htmlTag)) {
-                final SimpleAttributeSet attributes = getAttributes();
-                final Object name = attributes.getAttribute(HTML.Attribute.NAME);
-                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(idAttr) || "method.summary".equals(idAttr))) {
-                        parserState = ParserState.METHOD_SUMMARY;
-                    } else if (parserState == ParserState.INIT
-                            && ("method_detail".equals(nameAttr) || "method.detail".equals(nameAttr)
-                                    || "method_detail".equals(idAttr) || "method.detail".equals(idAttr))) {
-                        parserState = ParserState.METHOD_DETAIL;
-                    } else if (parserState == ParserState.METHOD) {
-                        if (methodWithTypes == null) {
-
-                            final String hrefAttr = (String) attributes.getAttribute(HTML.Attribute.HREF);
-                            if (hrefAttr != null && (hrefAttr.contains(hrefPattern) || hrefAttr.charAt(0) == '#')) {
-                                // unescape HTML
-                                String methodSignature = hrefAttr.substring(hrefAttr.indexOf('#') + 1);
-                                final int firstHyphen = methodSignature.indexOf('-');
-                                if (firstHyphen != -1) {
-                                    final int lastHyphen = methodSignature.lastIndexOf('-');
-                                    methodSignature = methodSignature.substring(0, firstHyphen) + "("
-                                                      + methodSignature.substring(firstHyphen + 1, lastHyphen) + ")";
-                                    methodSignature = methodSignature.replace('-', ',');
-                                }
-                                // support varargs
-                                if (methodSignature.contains("...)")) {
-                                    methodSignature = methodSignature.replace("...)", "[])");
-                                }
-                                // map Java8 array types
-                                if (methodSignature.contains(":A")) {
-                                    methodSignature = methodSignature.replace(":A", "[]");
-                                }
-                                methodWithTypes = unescapeHtml(methodSignature);
-                            }
-                        } else {
-                            final String title = (String) attributes.getAttribute(HTML.Attribute.TITLE);
-                            if (title != null) {
-                                // append package name to type name text
-                                methodTextBuilder.append(title, title.lastIndexOf(' '), title.length()).append('.');
-                            }
-                        }
-                    }
-                }
-            } else if (parserState == ParserState.METHOD_SUMMARY && HTML.Tag.CODE.equals(htmlTag)) {
-                parserState = ParserState.METHOD;
-            } else if (parserState == ParserState.METHOD_DETAIL && HTML.Tag.H4.equals(htmlTag)) {
-                parserState = ParserState.METHOD_DETAIL_METHOD;
-            } else if (parserState == ParserState.METHOD_DETAIL && HTML.Tag.SPAN.equals(htmlTag)) {
-                Object clazz = getAttributes().getAttribute(HTML.Attribute.CLASS);
-                if ("paramLabel".equals(clazz)) {
-                    parserState = ParserState.METHOD_DETAIL_PARAM;
-                }
-            } else if (parserState == ParserState.METHOD_DETAIL_PARAM) {
-                if (HTML.Tag.CODE.equals(htmlTag) || HTML.Tag.DD.equals(htmlTag) || HTML.Tag.DL.equals(htmlTag)
-                        || HTML.Tag.DT.equals(htmlTag) || HTML.Tag.UL.equals(htmlTag)) {
-
-                    // okay so we need to grab javadoc for each parameter from the method signature
-                    // these parameters are documented elsewhere in the html reports, so we need
-                    // to find the span class where they start and then keep reading tags until there are no more parameters
-                    // unfortunately the end tag is not consistent whether there are 1 or more parameters
-                    // and therefore we need a bit of hacky code
-
-                    String text = methodTextBuilder.toString().trim();
-                    if (!text.isEmpty() && parametersJavadoc || (text.length() > 11 && text.startsWith("Parameters:"))) {
-                        parametersJavadoc = true;
-                        if (text.startsWith("Parameters:")) {
-                            text = text.substring(11);
-                        }
-                        String key = StringHelper.before(text, " ");
-                        String desc = StringHelper.after(text, " ");
-                        if (key != null) {
-                            key = key.trim();
-                        }
-                        if (desc != null) {
-                            // remove leading - and whitespaces
-                            while (desc.startsWith("-")) {
-                                desc = desc.substring(1);
-                                desc = desc.trim();
-                            }
-                            desc = sanitizeDescription(desc, false);
-                            if (desc != null && !desc.isEmpty()) {
-                                // upper case first letter
-                                char ch = desc.charAt(0);
-                                if (Character.isAlphabetic(ch) && !Character.isUpperCase(ch)) {
-                                    desc = Character.toUpperCase(ch) + desc.substring(1);
-                                }
-                                // remove ending dot if there is the text is just alpha or whitespace
-                                boolean removeDot = true;
-                                char[] arr = desc.toCharArray();
-                                for (int i = 0; i < arr.length; i++) {
-                                    ch = arr[i];
-                                    boolean accept = Character.isAlphabetic(ch) || Character.isWhitespace(ch) || ch == '\''
-                                            || ch == '-' || ch == '_';
-                                    boolean last = i == arr.length - 1;
-                                    accept |= last && ch == '.';
-                                    if (!accept) {
-                                        removeDot = false;
-                                        break;
-                                    }
-                                }
-                                if (removeDot && desc.endsWith(".")) {
-                                    desc = desc.substring(0, desc.length() - 1);
-                                }
-                                desc = desc.trim();
-                            }
-                        }
-                        if (key != null && desc != null && currentParameters != null) {
-                            currentParameters.put(key, desc);
-                        }
-                        methodTextBuilder.delete(0, methodTextBuilder.length());
-                        if (!HTML.Tag.DD.equals(htmlTag) && !HTML.Tag.CODE.equals(htmlTag)) {
-                            parserState = ParserState.METHOD_DETAIL;
-                            parametersJavadoc = false;
-                        }
-                    }
-                }
-            }
-        }
-    }
-
-    private static String unescapeHtml(String htmlString) {
-        String result = StringEscapeUtils.unescapeHtml(htmlString).replaceAll(NON_BREAKING_SPACE, " ")
-                .replaceAll(JAVA6_NON_BREAKING_SPACE, " ");
-        try {
-            result = URLDecoder.decode(result, "UTF-8");
-        } catch (UnsupportedEncodingException ignored) {
-
-        }
-        return result;
-    }
-
-    @Override
-    protected void handleEmptyTag(TagElement tag) {
-        if (parserState == ParserState.METHOD && HTML.Tag.CODE.equals(tag.getHTMLTag())) {
-            if (methodWithTypes != null) {
-                // process collected method data
-                methods.add(methodWithTypes);
-                this.methodText.put(methodWithTypes, getArgSignature());
-
-                // clear the text builder for next method
-                methodTextBuilder.delete(0, methodTextBuilder.length());
-                methodWithTypes = null;
-            }
-
-            parserState = ParserState.METHOD_SUMMARY;
-        } else if (parserState == ParserState.METHOD_SUMMARY
-                && !methods.isEmpty()
-                && HTML.Tag.TABLE.equals(tag.getHTMLTag())) {
-            // end of method summary table
-            parserState = ParserState.INIT;
-        } else if (parserState == ParserState.METHOD_DETAIL_METHOD && HTML.Tag.H4.equals(tag.getHTMLTag())) {
-            final Object end = getAttributes().getAttribute(HTML.Attribute.ENDTAG);
-            if ("true".equals(end)) {
-                String methodName = methodTextBuilder.toString();
-                parameters.putIfAbsent(methodName, new HashMap<>());
-                currentParameters = parameters.get(methodName);
-                methodTextBuilder.delete(0, methodTextBuilder.length());
-                parserState = ParserState.METHOD_DETAIL;
-            }
-        }
-    }
-
-    private String getArgSignature() {
-        final String typeString = methodWithTypes.substring(methodWithTypes.indexOf('(') + 1, methodWithTypes.indexOf(')'));
-        if (typeString.isEmpty()) {
-            return "()";
-        }
-
-        // unescape HTML method text
-        String plainText = unescapeHtml(methodTextBuilder.toString());
-        // support varargs
-        if (plainText.contains("...")) {
-            plainText = plainText.replace("...", "[]");
-        }
-        return plainText.substring(plainText.indexOf('('), plainText.indexOf(')') + 1);
-    }
-
-    @Override
-    protected void handleText(char[] text) {
-        if (parserState == ParserState.METHOD && methodWithTypes != null) {
-            methodTextBuilder.append(text);
-        } else if (parserState == ParserState.METHOD_DETAIL_METHOD) {
-            methodTextBuilder.append(text);
-        } else if (parserState == ParserState.METHOD_DETAIL_PARAM) {
-            methodTextBuilder.append(text);
-        }
-    }
-
-    @Override
-    protected void handleError(int ln, String msg) {
-        if (msg.startsWith("exception ")) {
-            this.errorMessage = "Exception parsing Javadoc line " + ln + ": " + msg;
-        }
-    }
-
-    public String getErrorMessage() {
-        return errorMessage;
-    }
-
-    public List<String> getMethods() {
-        return methods;
-    }
-
-    public Map<String, String> getMethodText() {
-        return methodText;
-    }
-
-    public Map<String, Map<String, String>> getParameters() {
-        return parameters;
-    }
-
-    private enum ParserState {
-        INIT,
-        METHOD_SUMMARY,
-        METHOD,
-        METHOD_DETAIL,
-        METHOD_DETAIL_METHOD,
-        METHOD_DETAIL_PARAM
-    }
-}
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/ApiComponentGeneratorMojoTest.java b/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/ApiComponentGeneratorMojoTest.java
deleted file mode 100644
index 73bb25c..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/ApiComponentGeneratorMojoTest.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.maven;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.camel.component.test.TestProxy;
-import org.apache.velocity.VelocityContext;
-import org.junit.jupiter.api.Disabled;
-import org.junit.jupiter.api.Test;
-
-/**
- * Tests {@link ApiComponentGeneratorMojo} for signature file and javadoc
- */
-@Deprecated
-@Disabled
-public class ApiComponentGeneratorMojoTest extends AbstractGeneratorMojoTest {
-
-    @Test
-    public void testExecute() throws Exception {
-
-        final File collectionFile = new File(OUT_DIR, PACKAGE_PATH + COMPONENT_NAME + "ApiCollection.java");
-
-        // delete target files to begin
-        collectionFile.delete();
-
-        final ApiComponentGeneratorMojo mojo = createGeneratorMojo();
-
-        mojo.execute();
-
-        // check target file was generated
-        assertExists(collectionFile);
-    }
-
-    @Override
-    protected ApiComponentGeneratorMojo createGeneratorMojo() {
-        final ApiComponentGeneratorMojo mojo = new ApiComponentGeneratorMojo();
-        configureSourceGeneratorMojo(mojo);
-
-        mojo.apis = new ApiProxy[2];
-        mojo.apis[0] = new ApiProxy();
-        mojo.apis[0].setApiName("test");
-        mojo.apis[0].setProxyClass(TestProxy.class.getName());
-        mojo.apis[0].setFromSignatureFile(new File("src/test/resources/test-proxy-signatures.txt"));
-        Substitution[] substitutions = new Substitution[2];
-        substitutions[0] = new Substitution(".+", "(.+)", "java.util.List", "$1List", false);
-        substitutions[1] = new Substitution(".+", "(.+)", ".*?(\\w++)\\[\\]", "$1Array", true);
-        mojo.apis[0].setSubstitutions(substitutions);
-        // exclude name2, and int times
-        mojo.apis[0].setExcludeConfigNames("name2");
-        mojo.apis[0].setExcludeConfigTypes("int");
-        mojo.apis[0].setNullableOptions(new String[] { "namesList" });
-
-        List<ApiMethodAlias> aliases = new ArrayList<>();
-        aliases.add(new ApiMethodAlias("get(.+)", "$1"));
-        aliases.add(new ApiMethodAlias("set(.+)", "$1"));
-        mojo.apis[1] = new ApiProxy();
-        mojo.apis[1].setApiName("velocity");
-        mojo.apis[1].setProxyClass(VelocityContext.class.getName());
-        mojo.apis[1].setAliases(aliases);
-        Substitution substitution = new Substitution(".*", "key", "java.lang.Object", "applicationKey", false);
-        mojo.apis[1].setSubstitutions(new Substitution[] { substitution });
-        mojo.apis[1].setExtraOptions(
-                new ExtraOption[] { new ExtraOption("java.util.Map<String, String>", "extraMap", "Hello World") });
-
-        mojo.extraOptions = new ExtraOption[1];
-        mojo.extraOptions[0] = new ExtraOption("java.util.List<String>", "extraStrings", "Hello World");
-
-        final FromJavadoc fromJavadoc = new FromJavadoc();
-        fromJavadoc.setExcludePackages(JavadocApiMethodGeneratorMojo.DEFAULT_EXCLUDE_PACKAGES);
-        fromJavadoc.setExcludeMethods("clone|Current|internal|icache");
-        mojo.apis[1].setFromJavadoc(fromJavadoc);
-        return mojo;
-    }
-
-}
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/FileApiMethodGeneratorMojoTest.java b/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/FileApiMethodGeneratorMojoTest.java
deleted file mode 100644
index 74d2992..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/FileApiMethodGeneratorMojoTest.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.maven;
-
-import java.io.File;
-import java.io.IOException;
-
-import org.apache.camel.component.test.TestProxy;
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugin.MojoFailureException;
-import org.junit.jupiter.api.Disabled;
-import org.junit.jupiter.api.Test;
-
-/**
- * Tests {@link FileApiMethodGeneratorMojo}
- */
-@Disabled
-@Deprecated
-public class FileApiMethodGeneratorMojoTest extends AbstractGeneratorMojoTest {
-
-    @Test
-    public void testExecute() throws IOException, MojoFailureException, MojoExecutionException {
-
-        // delete target file to begin
-        final File outFile = new File(OUT_DIR, PACKAGE_PATH + "TestProxyApiMethod.java");
-        if (outFile.exists()) {
-            outFile.delete();
-        }
-
-        final FileApiMethodGeneratorMojo mojo = createGeneratorMojo();
-        mojo.execute();
-
-        // check target file was generated
-        assertExists(outFile);
-    }
-
-    @Override
-    protected FileApiMethodGeneratorMojo createGeneratorMojo() {
-        final FileApiMethodGeneratorMojo mojo = new FileApiMethodGeneratorMojo();
-        mojo.substitutions = new Substitution[2];
-        mojo.substitutions[0] = new Substitution(".+", "(.+)", "java.util.List", "$1List", false);
-        mojo.substitutions[1] = new Substitution(".+", "(.+)", ".*?(\\w++)\\[\\]", "$1Array", true);
-        mojo.extraOptions = new ExtraOption[1];
-        mojo.extraOptions[0] = new ExtraOption("java.util.List<String>", "extraStrings", "Hello World");
-
-        configureSourceGeneratorMojo(mojo);
-        mojo.proxyClass = TestProxy.class.getCanonicalName();
-        mojo.signatureFile = new File("src/test/resources/test-proxy-signatures.txt");
-
-        // exclude name2, and int times
-        mojo.excludeConfigNames = "name2";
-        mojo.excludeConfigTypes = "int";
-        return mojo;
-    }
-
-}
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/JavadocApiMethodGeneratorMojoTest.java b/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/JavadocApiMethodGeneratorMojoTest.java
deleted file mode 100644
index 7b72443..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/JavadocApiMethodGeneratorMojoTest.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.maven;
-
-import java.io.File;
-import java.io.IOException;
-
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugin.MojoFailureException;
-import org.apache.velocity.VelocityContext;
-import org.junit.jupiter.api.Disabled;
-import org.junit.jupiter.api.Test;
-
-/**
- * Tests {@link JavadocApiMethodGeneratorMojo}
- */
-@Disabled
-public class JavadocApiMethodGeneratorMojoTest extends AbstractGeneratorMojoTest {
-
-    @Test
-    public void testExecute() throws IOException, MojoFailureException, MojoExecutionException {
-
-        // delete target file to begin
-        final File outFile = new File(OUT_DIR, PACKAGE_PATH + "VelocityContextApiMethod.java");
-        if (outFile.exists()) {
-            outFile.delete();
-        }
-
-        final JavadocApiMethodGeneratorMojo mojo = createGeneratorMojo();
-        mojo.execute();
-
-        // check target file was generated
-        assertExists(outFile);
-    }
-
-    @Override
-    protected JavadocApiMethodGeneratorMojo createGeneratorMojo() {
-        final JavadocApiMethodGeneratorMojo mojo = new JavadocApiMethodGeneratorMojo();
-
-        configureSourceGeneratorMojo(mojo);
-
-        // use VelocityEngine javadoc
-        mojo.proxyClass = VelocityContext.class.getCanonicalName();
-        Substitution substitution = new Substitution(".*", "key", "java.lang.Object", "applicationKey", false);
-        mojo.substitutions = new Substitution[] { substitution };
-        mojo.extraOptions = new ExtraOption[1];
-        mojo.extraOptions[0] = new ExtraOption("java.util.Map<String, String>", "extraMap", "Hello World");
-
-        mojo.excludePackages = JavadocApiMethodGeneratorMojo.DEFAULT_EXCLUDE_PACKAGES;
-        mojo.includeMethods = ".+";
-        mojo.excludeMethods = "clone|Current|internal|icache";
-        return mojo;
-    }
-}
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
deleted file mode 100644
index 471047d..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/test/java/org/apache/camel/maven/JavadocParserTest.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.camel.maven;
-
-import java.io.InputStreamReader;
-import java.util.Map;
-
-import javax.swing.text.html.parser.DTD;
-
-import org.junit.jupiter.api.Test;
-
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertNull;
-
-/**
- * Test JavadocParser using {@link java.lang.String} javadoc for Java 8 and 11.
- */
-public class JavadocParserTest {
-
-    @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(JavadocParserTest.class.getResourceAsStream("/Java8_String.html"), "UTF-8"));
-        assertNull(htmlParser.getErrorMessage(), "Java8 getErrorMessage");
-        assertEquals(67, htmlParser.getMethods().size(), "Java8 getMethods");
-
-        // should include javadoc for parameters
-        Map<String, String> params = htmlParser.getParameters().get("offsetByCodePoints");
-        assertEquals(2, params.size());
-        assertEquals("The index to be offset", params.get("index"));
-        assertEquals("The offset in code points", params.get("codePointOffset"));
-
-        htmlParser.reset();
-
-        htmlParser.parse(new InputStreamReader(JavadocParserTest.class.getResourceAsStream("/Java11_String.html"), "UTF-8"));
-        assertNull(htmlParser.getErrorMessage(), "Java11 getErrorMessage");
-        assertEquals(75, htmlParser.getMethods().size(), "Java11 getMethods");
-
-        // should include javadoc for parameters
-        params = htmlParser.getParameters().get("offsetByCodePoints");
-        assertEquals(2, params.size());
-        assertEquals("The index to be offset", params.get("index"));
-        assertEquals("The offset in code points", params.get("codePointOffset"));
-
-        htmlParser.reset();
-    }
-
-    @Test
-    public void testGetMethodsBox() 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(JavadocParserTest.class.getResourceAsStream("/BoxCollaborationsManager.html"), "UTF-8"));
-        assertNull(htmlParser.getErrorMessage(), "Java8 getErrorMessage");
-        assertEquals(7, htmlParser.getMethods().size(), "Java8 getMethods");
-
-        // should include javadoc for parameters
-        Map<String, String> params = htmlParser.getParameters().get("addFolderCollaboration");
-        assertEquals(3, params.size());
-        assertEquals("The role of the collaborator", params.get("role"));
-        assertEquals("The folder id", params.get("folderId"));
-        assertEquals("The collaborator, which is blah 123 and - something more.", params.get("collaborator"));
-
-        htmlParser.reset();
-    }
-
-}
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/test/resources/BoxCollaborationsManager.html b/tooling/maven/camel-api-component-maven-plugin/src/test/resources/BoxCollaborationsManager.html
deleted file mode 100644
index 25bc5f5..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/test/resources/BoxCollaborationsManager.html
+++ /dev/null
@@ -1,459 +0,0 @@
-<!DOCTYPE HTML>
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc -->
-<title>BoxCollaborationsManager (Camel :: Box :: API 3.5.0-SNAPSHOT API)</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<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="BoxCollaborationsManager (Camel :: Box :: API 3.5.0-SNAPSHOT API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete 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">
-<!-- ========= 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="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/BoxCollaborationsManager.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-all.html">Index</a></li>
-<li><a href="../../../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../../../../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<ul class="navListSearch">
-<li><label for="search">SEARCH:</label>
-<input type="text" id="search" value="search" disabled="disabled">
-<input type="reset" id="reset" value="reset" disabled="disabled">
-</li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-</div>
-<div class="navPadding">&nbsp;</div>
-<script type="text/javascript"><!--
-$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-//-->
-</script>
-</nav>
-</header>
-<!-- ======== START OF CLASS DATA ======== -->
-<main role="main">
-<div class="header">
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.camel.component.box.api</a></div>
-<h2 title="Class BoxCollaborationsManager" class="title">Class BoxCollaborationsManager</h2>
-</div>
-<div class="contentContainer">
-<ul class="inheritance">
-<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
-<li>
-<ul class="inheritance">
-<li>org.apache.camel.component.box.api.BoxCollaborationsManager</li>
-</ul>
-</li>
-</ul>
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<hr>
-<pre>public class <span class="typeNameLabel">BoxCollaborationsManager</span>
-extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></pre>
-<div class="block">Box Collaborations Manager
- <p>
- Provides operations to manage Box collaborations.</div>
-</li>
-</ul>
-</div>
-<div class="summary">
-<ul class="blockList">
-<li class="blockList">
-<!-- ======== CONSTRUCTOR SUMMARY ======== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="constructor.summary">
-<!--   -->
-</a>
-<h3>Constructor Summary</h3>
-<table class="memberSummary">
-<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Constructor</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(com.box.sdk.BoxAPIConnection)">BoxCollaborationsManager</a></span>&#8203;(com.box.sdk.BoxAPIConnection&nbsp;boxConnection)</code></th>
-<td class="colLast">
-<div class="block">Create collaborations manager to manage the comments of Box connection's authenticated user.</div>
-</td>
-</tr>
-</table>
-</li>
-</ul>
-</section>
-<!-- ========== METHOD SUMMARY =========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="method.summary">
-<!--   -->
-</a>
-<h3>Method Summary</h3>
-<table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
-<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>com.box.sdk.BoxCollaboration</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addFolderCollaboration(java.lang.String,com.box.sdk.BoxCollaborator,com.box.sdk.BoxCollaboration.Role)">addFolderCollaboration</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;folderId,
-                      com.box.sdk.BoxCollaborator&nbsp;collaborator,
-                      com.box.sdk.BoxCollaboration.Role&nbsp;role)</code></th>
-<td class="colLast">
-<div class="block">Add a collaboration to this folder.</div>
-</td>
-</tr>
-<tr id="i1" class="rowColor">
-<td class="colFirst"><code>com.box.sdk.BoxCollaboration</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addFolderCollaborationByEmail(java.lang.String,java.lang.String,com.box.sdk.BoxCollaboration.Role)">addFolderCollaborationByEmail</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;folderId,
-                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;email,
-                             com.box.sdk.BoxCollaboration.Role&nbsp;role)</code></th>
-<td class="colLast">
-<div class="block">Add a collaboration to this folder.</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deleteCollaboration(java.lang.String)">deleteCollaboration</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;collaborationId)</code></th>
-<td class="colLast">
-<div class="block">Delete collaboration.</div>
-</td>
-</tr>
-<tr id="i3" class="rowColor">
-<td class="colFirst"><code>com.box.sdk.BoxCollaboration.Info</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCollaborationInfo(java.lang.String)">getCollaborationInfo</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;collaborationId)</code></th>
-<td class="colLast">
-<div class="block">Get collaboration information.</div>
-</td>
-</tr>
-<tr id="i4" class="altColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;com.box.sdk.BoxCollaboration.Info&gt;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFolderCollaborations(java.lang.String)">getFolderCollaborations</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;folderId)</code></th>
-<td class="colLast">
-<div class="block">Get information about all of the collaborations for folder.</div>
-</td>
-</tr>
-<tr id="i5" class="rowColor">
-<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;com.box.sdk.BoxCollaboration.Info&gt;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPendingCollaborations()">getPendingCollaborations</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Get all pending collaboration invites for the current user.</div>
-</td>
-</tr>
-<tr id="i6" class="altColor">
-<td class="colFirst"><code>com.box.sdk.BoxCollaboration</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#updateCollaborationInfo(java.lang.String,com.box.sdk.BoxCollaboration.Info)">updateCollaborationInfo</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;collaborationId,
-                       com.box.sdk.BoxCollaboration.Info&nbsp;info)</code></th>
-<td class="colLast">
-<div class="block">Update collaboration information.</div>
-</td>
-</tr>
-</table>
-<ul class="blockList">
-<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
-<!--   -->
-</a>
-<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
-<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interfac [...]
-</ul>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-<div class="details">
-<ul class="blockList">
-<li class="blockList">
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="constructor.detail">
-<!--   -->
-</a>
-<h3>Constructor Detail</h3>
-<a id="&lt;init&gt;(com.box.sdk.BoxAPIConnection)">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>BoxCollaborationsManager</h4>
-<pre>public&nbsp;BoxCollaborationsManager&#8203;(com.box.sdk.BoxAPIConnection&nbsp;boxConnection)</pre>
-<div class="block">Create collaborations manager to manage the comments of Box connection's authenticated user.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>boxConnection</code> - - Box connection to authenticated user account.</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="getFolderCollaborations(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getFolderCollaborations</h4>
-<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;com.box.sdk.BoxCollaboration.Info&gt;&nbsp;getFolderCollaborations&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;folderId)</pre>
-<div class="block">Get information about all of the collaborations for folder.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>folderId</code> - the folder id.</dd>
-</dl>
-</li>
-</ul>
-<a id="addFolderCollaboration(java.lang.String,com.box.sdk.BoxCollaborator,com.box.sdk.BoxCollaboration.Role)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>addFolderCollaboration</h4>
-<pre class="methodSignature">public&nbsp;com.box.sdk.BoxCollaboration&nbsp;addFolderCollaboration&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;folderId,
-                                                           com.box.sdk.BoxCollaborator&nbsp;collaborator,
-                                                           com.box.sdk.BoxCollaboration.Role&nbsp;role)</pre>
-<div class="block">Add a collaboration to this folder.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>folderId</code> - the folder id.</dd>
-<dd><code>collaborator</code> - the collaborator, which is blah 123 and - something more.</dd>
-<dd><code>role</code> - the role of the collaborator.</dd>
-</dl>
-</li>
-</ul>
-<a id="addFolderCollaborationByEmail(java.lang.String,java.lang.String,com.box.sdk.BoxCollaboration.Role)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>addFolderCollaborationByEmail</h4>
-<pre class="methodSignature">public&nbsp;com.box.sdk.BoxCollaboration&nbsp;addFolderCollaborationByEmail&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;folderId,
-                                                                  <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;email,
-                                                                  com.box.sdk.BoxCollaboration.Role&nbsp;role)</pre>
-<div class="block">Add a collaboration to this folder. An email will be sent to the collaborator if they don't already have a Box
- account.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>folderId</code> - the folder id</dd>
-<dd><code>email</code> - the email address of the collaborator</dd>
-<dd><code>role</code> - the role of the collaborator</dd>
-</dl>
-</li>
-</ul>
-<a id="getCollaborationInfo(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getCollaborationInfo</h4>
-<pre class="methodSignature">public&nbsp;com.box.sdk.BoxCollaboration.Info&nbsp;getCollaborationInfo&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;collaborationId)</pre>
-<div class="block">Get collaboration information.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>collaborationId</code> - the id of collaboration</dd>
-</dl>
-</li>
-</ul>
-<a id="updateCollaborationInfo(java.lang.String,com.box.sdk.BoxCollaboration.Info)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>updateCollaborationInfo</h4>
-<pre class="methodSignature">public&nbsp;com.box.sdk.BoxCollaboration&nbsp;updateCollaborationInfo&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;collaborationId,
-                                                            com.box.sdk.BoxCollaboration.Info&nbsp;info)</pre>
-<div class="block">Update collaboration information.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>collaborationId</code> - the id of collaboration</dd>
-</dl>
-</li>
-</ul>
-<a id="deleteCollaboration(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>deleteCollaboration</h4>
-<pre class="methodSignature">public&nbsp;void&nbsp;deleteCollaboration&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;collaborationId)</pre>
-<div class="block">Delete collaboration.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>collaborationId</code> - the id of collaboration</dd>
-</dl>
-</li>
-</ul>
-<a id="getPendingCollaborations()">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>getPendingCollaborations</h4>
-<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util" class="externalLink">Collection</a>&lt;com.box.sdk.BoxCollaboration.Info&gt;&nbsp;getPendingCollaborations()</pre>
-<div class="block">Get all pending collaboration invites for the current user.</div>
-</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="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/BoxCollaborationsManager.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-all.html">Index</a></li>
-<li><a href="../../../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../../../../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-</nav>
-<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
-</footer>
-</body>
-</html>
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
deleted file mode 100644
index 26047be..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java11_String.html
+++ /dev/null
@@ -1,4097 +0,0 @@
-<!--
-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
--->
-<!DOCTYPE HTML>
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc -->
-<title>String (Java SE 11 &amp; JDK 11 [build 22])</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="keywords" content="java.lang.String class">
-<meta name="keywords" content="CASE_INSENSITIVE_ORDER">
-<meta name="keywords" content="length()">
-<meta name="keywords" content="isEmpty()">
-<meta name="keywords" content="charAt()">
-<meta name="keywords" content="codePointAt()">
-<meta name="keywords" content="codePointBefore()">
-<meta name="keywords" content="codePointCount()">
-<meta name="keywords" content="offsetByCodePoints()">
-<meta name="keywords" content="getChars()">
-<meta name="keywords" content="getBytes()">
-<meta name="keywords" content="equals()">
-<meta name="keywords" content="contentEquals()">
-<meta name="keywords" content="equalsIgnoreCase()">
-<meta name="keywords" content="compareTo()">
-<meta name="keywords" content="compareToIgnoreCase()">
-<meta name="keywords" content="regionMatches()">
-<meta name="keywords" content="startsWith()">
-<meta name="keywords" content="endsWith()">
-<meta name="keywords" content="hashCode()">
-<meta name="keywords" content="indexOf()">
-<meta name="keywords" content="lastIndexOf()">
-<meta name="keywords" content="substring()">
-<meta name="keywords" content="subSequence()">
-<meta name="keywords" content="concat()">
-<meta name="keywords" content="replace()">
-<meta name="keywords" content="matches()">
-<meta name="keywords" content="contains()">
-<meta name="keywords" content="replaceFirst()">
-<meta name="keywords" content="replaceAll()">
-<meta name="keywords" content="split()">
-<meta name="keywords" content="join()">
-<meta name="keywords" content="toLowerCase()">
-<meta name="keywords" content="toUpperCase()">
-<meta name="keywords" content="trim()">
-<meta name="keywords" content="strip()">
-<meta name="keywords" content="stripLeading()">
-<meta name="keywords" content="stripTrailing()">
-<meta name="keywords" content="isBlank()">
-<meta name="keywords" content="lines()">
-<meta name="keywords" content="toString()">
-<meta name="keywords" content="chars()">
-<meta name="keywords" content="codePoints()">
-<meta name="keywords" content="toCharArray()">
-<meta name="keywords" content="format()">
-<meta name="keywords" content="valueOf()">
-<meta name="keywords" content="copyValueOf()">
-<meta name="keywords" content="intern()">
-<meta name="keywords" content="repeat()">
-<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
-<script type="text/javascript" src="../../../script.js"></script>
-<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
-<!--[if IE]>
-<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
-<![endif]-->
-<script type="text/javascript" src="../../../jquery/jquery-3.3.1.js"></script>
-<script type="text/javascript" src="../../../jquery/jquery-migrate-3.0.1.js"></script>
-<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="String (Java SE 11 & JDK 11 [build 22])";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":9,"i13":9,"i14":10,"i15":10,"i16":10,"i17":9,"i18":9,"i19":10,"i20":42,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":9,"i33":9,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":10,"i54":10," [...]
-var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
-var altColor = "altColor";
-var rowColor = "rowColor";
-var tableTab = "tableTab";
-var activeTableTab = "activeTableTab";
-var pathtoroot = "../../../";
-var useModuleDirectories = true;
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<header role="banner">
-<nav role="navigation">
-<div class="fixedNav"><div style="padding: 6px; text-align: center; font-size: 80%; font-family: DejaVu Sans, Arial, Helvetica, sans-serif; font-weight: normal;">This specification is not final and is subject to change. Use is subject to <a href="http://www.oracle.com/technetwork/java/javase/terms/license/java11speclicense.html">license terms</a>.</div>
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a id="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../index.html">Overview</a></li>
-<li><a href="../../module-summary.html">Module</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/String.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../index-files/index-1.html">Index</a></li>
-<li><a href="../../../help-doc.html">Help</a></li>
-</ul>
-<div class="aboutLanguage"><div style="margin-top: 9px;"><strong>Java SE 11 &amp; JDK 11</strong> <br><strong>DRAFT 11-ea+22</strong></div></div>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<ul class="navListSearch">
-<li><label for="search">SEARCH:</label>
-<input type="text" id="search" value="search" disabled="disabled">
-<input type="reset" id="reset" value="reset" disabled="disabled">
-</li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-</div>
-<div class="navPadding">&nbsp;</div>
-<script type="text/javascript"><!--
-$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-//-->
-</script>
-</nav>
-</header>
-<!-- ======== START OF CLASS DATA ======== -->
-<main role="main">
-<div class="header">
-<div class="subTitle"><span class="moduleLabelInType">Module</span>&nbsp;<a href="../../module-summary.html">java.base</a></div>
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">java.lang</a></div>
-<h2 title="Class String" class="title">Class String</h2>
-</div>
-<div class="contentContainer">
-<ul class="inheritance">
-<li><a href="Object.html" title="class in java.lang">java.lang.Object</a></li>
-<li>
-<ul class="inheritance">
-<li>java.lang.String</li>
-</ul>
-</li>
-</ul>
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<dl>
-<dt>All Implemented Interfaces:</dt>
-<dd><code><a href="../io/Serializable.html" title="interface in java.io">Serializable</a></code>, <code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code>, <code><a href="Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;</code></dd>
-</dl>
-<hr>
-<pre>public final class <span class="typeNameLabel">String</span>
-extends <a href="Object.html" title="class in java.lang">Object</a>
-implements <a href="../io/Serializable.html" title="interface in java.io">Serializable</a>, <a href="Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;, <a href="CharSequence.html" title="interface in java.lang">CharSequence</a></pre>
-<div class="block">The <code>String</code> class represents character strings. All
- string literals in Java programs, such as <code>"abc"</code>, are
- implemented as instances of this class.
- <p>
- Strings are constant; their values cannot be changed after they
- are created. String buffers support mutable strings.
- Because String objects are immutable they can be shared. For example:
- <blockquote><pre>
-     String str = "abc";
- </pre></blockquote><p>
- is equivalent to:
- <blockquote><pre>
-     char data[] = {'a', 'b', 'c'};
-     String str = new String(data);
- </pre></blockquote><p>
- Here are some more examples of how strings can be used:
- <blockquote><pre>
-     System.out.println("abc");
-     String cde = "cde";
-     System.out.println("abc" + cde);
-     String c = "abc".substring(2,3);
-     String d = cde.substring(1, 2);
- </pre></blockquote>
- <p>
- The class <code>String</code> includes methods for examining
- individual characters of the sequence, for comparing strings, for
- searching strings, for extracting substrings, and for creating a
- copy of a string with all characters translated to uppercase or to
- lowercase. Case mapping is based on the Unicode Standard version
- specified by the <a href="Character.html" title="class in java.lang"><code>Character</code></a> class.
- <p>
- The Java language provides special support for the string
- concatenation operator (&nbsp;+&nbsp;), and for conversion of
- other objects to strings. For additional information on string
- concatenation and conversion, see <i>The Java&trade; Language Specification</i>.
-
- <p> Unless otherwise noted, passing a <code>null</code> argument to a constructor
- or method in this class will cause a <a href="NullPointerException.html" title="class in java.lang"><code>NullPointerException</code></a> to be
- thrown.
-
- <p>A <code>String</code> represents a string in the UTF-16 format
- in which <em>supplementary characters</em> are represented by <em>surrogate
- pairs</em> (see the section <a href="Character.html#unicode">Unicode
- Character Representations</a> in the <code>Character</code> class for
- more information).
- Index values refer to <code>char</code> code units, so a supplementary
- character uses two positions in a <code>String</code>.
- <p>The <code>String</code> class provides methods for dealing with
- Unicode code points (i.e., characters), in addition to those for
- dealing with Unicode code units (i.e., <code>char</code> values).
-
- <p>Unless otherwise noted, methods for comparing Strings do not take locale
- into account.  The <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class provides methods for
- finer-grain, locale-sensitive String comparison.</div>
-<dl>
-<dt><span class="simpleTagLabel">Implementation Note:</span></dt>
-<dd>The implementation of the string concatenation operator is left to
- the discretion of a Java compiler, as long as the compiler ultimately conforms
- to <i>The Java&trade; Language Specification</i>. For example, the <code>javac</code> compiler
- may implement the operator with <code>StringBuffer</code>, <code>StringBuilder</code>,
- or <code>java.lang.invoke.StringConcatFactory</code> depending on the JDK version. The
- implementation of string conversion is typically through the method <code>toString</code>,
- defined by <code>Object</code> and inherited by all classes in Java.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.0</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Object.html#toString()"><code>Object.toString()</code></a>, 
-<a href="StringBuffer.html" title="class in java.lang"><code>StringBuffer</code></a>, 
-<a href="StringBuilder.html" title="class in java.lang"><code>StringBuilder</code></a>, 
-<a href="../nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, 
-<a href="../../../serialized-form.html#java.lang.String">Serialized Form</a></dd>
-<dt><span class="simpleTagLabel">See <cite>The Java&trade; Language Specification</cite>:</span></dt>
-<dd>15.18.1 String Concatenation Operator +</dd>
-</dl>
-</li>
-</ul>
-</div>
-<div class="summary">
-<ul class="blockList">
-<li class="blockList">
-<!-- =========== FIELD SUMMARY =========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="field.summary">
-<!--   -->
-</a>
-<h3>Field Summary</h3>
-<table class="memberSummary">
-<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Field</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../util/Comparator.html" title="interface in java.util">Comparator</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#CASE_INSENSITIVE_ORDER">CASE_INSENSITIVE_ORDER</a></span></code></th>
-<td class="colLast">
-<div class="block">A Comparator that orders <code>String</code> objects as by
- <code>compareToIgnoreCase</code>.</div>
-</td>
-</tr>
-</table>
-</li>
-</ul>
-</section>
-<!-- ======== CONSTRUCTOR SUMMARY ======== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="constructor.summary">
-<!--   -->
-</a>
-<h3>Constructor Summary</h3>
-<table class="memberSummary">
-<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Constructor</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">String</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Initializes a newly created <code>String</code> object so that it represents
- an empty character sequence.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D)">String</a></span>&#8203;(byte[]&nbsp;bytes)</code></th>
-<td class="colLast">
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
- using the platform's default charset.</div>
-</td>
-</tr>
-<tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int)">String</a></span>&#8203;(byte[]&nbsp;ascii,
-      int&nbsp;hibyte)</code></th>
-<td class="colLast">
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">This method does not properly convert bytes into
- characters.</div>
-</div>
-</td>
-</tr>
-<tr class="rowColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int,int)">String</a></span>&#8203;(byte[]&nbsp;bytes,
-      int&nbsp;offset,
-      int&nbsp;length)</code></th>
-<td class="colLast">
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the platform's default charset.</div>
-</td>
-</tr>
-<tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int,int,int)">String</a></span>&#8203;(byte[]&nbsp;ascii,
-      int&nbsp;hibyte,
-      int&nbsp;offset,
-      int&nbsp;count)</code></th>
-<td class="colLast">
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">This method does not properly convert bytes into characters.</div>
-</div>
-</td>
-</tr>
-<tr class="rowColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int,int,java.lang.String)">String</a></span>&#8203;(byte[]&nbsp;bytes,
-      int&nbsp;offset,
-      int&nbsp;length,
-      <a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code></th>
-<td class="colLast">
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the specified charset.</div>
-</td>
-</tr>
-<tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,int,int,java.nio.charset.Charset)">String</a></span>&#8203;(byte[]&nbsp;bytes,
-      int&nbsp;offset,
-      int&nbsp;length,
-      <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code></th>
-<td class="colLast">
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,java.lang.String)">String</a></span>&#8203;(byte[]&nbsp;bytes,
-      <a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code></th>
-<td class="colLast">
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
- using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
-</td>
-</tr>
-<tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(byte%5B%5D,java.nio.charset.Charset)">String</a></span>&#8203;(byte[]&nbsp;bytes,
-      <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code></th>
-<td class="colLast">
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of
- bytes using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(char%5B%5D)">String</a></span>&#8203;(char[]&nbsp;value)</code></th>
-<td class="colLast">
-<div class="block">Allocates a new <code>String</code> so that it represents the sequence of
- characters currently contained in the character array argument.</div>
-</td>
-</tr>
-<tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(char%5B%5D,int,int)">String</a></span>&#8203;(char[]&nbsp;value,
-      int&nbsp;offset,
-      int&nbsp;count)</code></th>
-<td class="colLast">
-<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
- of the character array argument.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(int%5B%5D,int,int)">String</a></span>&#8203;(int[]&nbsp;codePoints,
-      int&nbsp;offset,
-      int&nbsp;count)</code></th>
-<td class="colLast">
-<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
- of the <a href="Character.html#unicode">Unicode code point</a> array
- argument.</div>
-</td>
-</tr>
-<tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String)">String</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;original)</code></th>
-<td class="colLast">
-<div class="block">Initializes a newly created <code>String</code> object so that it represents
- the same sequence of characters as the argument; in other words, the
- newly created string is a copy of the argument string.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.StringBuffer)">String</a></span>&#8203;(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;buffer)</code></th>
-<td class="colLast">
-<div class="block">Allocates a new string that contains the sequence of characters
- currently contained in the string buffer argument.</div>
-</td>
-</tr>
-<tr class="altColor">
-<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.StringBuilder)">String</a></span>&#8203;(<a href="StringBuilder.html" title="class in java.lang">StringBuilder</a>&nbsp;builder)</code></th>
-<td class="colLast">
-<div class="block">Allocates a new string that contains the sequence of characters
- currently contained in the string builder argument.</div>
-</td>
-</tr>
-</table>
-</li>
-</ul>
-</section>
-<!-- ========== METHOD SUMMARY =========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="method.summary">
-<!--   -->
-</a>
-<h3>Method Summary</h3>
-<table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Method</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tr id="i0" class="altColor">
-<td class="colFirst"><code>char</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#charAt(int)">charAt</a></span>&#8203;(int&nbsp;index)</code></th>
-<td class="colLast">
-<div class="block">Returns the <code>char</code> value at the
- specified index.</div>
-</td>
-</tr>
-<tr id="i1" class="rowColor">
-<td class="colFirst"><code><a href="../util/stream/IntStream.html" title="interface in java.util.stream">IntStream</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#chars()">chars</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns a stream of <code>int</code> zero-extending the <code>char</code> values
- from this sequence.</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#codePointAt(int)">codePointAt</a></span>&#8203;(int&nbsp;index)</code></th>
-<td class="colLast">
-<div class="block">Returns the character (Unicode code point) at the specified
- index.</div>
-</td>
-</tr>
-<tr id="i3" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#codePointBefore(int)">codePointBefore</a></span>&#8203;(int&nbsp;index)</code></th>
-<td class="colLast">
-<div class="block">Returns the character (Unicode code point) before the specified
- index.</div>
-</td>
-</tr>
-<tr id="i4" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#codePointCount(int,int)">codePointCount</a></span>&#8203;(int&nbsp;beginIndex,
-              int&nbsp;endIndex)</code></th>
-<td class="colLast">
-<div class="block">Returns the number of Unicode code points in the specified text
- range of this <code>String</code>.</div>
-</td>
-</tr>
-<tr id="i5" class="rowColor">
-<td class="colFirst"><code><a href="../util/stream/IntStream.html" title="interface in java.util.stream">IntStream</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#codePoints()">codePoints</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns a stream of code point values from this sequence.</div>
-</td>
-</tr>
-<tr id="i6" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#compareTo(java.lang.String)">compareTo</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;anotherString)</code></th>
-<td class="colLast">
-<div class="block">Compares two strings lexicographically.</div>
-</td>
-</tr>
-<tr id="i7" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#compareToIgnoreCase(java.lang.String)">compareToIgnoreCase</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</code></th>
-<td class="colLast">
-<div class="block">Compares two strings lexicographically, ignoring case
- differences.</div>
-</td>
-</tr>
-<tr id="i8" class="altColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#concat(java.lang.String)">concat</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</code></th>
-<td class="colLast">
-<div class="block">Concatenates the specified string to the end of this string.</div>
-</td>
-</tr>
-<tr id="i9" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contains(java.lang.CharSequence)">contains</a></span>&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;s)</code></th>
-<td class="colLast">
-<div class="block">Returns true if and only if this string contains the specified
- sequence of char values.</div>
-</td>
-</tr>
-<tr id="i10" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contentEquals(java.lang.CharSequence)">contentEquals</a></span>&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;cs)</code></th>
-<td class="colLast">
-<div class="block">Compares this string to the specified <code>CharSequence</code>.</div>
-</td>
-</tr>
-<tr id="i11" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#contentEquals(java.lang.StringBuffer)">contentEquals</a></span>&#8203;(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;sb)</code></th>
-<td class="colLast">
-<div class="block">Compares this string to the specified <code>StringBuffer</code>.</div>
-</td>
-</tr>
-<tr id="i12" class="altColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#copyValueOf(char%5B%5D)">copyValueOf</a></span>&#8203;(char[]&nbsp;data)</code></th>
-<td class="colLast">
-<div class="block">Equivalent to <a href="#valueOf(char%5B%5D)"><code>valueOf(char[])</code></a>.</div>
-</td>
-</tr>
-<tr id="i13" class="rowColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#copyValueOf(char%5B%5D,int,int)">copyValueOf</a></span>&#8203;(char[]&nbsp;data,
-           int&nbsp;offset,
-           int&nbsp;count)</code></th>
-<td class="colLast">
-<div class="block">Equivalent to <a href="#valueOf(char%5B%5D,int,int)"><code>valueOf(char[], int, int)</code></a>.</div>
-</td>
-</tr>
-<tr id="i14" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#endsWith(java.lang.String)">endsWith</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;suffix)</code></th>
-<td class="colLast">
-<div class="block">Tests if this string ends with the specified suffix.</div>
-</td>
-</tr>
-<tr id="i15" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#equals(java.lang.Object)">equals</a></span>&#8203;(<a href="Object.html" title="class in java.lang">Object</a>&nbsp;anObject)</code></th>
-<td class="colLast">
-<div class="block">Compares this string to the specified object.</div>
-</td>
-</tr>
-<tr id="i16" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#equalsIgnoreCase(java.lang.String)">equalsIgnoreCase</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;anotherString)</code></th>
-<td class="colLast">
-<div class="block">Compares this <code>String</code> to another <code>String</code>, ignoring case
- considerations.</div>
-</td>
-</tr>
-<tr id="i17" class="rowColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#format(java.lang.String,java.lang.Object...)">format</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;format,
-      <a href="Object.html" title="class in java.lang">Object</a>...&nbsp;args)</code></th>
-<td class="colLast">
-<div class="block">Returns a formatted string using the specified format string and
- arguments.</div>
-</td>
-</tr>
-<tr id="i18" class="altColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#format(java.util.Locale,java.lang.String,java.lang.Object...)">format</a></span>&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;l,
-      <a href="String.html" title="class in java.lang">String</a>&nbsp;format,
-      <a href="Object.html" title="class in java.lang">Object</a>...&nbsp;args)</code></th>
-<td class="colLast">
-<div class="block">Returns a formatted string using the specified locale, format string,
- and arguments.</div>
-</td>
-</tr>
-<tr id="i19" class="rowColor">
-<td class="colFirst"><code>byte[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes()">getBytes</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the
- platform's default charset, storing the result into a new byte array.</div>
-</td>
-</tr>
-<tr id="i20" class="altColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes(int,int,byte%5B%5D,int)">getBytes</a></span>&#8203;(int&nbsp;srcBegin,
-        int&nbsp;srcEnd,
-        byte[]&nbsp;dst,
-        int&nbsp;dstBegin)</code></th>
-<td class="colLast">
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">This method does not properly convert characters into
- bytes.</div>
-</div>
-</td>
-</tr>
-<tr id="i21" class="rowColor">
-<td class="colFirst"><code>byte[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes(java.lang.String)">getBytes</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code></th>
-<td class="colLast">
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the named
- charset, storing the result into a new byte array.</div>
-</td>
-</tr>
-<tr id="i22" class="altColor">
-<td class="colFirst"><code>byte[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes(java.nio.charset.Charset)">getBytes</a></span>&#8203;(<a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code></th>
-<td class="colLast">
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the given
- <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>, storing the result into a
- new byte array.</div>
-</td>
-</tr>
-<tr id="i23" class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getChars(int,int,char%5B%5D,int)">getChars</a></span>&#8203;(int&nbsp;srcBegin,
-        int&nbsp;srcEnd,
-        char[]&nbsp;dst,
-        int&nbsp;dstBegin)</code></th>
-<td class="colLast">
-<div class="block">Copies characters from this string into the destination character
- array.</div>
-</td>
-</tr>
-<tr id="i24" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hashCode()">hashCode</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns a hash code for this string.</div>
-</td>
-</tr>
-<tr id="i25" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#indexOf(int)">indexOf</a></span>&#8203;(int&nbsp;ch)</code></th>
-<td class="colLast">
-<div class="block">Returns the index within this string of the first occurrence of
- the specified character.</div>
-</td>
-</tr>
-<tr id="i26" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#indexOf(int,int)">indexOf</a></span>&#8203;(int&nbsp;ch,
-       int&nbsp;fromIndex)</code></th>
-<td class="colLast">
-<div class="block">Returns the index within this string of the first occurrence of the
- specified character, starting the search at the specified index.</div>
-</td>
-</tr>
-<tr id="i27" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#indexOf(java.lang.String)">indexOf</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</code></th>
-<td class="colLast">
-<div class="block">Returns the index within this string of the first occurrence of the
- specified substring.</div>
-</td>
-</tr>
-<tr id="i28" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#indexOf(java.lang.String,int)">indexOf</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str,
-       int&nbsp;fromIndex)</code></th>
-<td class="colLast">
-<div class="block">Returns the index within this string of the first occurrence of the
- specified substring, starting at the specified index.</div>
-</td>
-</tr>
-<tr id="i29" class="rowColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#intern()">intern</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns a canonical representation for the string object.</div>
-</td>
-</tr>
-<tr id="i30" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isBlank()">isBlank</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns <code>true</code> if the string is empty or contains only
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a> codepoints,
- otherwise <code>false</code>.</div>
-</td>
-</tr>
-<tr id="i31" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isEmpty()">isEmpty</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns <code>true</code> if, and only if, <a href="#length()"><code>length()</code></a> is <code>0</code>.</div>
-</td>
-</tr>
-<tr id="i32" class="altColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#join(java.lang.CharSequence,java.lang.CharSequence...)">join</a></span>&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
-    <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>...&nbsp;elements)</code></th>
-<td class="colLast">
-<div class="block">Returns a new String composed of copies of the
- <code>CharSequence elements</code> joined together with a copy of
- the specified <code>delimiter</code>.</div>
-</td>
-</tr>
-<tr id="i33" class="rowColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#join(java.lang.CharSequence,java.lang.Iterable)">join</a></span>&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
-    <a href="Iterable.html" title="interface in java.lang">Iterable</a>&lt;? extends <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&gt;&nbsp;elements)</code></th>
-<td class="colLast">
-<div class="block">Returns a new <code>String</code> composed of copies of the
- <code>CharSequence elements</code> joined together with a copy of the
- specified <code>delimiter</code>.</div>
-</td>
-</tr>
-<tr id="i34" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lastIndexOf(int)">lastIndexOf</a></span>&#8203;(int&nbsp;ch)</code></th>
-<td class="colLast">
-<div class="block">Returns the index within this string of the last occurrence of
- the specified character.</div>
-</td>
-</tr>
-<tr id="i35" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lastIndexOf(int,int)">lastIndexOf</a></span>&#8203;(int&nbsp;ch,
-           int&nbsp;fromIndex)</code></th>
-<td class="colLast">
-<div class="block">Returns the index within this string of the last occurrence of
- the specified character, searching backward starting at the
- specified index.</div>
-</td>
-</tr>
-<tr id="i36" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lastIndexOf(java.lang.String)">lastIndexOf</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</code></th>
-<td class="colLast">
-<div class="block">Returns the index within this string of the last occurrence of the
- specified substring.</div>
-</td>
-</tr>
-<tr id="i37" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lastIndexOf(java.lang.String,int)">lastIndexOf</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str,
-           int&nbsp;fromIndex)</code></th>
-<td class="colLast">
-<div class="block">Returns the index within this string of the last occurrence of the
- specified substring, searching backward starting at the specified index.</div>
-</td>
-</tr>
-<tr id="i38" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#length()">length</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns the length of this string.</div>
-</td>
-</tr>
-<tr id="i39" class="rowColor">
-<td class="colFirst"><code><a href="../util/stream/Stream.html" title="interface in java.util.stream">Stream</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lines()">lines</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns a stream of substrings extracted from this string
- partitioned by line terminators.</div>
-</td>
-</tr>
-<tr id="i40" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#matches(java.lang.String)">matches</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex)</code></th>
-<td class="colLast">
-<div class="block">Tells whether or not this string matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
-</td>
-</tr>
-<tr id="i41" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#offsetByCodePoints(int,int)">offsetByCodePoints</a></span>&#8203;(int&nbsp;index,
-                  int&nbsp;codePointOffset)</code></th>
-<td class="colLast">
-<div class="block">Returns the index within this <code>String</code> that is
- offset from the given <code>index</code> by
- <code>codePointOffset</code> code points.</div>
-</td>
-</tr>
-<tr id="i42" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#regionMatches(boolean,int,java.lang.String,int,int)">regionMatches</a></span>&#8203;(boolean&nbsp;ignoreCase,
-             int&nbsp;toffset,
-             <a href="String.html" title="class in java.lang">String</a>&nbsp;other,
-             int&nbsp;ooffset,
-             int&nbsp;len)</code></th>
-<td class="colLast">
-<div class="block">Tests if two string regions are equal.</div>
-</td>
-</tr>
-<tr id="i43" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#regionMatches(int,java.lang.String,int,int)">regionMatches</a></span>&#8203;(int&nbsp;toffset,
-             <a href="String.html" title="class in java.lang">String</a>&nbsp;other,
-             int&nbsp;ooffset,
-             int&nbsp;len)</code></th>
-<td class="colLast">
-<div class="block">Tests if two string regions are equal.</div>
-</td>
-</tr>
-<tr id="i44" class="altColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#repeat(int)">repeat</a></span>&#8203;(int&nbsp;count)</code></th>
-<td class="colLast">
-<div class="block">Returns a string whose value is the concatenation of this
- string repeated <code>count</code> times.</div>
-</td>
-</tr>
-<tr id="i45" class="rowColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#replace(char,char)">replace</a></span>&#8203;(char&nbsp;oldChar,
-       char&nbsp;newChar)</code></th>
-<td class="colLast">
-<div class="block">Returns a string resulting from replacing all occurrences of
- <code>oldChar</code> in this string with <code>newChar</code>.</div>
-</td>
-</tr>
-<tr id="i46" class="altColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#replace(java.lang.CharSequence,java.lang.CharSequence)">replace</a></span>&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;target,
-       <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;replacement)</code></th>
-<td class="colLast">
-<div class="block">Replaces each substring of this string that matches the literal target
- sequence with the specified literal replacement sequence.</div>
-</td>
-</tr>
-<tr id="i47" class="rowColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#replaceAll(java.lang.String,java.lang.String)">replaceAll</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
-          <a href="String.html" title="class in java.lang">String</a>&nbsp;replacement)</code></th>
-<td class="colLast">
-<div class="block">Replaces each substring of this string that matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a> with the
- given replacement.</div>
-</td>
-</tr>
-<tr id="i48" class="altColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#replaceFirst(java.lang.String,java.lang.String)">replaceFirst</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
-            <a href="String.html" title="class in java.lang">String</a>&nbsp;replacement)</code></th>
-<td class="colLast">
-<div class="block">Replaces the first substring of this string that matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a> with the
- given replacement.</div>
-</td>
-</tr>
-<tr id="i49" class="rowColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a>[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#split(java.lang.String)">split</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex)</code></th>
-<td class="colLast">
-<div class="block">Splits this string around matches of the given <a href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
-</td>
-</tr>
-<tr id="i50" class="altColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a>[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#split(java.lang.String,int)">split</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
-     int&nbsp;limit)</code></th>
-<td class="colLast">
-<div class="block">Splits this string around matches of the given
- <a href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
-</td>
-</tr>
-<tr id="i51" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#startsWith(java.lang.String)">startsWith</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;prefix)</code></th>
-<td class="colLast">
-<div class="block">Tests if this string starts with the specified prefix.</div>
-</td>
-</tr>
-<tr id="i52" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#startsWith(java.lang.String,int)">startsWith</a></span>&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;prefix,
-          int&nbsp;toffset)</code></th>
-<td class="colLast">
-<div class="block">Tests if the substring of this string beginning at the
- specified index starts with the specified prefix.</div>
-</td>
-</tr>
-<tr id="i53" class="rowColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#strip()">strip</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns a string whose value is this string, with all leading
- and trailing <a href="Character.html#isWhitespace(int)"><code>white space</code></a>
- removed.</div>
-</td>
-</tr>
-<tr id="i54" class="altColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stripLeading()">stripLeading</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns a string whose value is this string, with all leading
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a> removed.</div>
-</td>
-</tr>
-<tr id="i55" class="rowColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stripTrailing()">stripTrailing</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns a string whose value is this string, with all trailing
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a> removed.</div>
-</td>
-</tr>
-<tr id="i56" class="altColor">
-<td class="colFirst"><code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#subSequence(int,int)">subSequence</a></span>&#8203;(int&nbsp;beginIndex,
-           int&nbsp;endIndex)</code></th>
-<td class="colLast">
-<div class="block">Returns a character sequence that is a subsequence of this sequence.</div>
-</td>
-</tr>
-<tr id="i57" class="rowColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#substring(int)">substring</a></span>&#8203;(int&nbsp;beginIndex)</code></th>
-<td class="colLast">
-<div class="block">Returns a string that is a substring of this string.</div>
-</td>
-</tr>
-<tr id="i58" class="altColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#substring(int,int)">substring</a></span>&#8203;(int&nbsp;beginIndex,
-         int&nbsp;endIndex)</code></th>
-<td class="colLast">
-<div class="block">Returns a string that is a substring of this string.</div>
-</td>
-</tr>
-<tr id="i59" class="rowColor">
-<td class="colFirst"><code>char[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toCharArray()">toCharArray</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Converts this string to a new character array.</div>
-</td>
-</tr>
-<tr id="i60" class="altColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toLowerCase()">toLowerCase</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Converts all of the characters in this <code>String</code> to lower
- case using the rules of the default locale.</div>
-</td>
-</tr>
-<tr id="i61" class="rowColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toLowerCase(java.util.Locale)">toLowerCase</a></span>&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</code></th>
-<td class="colLast">
-<div class="block">Converts all of the characters in this <code>String</code> to lower
- case using the rules of the given <code>Locale</code>.</div>
-</td>
-</tr>
-<tr id="i62" class="altColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
-<td class="colLast">
-<div class="block">This object (which is already a string!)</div>
-</td>
-</tr>
-<tr id="i63" class="rowColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toUpperCase()">toUpperCase</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Converts all of the characters in this <code>String</code> to upper
- case using the rules of the default locale.</div>
-</td>
-</tr>
-<tr id="i64" class="altColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toUpperCase(java.util.Locale)">toUpperCase</a></span>&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</code></th>
-<td class="colLast">
-<div class="block">Converts all of the characters in this <code>String</code> to upper
- case using the rules of the given <code>Locale</code>.</div>
-</td>
-</tr>
-<tr id="i65" class="rowColor">
-<td class="colFirst"><code><a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#trim()">trim</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns a string whose value is this string, with all leading
- and trailing space removed, where space is defined
- as any character whose codepoint is less than or equal to
- <code>'U+0020'</code> (the space character).</div>
-</td>
-</tr>
-<tr id="i66" class="altColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(boolean)">valueOf</a></span>&#8203;(boolean&nbsp;b)</code></th>
-<td class="colLast">
-<div class="block">Returns the string representation of the <code>boolean</code> argument.</div>
-</td>
-</tr>
-<tr id="i67" class="rowColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(char)">valueOf</a></span>&#8203;(char&nbsp;c)</code></th>
-<td class="colLast">
-<div class="block">Returns the string representation of the <code>char</code>
- argument.</div>
-</td>
-</tr>
-<tr id="i68" class="altColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(char%5B%5D)">valueOf</a></span>&#8203;(char[]&nbsp;data)</code></th>
-<td class="colLast">
-<div class="block">Returns the string representation of the <code>char</code> array
- argument.</div>
-</td>
-</tr>
-<tr id="i69" class="rowColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(char%5B%5D,int,int)">valueOf</a></span>&#8203;(char[]&nbsp;data,
-       int&nbsp;offset,
-       int&nbsp;count)</code></th>
-<td class="colLast">
-<div class="block">Returns the string representation of a specific subarray of the
- <code>char</code> array argument.</div>
-</td>
-</tr>
-<tr id="i70" class="altColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(double)">valueOf</a></span>&#8203;(double&nbsp;d)</code></th>
-<td class="colLast">
-<div class="block">Returns the string representation of the <code>double</code> argument.</div>
-</td>
-</tr>
-<tr id="i71" class="rowColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(float)">valueOf</a></span>&#8203;(float&nbsp;f)</code></th>
-<td class="colLast">
-<div class="block">Returns the string representation of the <code>float</code> argument.</div>
-</td>
-</tr>
-<tr id="i72" class="altColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(int)">valueOf</a></span>&#8203;(int&nbsp;i)</code></th>
-<td class="colLast">
-<div class="block">Returns the string representation of the <code>int</code> argument.</div>
-</td>
-</tr>
-<tr id="i73" class="rowColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(long)">valueOf</a></span>&#8203;(long&nbsp;l)</code></th>
-<td class="colLast">
-<div class="block">Returns the string representation of the <code>long</code> argument.</div>
-</td>
-</tr>
-<tr id="i74" class="altColor">
-<td class="colFirst"><code>static <a href="String.html" title="class in java.lang">String</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(java.lang.Object)">valueOf</a></span>&#8203;(<a href="Object.html" title="class in java.lang">Object</a>&nbsp;obj)</code></th>
-<td class="colLast">
-<div class="block">Returns the string representation of the <code>Object</code> argument.</div>
-</td>
-</tr>
-</table>
-<ul class="blockList">
-<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
-<!--   -->
-</a>
-<h3>Methods declared in class&nbsp;java.lang.<a href="Object.html" title="class in java.lang">Object</a></h3>
-<code><a href="Object.html#clone()">clone</a>, <a href="Object.html#finalize()">finalize</a>, <a href="Object.html#getClass()">getClass</a>, <a href="Object.html#notify()">notify</a>, <a href="Object.html#notifyAll()">notifyAll</a>, <a href="Object.html#wait()">wait</a>, <a href="Object.html#wait(long)">wait</a>, <a href="Object.html#wait(long,int)">wait</a></code></li>
-</ul>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-<div class="details">
-<ul class="blockList">
-<li class="blockList">
-<!-- ============ FIELD DETAIL =========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="field.detail">
-<!--   -->
-</a>
-<h3>Field Detail</h3>
-<a id="CASE_INSENSITIVE_ORDER">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>CASE_INSENSITIVE_ORDER</h4>
-<pre>public static final&nbsp;<a href="../util/Comparator.html" title="interface in java.util">Comparator</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt; CASE_INSENSITIVE_ORDER</pre>
-<div class="block">A Comparator that orders <code>String</code> objects as by
- <code>compareToIgnoreCase</code>. This comparator is serializable.
- <p>
- Note that this Comparator does <em>not</em> take locale into account,
- and will result in an unsatisfactory ordering for certain locales.
- The <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class provides locale-sensitive comparison.</div>
-<dl>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.2</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a></dd>
-</dl>
-</li>
-</ul>
-</li>
-</ul>
-</section>
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="constructor.detail">
-<!--   -->
-</a>
-<h3>Constructor Detail</h3>
-<a id="&lt;init&gt;()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String()</pre>
-<div class="block">Initializes a newly created <code>String</code> object so that it represents
- an empty character sequence.  Note that use of this constructor is
- unnecessary since Strings are immutable.</div>
-</li>
-</ul>
-<a id="&lt;init&gt;(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;original)</pre>
-<div class="block">Initializes a newly created <code>String</code> object so that it represents
- the same sequence of characters as the argument; in other words, the
- newly created string is a copy of the argument string. Unless an
- explicit copy of <code>original</code> is needed, use of this constructor is
- unnecessary since Strings are immutable.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>original</code> - A <code>String</code></dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(char[])">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(char[]&nbsp;value)</pre>
-<div class="block">Allocates a new <code>String</code> so that it represents the sequence of
- characters currently contained in the character array argument. The
- contents of the character array are copied; subsequent modification of
- the character array does not affect the newly created string.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>value</code> - The initial value of the string</dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(char[],int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(char[]&nbsp;value,
-              int&nbsp;offset,
-              int&nbsp;count)</pre>
-<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
- of the character array argument. The <code>offset</code> argument is the
- index of the first character of the subarray and the <code>count</code>
- argument specifies the length of the subarray. The contents of the
- subarray are copied; subsequent modification of the character array does
- not affect the newly created string.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>value</code> - Array that is the source of characters</dd>
-<dd><code>offset</code> - The initial offset</dd>
-<dd><code>count</code> - The length</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>count</code> is negative, or
-          <code>offset</code> is greater than <code>value.length - count</code></dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(int[],int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(int[]&nbsp;codePoints,
-              int&nbsp;offset,
-              int&nbsp;count)</pre>
-<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
- of the <a href="Character.html#unicode">Unicode code point</a> array
- argument.  The <code>offset</code> argument is the index of the first code
- point of the subarray and the <code>count</code> argument specifies the
- length of the subarray.  The contents of the subarray are converted to
- <code>char</code>s; subsequent modification of the <code>int</code> array does not
- affect the newly created string.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>codePoints</code> - Array that is the source of Unicode code points</dd>
-<dd><code>offset</code> - The initial offset</dd>
-<dd><code>count</code> - The length</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - If any invalid Unicode code point is found in <code>
-          codePoints</code></dd>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>count</code> is negative, or
-          <code>offset</code> is greater than <code>codePoints.length - count</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(byte[],int,int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre><a href="Deprecated.html" title="annotation in java.lang">@Deprecated</a>(<a href="Deprecated.html#since()">since</a>="1.1")
-public&nbsp;String&#8203;(byte[]&nbsp;ascii,
-              int&nbsp;hibyte,
-              int&nbsp;offset,
-              int&nbsp;count)</pre>
-<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">This method does not properly convert bytes into characters.
- As of JDK&nbsp;1.1, the preferred way to do this is via the
- <code>String</code> constructors that take a <a href="../nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, charset name, or that use the platform's
- default charset.</div>
-</div>
-<div class="block">Allocates a new <code>String</code> constructed from a subarray of an array
- of 8-bit integer values.
-
- <p> The <code>offset</code> argument is the index of the first byte of the
- subarray, and the <code>count</code> argument specifies the length of the
- subarray.
-
- <p> Each <code>byte</code> in the subarray is converted to a <code>char</code> as
- specified in the <a href="#%3Cinit%3E(byte%5B%5D,int)"><code>String(byte[],int)</code></a> constructor.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ascii</code> - The bytes to be converted to characters</dd>
-<dd><code>hibyte</code> - The top 8 bits of each 16-bit Unicode code unit</dd>
-<dd><code>offset</code> - The initial offset</dd>
-<dd><code>count</code> - The length</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>count</code> is negative, or
-          <code>offset</code> is greater than <code>ascii.length - count</code></dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="#%3Cinit%3E(byte%5B%5D,int)"><code>String(byte[], int)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D,int,int,java.lang.String)"><code>String(byte[], int, int, java.lang.String)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D,int,int,java.nio.charset.Charset)"><code>String(byte[], int, int, java.nio.charset.Charset)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D,int,int)"><code>String(byte[], int, int)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D,java.lang.String)"><code>String(byte[], java.lang.String)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D,java.nio.charset.Charset)"><code>String(byte[], java.nio.charset.Charset)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D)"><code>String(byte[])</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(byte[],int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre><a href="Deprecated.html" title="annotation in java.lang">@Deprecated</a>(<a href="Deprecated.html#since()">since</a>="1.1")
-public&nbsp;String&#8203;(byte[]&nbsp;ascii,
-              int&nbsp;hibyte)</pre>
-<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">This method does not properly convert bytes into
- characters.  As of JDK&nbsp;1.1, the preferred way to do this is via the
- <code>String</code> constructors that take a <a href="../nio/charset/Charset.html" title="class in java.nio.charset"><code>Charset</code></a>, charset name, or that use the platform's
- default charset.</div>
-</div>
-<div class="block">Allocates a new <code>String</code> containing characters constructed from
- an array of 8-bit integer values. Each character <i>c</i> in the
- resulting string is constructed from the corresponding component
- <i>b</i> in the byte array such that:
-
- <blockquote><pre>
-     <b><i>c</i></b> == (char)(((hibyte &amp; 0xff) &lt;&lt; 8)
-                         | (<b><i>b</i></b> &amp; 0xff))
- </pre></blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ascii</code> - The bytes to be converted to characters</dd>
-<dd><code>hibyte</code> - The top 8 bits of each 16-bit Unicode code unit</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="#%3Cinit%3E(byte%5B%5D,int,int,java.lang.String)"><code>String(byte[], int, int, java.lang.String)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D,int,int,java.nio.charset.Charset)"><code>String(byte[], int, int, java.nio.charset.Charset)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D,int,int)"><code>String(byte[], int, int)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D,java.lang.String)"><code>String(byte[], java.lang.String)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D,java.nio.charset.Charset)"><code>String(byte[], java.nio.charset.Charset)</code></a>, 
-<a href="#%3Cinit%3E(byte%5B%5D)"><code>String(byte[])</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(byte[],int,int,java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes,
-              int&nbsp;offset,
-              int&nbsp;length,
-              <a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)
-       throws <a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the specified charset.  The length of the new <code>String</code>
- is a function of the charset, and hence may not be equal to the length
- of the subarray.
-
- <p> The behavior of this constructor when the given bytes are not valid
- in the given charset is unspecified.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
-<dd><code>offset</code> - The index of the first byte to decode</dd>
-<dd><code>length</code> - The number of bytes to decode</dd>
-<dd><code>charsetName</code> - The name of a supported <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></code> - If the named charset is not supported</dd>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>length</code> is negative, or
-          <code>offset</code> is greater than <code>bytes.length - length</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.1</dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(byte[],int,int,java.nio.charset.Charset)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes,
-              int&nbsp;offset,
-              int&nbsp;length,
-              <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.
- The length of the new <code>String</code> is a function of the charset, and
- hence may not be equal to the length of the subarray.
-
- <p> This method always replaces malformed-input and unmappable-character
- sequences with this charset's default replacement string.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
-<dd><code>offset</code> - The index of the first byte to decode</dd>
-<dd><code>length</code> - The number of bytes to decode</dd>
-<dd><code>charset</code> - The <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a> to be used to
-         decode the <code>bytes</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>length</code> is negative, or
-          <code>offset</code> is greater than <code>bytes.length - length</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.6</dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(byte[],java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes,
-              <a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)
-       throws <a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
- using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.  The
- length of the new <code>String</code> is a function of the charset, and hence
- may not be equal to the length of the byte array.
-
- <p> The behavior of this constructor when the given bytes are not valid
- in the given charset is unspecified.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
-<dd><code>charsetName</code> - The name of a supported <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></code> - If the named charset is not supported</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.1</dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(byte[],java.nio.charset.Charset)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes,
-              <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of
- bytes using the specified <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.
- The length of the new <code>String</code> is a function of the charset, and
- hence may not be equal to the length of the byte array.
-
- <p> This method always replaces malformed-input and unmappable-character
- sequences with this charset's default replacement string.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
-<dd><code>charset</code> - The <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a> to be used to
-         decode the <code>bytes</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.6</dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(byte[],int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes,
-              int&nbsp;offset,
-              int&nbsp;length)</pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the platform's default charset.  The length of the new
- <code>String</code> is a function of the charset, and hence may not be equal
- to the length of the subarray.
-
- <p> The behavior of this constructor when the given bytes are not valid
- in the default charset is unspecified.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
-<dd><code>offset</code> - The index of the first byte to decode</dd>
-<dd><code>length</code> - The number of bytes to decode</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If <code>offset</code> is negative, <code>length</code> is negative, or
-          <code>offset</code> is greater than <code>bytes.length - length</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.1</dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(byte[])">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(byte[]&nbsp;bytes)</pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
- using the platform's default charset.  The length of the new <code>
- String</code> is a function of the charset, and hence may not be equal to the
- length of the byte array.
-
- <p> The behavior of this constructor when the given bytes are not valid
- in the default charset is unspecified.  The <a href="../nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.1</dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(java.lang.StringBuffer)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;buffer)</pre>
-<div class="block">Allocates a new string that contains the sequence of characters
- currently contained in the string buffer argument. The contents of the
- string buffer are copied; subsequent modification of the string buffer
- does not affect the newly created string.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>buffer</code> - A <code>StringBuffer</code></dd>
-</dl>
-</li>
-</ul>
-<a id="&lt;init&gt;(java.lang.StringBuilder)">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String&#8203;(<a href="StringBuilder.html" title="class in java.lang">StringBuilder</a>&nbsp;builder)</pre>
-<div class="block">Allocates a new string that contains the sequence of characters
- currently contained in the string builder argument. The contents of the
- string builder are copied; subsequent modification of the string builder
- does not affect the newly created string.
-
- <p> This constructor is provided to ease migration to <code>
- StringBuilder</code>. Obtaining a string from a string builder via the <code>
- toString</code> method is likely to run faster and is generally preferred.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>builder</code> - A <code>StringBuilder</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-</li>
-</ul>
-</section>
-<!-- ============ METHOD DETAIL ========== -->
-<section role="region">
-<ul class="blockList">
-<li class="blockList"><a id="method.detail">
-<!--   -->
-</a>
-<h3>Method Detail</h3>
-<a id="length()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>length</h4>
-<pre>public&nbsp;int&nbsp;length()</pre>
-<div class="block">Returns the length of this string.
- The length is equal to the number of <a href="Character.html#unicode">Unicode
- code units</a> in the string.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="CharSequence.html#length()">length</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the length of the sequence of characters represented by this
-          object.</dd>
-</dl>
-</li>
-</ul>
-<a id="isEmpty()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>isEmpty</h4>
-<pre>public&nbsp;boolean&nbsp;isEmpty()</pre>
-<div class="block">Returns <code>true</code> if, and only if, <a href="#length()"><code>length()</code></a> is <code>0</code>.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if <a href="#length()"><code>length()</code></a> is <code>0</code>, otherwise
- <code>false</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.6</dd>
-</dl>
-</li>
-</ul>
-<a id="charAt(int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>charAt</h4>
-<pre>public&nbsp;char&nbsp;charAt&#8203;(int&nbsp;index)</pre>
-<div class="block">Returns the <code>char</code> value at the
- specified index. An index ranges from <code>0</code> to
- <code>length() - 1</code>. The first <code>char</code> value of the sequence
- is at index <code>0</code>, the next at index <code>1</code>,
- and so on, as for array indexing.
-
- <p>If the <code>char</code> value specified by the index is a
- <a href="Character.html#unicode">surrogate</a>, the surrogate
- value is returned.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="CharSequence.html#charAt(int)">charAt</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>index</code> - the index of the <code>char</code> value.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the <code>char</code> value at the specified index of this string.
-             The first <code>char</code> value is at index <code>0</code>.</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the <code>index</code>
-             argument is negative or not less than the length of this
-             string.</dd>
-</dl>
-</li>
-</ul>
-<a id="codePointAt(int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>codePointAt</h4>
-<pre>public&nbsp;int&nbsp;codePointAt&#8203;(int&nbsp;index)</pre>
-<div class="block">Returns the character (Unicode code point) at the specified
- index. The index refers to <code>char</code> values
- (Unicode code units) and ranges from <code>0</code> to
- <a href="#length()"><code>length()</code></a><code> - 1</code>.
-
- <p> If the <code>char</code> value specified at the given index
- is in the high-surrogate range, the following index is less
- than the length of this <code>String</code>, and the
- <code>char</code> value at the following index is in the
- low-surrogate range, then the supplementary code point
- corresponding to this surrogate pair is returned. Otherwise,
- the <code>char</code> value at the given index is returned.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>index</code> - the index to the <code>char</code> values</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the code point value of the character at the
-             <code>index</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the <code>index</code>
-             argument is negative or not less than the length of this
-             string.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a id="codePointBefore(int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>codePointBefore</h4>
-<pre>public&nbsp;int&nbsp;codePointBefore&#8203;(int&nbsp;index)</pre>
-<div class="block">Returns the character (Unicode code point) before the specified
- index. The index refers to <code>char</code> values
- (Unicode code units) and ranges from <code>1</code> to <a href="CharSequence.html#length()"><code>length</code></a>.
-
- <p> If the <code>char</code> value at <code>(index - 1)</code>
- is in the low-surrogate range, <code>(index - 2)</code> is not
- negative, and the <code>char</code> value at <code>(index -
- 2)</code> is in the high-surrogate range, then the
- supplementary code point value of the surrogate pair is
- returned. If the <code>char</code> value at <code>index -
- 1</code> is an unpaired low-surrogate or a high-surrogate, the
- surrogate value is returned.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>index</code> - the index following the code point that should be returned</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the Unicode code point value before the given index.</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the <code>index</code>
-            argument is less than 1 or greater than the length
-            of this string.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a id="codePointCount(int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>codePointCount</h4>
-<pre>public&nbsp;int&nbsp;codePointCount&#8203;(int&nbsp;beginIndex,
-                          int&nbsp;endIndex)</pre>
-<div class="block">Returns the number of Unicode code points in the specified text
- range of this <code>String</code>. The text range begins at the
- specified <code>beginIndex</code> and extends to the
- <code>char</code> at index <code>endIndex - 1</code>. Thus the
- length (in <code>char</code>s) of the text range is
- <code>endIndex-beginIndex</code>. Unpaired surrogates within
- the text range count as one code point each.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>beginIndex</code> - the index to the first <code>char</code> of
- the text range.</dd>
-<dd><code>endIndex</code> - the index after the last <code>char</code> of
- the text range.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the number of Unicode code points in the specified text
- range</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the
- <code>beginIndex</code> is negative, or <code>endIndex</code>
- is larger than the length of this <code>String</code>, or
- <code>beginIndex</code> is larger than <code>endIndex</code>.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a id="offsetByCodePoints(int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>offsetByCodePoints</h4>
-<pre>public&nbsp;int&nbsp;offsetByCodePoints&#8203;(int&nbsp;index,
-                              int&nbsp;codePointOffset)</pre>
-<div class="block">Returns the index within this <code>String</code> that is
- offset from the given <code>index</code> by
- <code>codePointOffset</code> code points. Unpaired surrogates
- within the text range given by <code>index</code> and
- <code>codePointOffset</code> count as one code point each.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>index</code> - the index to be offset</dd>
-<dd><code>codePointOffset</code> - the offset in code points</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index within this <code>String</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if <code>index</code>
-   is negative or larger then the length of this
-   <code>String</code>, or if <code>codePointOffset</code> is positive
-   and the substring starting with <code>index</code> has fewer
-   than <code>codePointOffset</code> code points,
-   or if <code>codePointOffset</code> is negative and the substring
-   before <code>index</code> has fewer than the absolute value
-   of <code>codePointOffset</code> code points.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a id="getChars(int,int,char[],int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getChars</h4>
-<pre>public&nbsp;void&nbsp;getChars&#8203;(int&nbsp;srcBegin,
-                     int&nbsp;srcEnd,
-                     char[]&nbsp;dst,
-                     int&nbsp;dstBegin)</pre>
-<div class="block">Copies characters from this string into the destination character
- array.
- <p>
- The first character to be copied is at index <code>srcBegin</code>;
- the last character to be copied is at index <code>srcEnd-1</code>
- (thus the total number of characters to be copied is
- <code>srcEnd-srcBegin</code>). The characters are copied into the
- subarray of <code>dst</code> starting at index <code>dstBegin</code>
- and ending at index:
- <blockquote><pre>
-     dstBegin + (srcEnd-srcBegin) - 1
- </pre></blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>srcBegin</code> - index of the first character in the string
-                        to copy.</dd>
-<dd><code>srcEnd</code> - index after the last character in the string
-                        to copy.</dd>
-<dd><code>dst</code> - the destination array.</dd>
-<dd><code>dstBegin</code> - the start offset in the destination array.</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If any of the following
-            is true:
-            <ul><li><code>srcBegin</code> is negative.
-            <li><code>srcBegin</code> is greater than <code>srcEnd</code>
-            <li><code>srcEnd</code> is greater than the length of this
-                string
-            <li><code>dstBegin</code> is negative
-            <li><code>dstBegin+(srcEnd-srcBegin)</code> is larger than
-                <code>dst.length</code></ul></dd>
-</dl>
-</li>
-</ul>
-<a id="getBytes(int,int,byte[],int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getBytes</h4>
-<pre><a href="Deprecated.html" title="annotation in java.lang">@Deprecated</a>(<a href="Deprecated.html#since()">since</a>="1.1")
-public&nbsp;void&nbsp;getBytes&#8203;(int&nbsp;srcBegin,
-                     int&nbsp;srcEnd,
-                     byte[]&nbsp;dst,
-                     int&nbsp;dstBegin)</pre>
-<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">This method does not properly convert characters into
- bytes.  As of JDK&nbsp;1.1, the preferred way to do this is via the
- <a href="#getBytes()"><code>getBytes()</code></a> method, which uses the platform's default charset.</div>
-</div>
-<div class="block">Copies characters from this string into the destination byte array. Each
- byte receives the 8 low-order bits of the corresponding character. The
- eight high-order bits of each character are not copied and do not
- participate in the transfer in any way.
-
- <p> The first character to be copied is at index <code>srcBegin</code>; the
- last character to be copied is at index <code>srcEnd-1</code>.  The total
- number of characters to be copied is <code>srcEnd-srcBegin</code>. The
- characters, converted to bytes, are copied into the subarray of <code>
- dst</code> starting at index <code>dstBegin</code> and ending at index:
-
- <blockquote><pre>
-     dstBegin + (srcEnd-srcBegin) - 1
- </pre></blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>srcBegin</code> - Index of the first character in the string to copy</dd>
-<dd><code>srcEnd</code> - Index after the last character in the string to copy</dd>
-<dd><code>dst</code> - The destination array</dd>
-<dd><code>dstBegin</code> - The start offset in the destination array</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If any of the following is true:
-          <ul>
-            <li> <code>srcBegin</code> is negative
-            <li> <code>srcBegin</code> is greater than <code>srcEnd</code>
-            <li> <code>srcEnd</code> is greater than the length of this String
-            <li> <code>dstBegin</code> is negative
-            <li> <code>dstBegin+(srcEnd-srcBegin)</code> is larger than <code>
-                 dst.length</code>
-          </ul></dd>
-</dl>
-</li>
-</ul>
-<a id="getBytes(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getBytes</h4>
-<pre>public&nbsp;byte[]&nbsp;getBytes&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;charsetName)
-                throws <a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the named
- charset, storing the result into a new byte array.
-
- <p> The behavior of this method when this string cannot be encoded in
- the given charset is unspecified.  The <a href="../nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more control
- over the encoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>charsetName</code> - The name of a supported <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The resultant byte array</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></code> - If the named charset is not supported</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.1</dd>
-</dl>
-</li>
-</ul>
-<a id="getBytes(java.nio.charset.Charset)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getBytes</h4>
-<pre>public&nbsp;byte[]&nbsp;getBytes&#8203;(<a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the given
- <a href="../nio/charset/Charset.html" title="class in java.nio.charset">charset</a>, storing the result into a
- new byte array.
-
- <p> This method always replaces malformed-input and unmappable-character
- sequences with this charset's default replacement byte array.  The
- <a href="../nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more
- control over the encoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>charset</code> - The <a href="../nio/charset/Charset.html" title="class in java.nio.charset">Charset</a> to be used to encode
-         the <code>String</code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The resultant byte array</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.6</dd>
-</dl>
-</li>
-</ul>
-<a id="getBytes()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getBytes</h4>
-<pre>public&nbsp;byte[]&nbsp;getBytes()</pre>
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the
- platform's default charset, storing the result into a new byte array.
-
- <p> The behavior of this method when this string cannot be encoded in
- the default charset is unspecified.  The <a href="../nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more control
- over the encoding process is required.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The resultant byte array</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.1</dd>
-</dl>
-</li>
-</ul>
-<a id="equals(java.lang.Object)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>equals</h4>
-<pre>public&nbsp;boolean&nbsp;equals&#8203;(<a href="Object.html" title="class in java.lang">Object</a>&nbsp;anObject)</pre>
-<div class="block">Compares this string to the specified object.  The result is <code>
- true</code> if and only if the argument is not <code>null</code> and is a <code>
- String</code> object that represents the same sequence of characters as this
- object.
-
- <p>For finer-grained String comparison, refer to
- <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a>.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code><a href="Object.html#equals(java.lang.Object)">equals</a></code>&nbsp;in class&nbsp;<code><a href="Object.html" title="class in java.lang">Object</a></code></dd>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>anObject</code> - The object to compare this <code>String</code> against</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if the given object represents a <code>String</code>
-          equivalent to this string, <code>false</code> otherwise</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="#compareTo(java.lang.String)"><code>compareTo(String)</code></a>, 
-<a href="#equalsIgnoreCase(java.lang.String)"><code>equalsIgnoreCase(String)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="contentEquals(java.lang.StringBuffer)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>contentEquals</h4>
-<pre>public&nbsp;boolean&nbsp;contentEquals&#8203;(<a href="StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;sb)</pre>
-<div class="block">Compares this string to the specified <code>StringBuffer</code>.  The result
- is <code>true</code> if and only if this <code>String</code> represents the same
- sequence of characters as the specified <code>StringBuffer</code>. This method
- synchronizes on the <code>StringBuffer</code>.
-
- <p>For finer-grained String comparison, refer to
- <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a>.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>sb</code> - The <code>StringBuffer</code> to compare this <code>String</code> against</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if this <code>String</code> represents the same
-          sequence of characters as the specified <code>StringBuffer</code>,
-          <code>false</code> otherwise</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.4</dd>
-</dl>
-</li>
-</ul>
-<a id="contentEquals(java.lang.CharSequence)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>contentEquals</h4>
-<pre>public&nbsp;boolean&nbsp;contentEquals&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;cs)</pre>
-<div class="block">Compares this string to the specified <code>CharSequence</code>.  The
- result is <code>true</code> if and only if this <code>String</code> represents the
- same sequence of char values as the specified sequence. Note that if the
- <code>CharSequence</code> is a <code>StringBuffer</code> then the method
- synchronizes on it.
-
- <p>For finer-grained String comparison, refer to
- <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a>.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>cs</code> - The sequence to compare this <code>String</code> against</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if this <code>String</code> represents the same
-          sequence of char values as the specified sequence, <code>
-          false</code> otherwise</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a id="equalsIgnoreCase(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>equalsIgnoreCase</h4>
-<pre>public&nbsp;boolean&nbsp;equalsIgnoreCase&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;anotherString)</pre>
-<div class="block">Compares this <code>String</code> to another <code>String</code>, ignoring case
- considerations.  Two strings are considered equal ignoring case if they
- are of the same length and corresponding characters in the two strings
- are equal ignoring case.
-
- <p> Two characters <code>c1</code> and <code>c2</code> are considered the same
- ignoring case if at least one of the following is true:
- <ul>
-   <li> The two characters are the same (as compared by the
-        <code>==</code> operator)
-   <li> Calling <code>Character.toLowerCase(Character.toUpperCase(char))</code>
-        on each character produces the same result
- </ul>
-
- <p>Note that this method does <em>not</em> take locale into account, and
- will result in unsatisfactory results for certain locales.  The
- <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class provides locale-sensitive comparison.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>anotherString</code> - The <code>String</code> to compare this <code>String</code> against</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if the argument is not <code>null</code> and it
-          represents an equivalent <code>String</code> ignoring case; <code>
-          false</code> otherwise</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="#equals(java.lang.Object)"><code>equals(Object)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="compareTo(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>compareTo</h4>
-<pre>public&nbsp;int&nbsp;compareTo&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;anotherString)</pre>
-<div class="block">Compares two strings lexicographically.
- The comparison is based on the Unicode value of each character in
- the strings. The character sequence represented by this
- <code>String</code> object is compared lexicographically to the
- character sequence represented by the argument string. The result is
- a negative integer if this <code>String</code> object
- lexicographically precedes the argument string. The result is a
- positive integer if this <code>String</code> object lexicographically
- follows the argument string. The result is zero if the strings
- are equal; <code>compareTo</code> returns <code>0</code> exactly when
- the <a href="#equals(java.lang.Object)"><code>equals(Object)</code></a> method would return <code>true</code>.
- <p>
- This is the definition of lexicographic ordering. If two strings are
- different, then either they have different characters at some index
- that is a valid index for both strings, or their lengths are different,
- or both. If they have different characters at one or more index
- positions, let <i>k</i> be the smallest such index; then the string
- whose character at position <i>k</i> has the smaller value, as
- determined by using the <code>&lt;</code> operator, lexicographically precedes the
- other string. In this case, <code>compareTo</code> returns the
- difference of the two character values at position <code>k</code> in
- the two string -- that is, the value:
- <blockquote><pre>
- this.charAt(k)-anotherString.charAt(k)
- </pre></blockquote>
- If there is no index position at which they differ, then the shorter
- string lexicographically precedes the longer string. In this case,
- <code>compareTo</code> returns the difference of the lengths of the
- strings -- that is, the value:
- <blockquote><pre>
- this.length()-anotherString.length()
- </pre></blockquote>
-
- <p>For finer-grained String comparison, refer to
- <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a>.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="Comparable.html#compareTo(T)">compareTo</a></code>&nbsp;in interface&nbsp;<code><a href="Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;</code></dd>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>anotherString</code> - the <code>String</code> to be compared.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the value <code>0</code> if the argument string is equal to
-          this string; a value less than <code>0</code> if this string
-          is lexicographically less than the string argument; and a
-          value greater than <code>0</code> if this string is
-          lexicographically greater than the string argument.</dd>
-</dl>
-</li>
-</ul>
-<a id="compareToIgnoreCase(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>compareToIgnoreCase</h4>
-<pre>public&nbsp;int&nbsp;compareToIgnoreCase&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
-<div class="block">Compares two strings lexicographically, ignoring case
- differences. This method returns an integer whose sign is that of
- calling <code>compareTo</code> with normalized versions of the strings
- where case differences have been eliminated by calling
- <code>Character.toLowerCase(Character.toUpperCase(character))</code> on
- each character.
- <p>
- Note that this method does <em>not</em> take locale into account,
- and will result in an unsatisfactory ordering for certain locales.
- The <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class provides locale-sensitive comparison.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>str</code> - the <code>String</code> to be compared.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a negative integer, zero, or a positive integer as the
-          specified String is greater than, equal to, or less
-          than this String, ignoring case considerations.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.2</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="regionMatches(int,java.lang.String,int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>regionMatches</h4>
-<pre>public&nbsp;boolean&nbsp;regionMatches&#8203;(int&nbsp;toffset,
-                             <a href="String.html" title="class in java.lang">String</a>&nbsp;other,
-                             int&nbsp;ooffset,
-                             int&nbsp;len)</pre>
-<div class="block">Tests if two string regions are equal.
- <p>
- A substring of this <code>String</code> object is compared to a substring
- of the argument other. The result is true if these substrings
- represent identical character sequences. The substring of this
- <code>String</code> object to be compared begins at index <code>toffset</code>
- and has length <code>len</code>. The substring of other to be compared
- begins at index <code>ooffset</code> and has length <code>len</code>. The
- result is <code>false</code> if and only if at least one of the following
- is true:
- <ul><li><code>toffset</code> is negative.
- <li><code>ooffset</code> is negative.
- <li><code>toffset+len</code> is greater than the length of this
- <code>String</code> object.
- <li><code>ooffset+len</code> is greater than the length of the other
- argument.
- <li>There is some nonnegative integer <i>k</i> less than <code>len</code>
- such that:
- <code>this.charAt(toffset + </code><i>k</i><code>) != other.charAt(ooffset + </code>
- <i>k</i><code>)</code>
- </ul>
-
- <p>Note that this method does <em>not</em> take locale into account.  The
- <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class provides locale-sensitive comparison.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>toffset</code> - the starting offset of the subregion in this string.</dd>
-<dd><code>other</code> - the string argument.</dd>
-<dd><code>ooffset</code> - the starting offset of the subregion in the string
-                    argument.</dd>
-<dd><code>len</code> - the number of characters to compare.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if the specified subregion of this string
-          exactly matches the specified subregion of the string argument;
-          <code>false</code> otherwise.</dd>
-</dl>
-</li>
-</ul>
-<a id="regionMatches(boolean,int,java.lang.String,int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>regionMatches</h4>
-<pre>public&nbsp;boolean&nbsp;regionMatches&#8203;(boolean&nbsp;ignoreCase,
-                             int&nbsp;toffset,
-                             <a href="String.html" title="class in java.lang">String</a>&nbsp;other,
-                             int&nbsp;ooffset,
-                             int&nbsp;len)</pre>
-<div class="block">Tests if two string regions are equal.
- <p>
- A substring of this <code>String</code> object is compared to a substring
- of the argument <code>other</code>. The result is <code>true</code> if these
- substrings represent character sequences that are the same, ignoring
- case if and only if <code>ignoreCase</code> is true. The substring of
- this <code>String</code> object to be compared begins at index
- <code>toffset</code> and has length <code>len</code>. The substring of
- <code>other</code> to be compared begins at index <code>ooffset</code> and
- has length <code>len</code>. The result is <code>false</code> if and only if
- at least one of the following is true:
- <ul><li><code>toffset</code> is negative.
- <li><code>ooffset</code> is negative.
- <li><code>toffset+len</code> is greater than the length of this
- <code>String</code> object.
- <li><code>ooffset+len</code> is greater than the length of the other
- argument.
- <li><code>ignoreCase</code> is <code>false</code> and there is some nonnegative
- integer <i>k</i> less than <code>len</code> such that:
- <blockquote><pre>
- this.charAt(toffset+k) != other.charAt(ooffset+k)
- </pre></blockquote>
- <li><code>ignoreCase</code> is <code>true</code> and there is some nonnegative
- integer <i>k</i> less than <code>len</code> such that:
- <blockquote><pre>
- Character.toLowerCase(Character.toUpperCase(this.charAt(toffset+k))) !=
-     Character.toLowerCase(Character.toUpperCase(other.charAt(ooffset+k)))
- </pre></blockquote>
- </ul>
-
- <p>Note that this method does <em>not</em> take locale into account,
- and will result in unsatisfactory results for certain locales when
- <code>ignoreCase</code> is <code>true</code>.  The <a href="../text/Collator.html" title="class in java.text"><code>Collator</code></a> class
- provides locale-sensitive comparison.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ignoreCase</code> - if <code>true</code>, ignore case when comparing
-                       characters.</dd>
-<dd><code>toffset</code> - the starting offset of the subregion in this
-                       string.</dd>
-<dd><code>other</code> - the string argument.</dd>
-<dd><code>ooffset</code> - the starting offset of the subregion in the string
-                       argument.</dd>
-<dd><code>len</code> - the number of characters to compare.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if the specified subregion of this string
-          matches the specified subregion of the string argument;
-          <code>false</code> otherwise. Whether the matching is exact
-          or case insensitive depends on the <code>ignoreCase</code>
-          argument.</dd>
-</dl>
-</li>
-</ul>
-<a id="startsWith(java.lang.String,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>startsWith</h4>
-<pre>public&nbsp;boolean&nbsp;startsWith&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;prefix,
-                          int&nbsp;toffset)</pre>
-<div class="block">Tests if the substring of this string beginning at the
- specified index starts with the specified prefix.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>prefix</code> - the prefix.</dd>
-<dd><code>toffset</code> - where to begin looking in this string.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if the character sequence represented by the
-          argument is a prefix of the substring of this object starting
-          at index <code>toffset</code>; <code>false</code> otherwise.
-          The result is <code>false</code> if <code>toffset</code> is
-          negative or greater than the length of this
-          <code>String</code> object; otherwise the result is the same
-          as the result of the expression
-          <pre>
-          this.substring(toffset).startsWith(prefix)
-          </pre></dd>
-</dl>
-</li>
-</ul>
-<a id="startsWith(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>startsWith</h4>
-<pre>public&nbsp;boolean&nbsp;startsWith&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;prefix)</pre>
-<div class="block">Tests if this string starts with the specified prefix.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>prefix</code> - the prefix.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if the character sequence represented by the
-          argument is a prefix of the character sequence represented by
-          this string; <code>false</code> otherwise.
-          Note also that <code>true</code> will be returned if the
-          argument is an empty string or is equal to this
-          <code>String</code> object as determined by the
-          <a href="#equals(java.lang.Object)"><code>equals(Object)</code></a> method.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.0</dd>
-</dl>
-</li>
-</ul>
-<a id="endsWith(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>endsWith</h4>
-<pre>public&nbsp;boolean&nbsp;endsWith&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;suffix)</pre>
-<div class="block">Tests if this string ends with the specified suffix.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>suffix</code> - the suffix.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if the character sequence represented by the
-          argument is a suffix of the character sequence represented by
-          this object; <code>false</code> otherwise. Note that the
-          result will be <code>true</code> if the argument is the
-          empty string or is equal to this <code>String</code> object
-          as determined by the <a href="#equals(java.lang.Object)"><code>equals(Object)</code></a> method.</dd>
-</dl>
-</li>
-</ul>
-<a id="hashCode()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>hashCode</h4>
-<pre>public&nbsp;int&nbsp;hashCode()</pre>
-<div class="block">Returns a hash code for this string. The hash code for a
- <code>String</code> object is computed as
- <blockquote><pre>
- s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
- </pre></blockquote>
- using <code>int</code> arithmetic, where <code>s[i]</code> is the
- <i>i</i>th character of the string, <code>n</code> is the length of
- the string, and <code>^</code> indicates exponentiation.
- (The hash value of the empty string is zero.)</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code><a href="Object.html#hashCode()">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="Object.html" title="class in java.lang">Object</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a hash code value for this object.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Object.html#equals(java.lang.Object)"><code>Object.equals(java.lang.Object)</code></a>, 
-<a href="System.html#identityHashCode(java.lang.Object)"><code>System.identityHashCode(java.lang.Object)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="indexOf(int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>indexOf</h4>
-<pre>public&nbsp;int&nbsp;indexOf&#8203;(int&nbsp;ch)</pre>
-<div class="block">Returns the index within this string of the first occurrence of
- the specified character. If a character with value
- <code>ch</code> occurs in the character sequence represented by
- this <code>String</code> object, then the index (in Unicode
- code units) of the first such occurrence is returned. For
- values of <code>ch</code> in the range from 0 to 0xFFFF
- (inclusive), this is the smallest value <i>k</i> such that:
- <blockquote><pre>
- this.charAt(<i>k</i>) == ch
- </pre></blockquote>
- is true. For other values of <code>ch</code>, it is the
- smallest value <i>k</i> such that:
- <blockquote><pre>
- this.codePointAt(<i>k</i>) == ch
- </pre></blockquote>
- is true. In either case, if no such character occurs in this
- string, then <code>-1</code> is returned.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ch</code> - a character (Unicode code point).</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index of the first occurrence of the character in the
-          character sequence represented by this object, or
-          <code>-1</code> if the character does not occur.</dd>
-</dl>
-</li>
-</ul>
-<a id="indexOf(int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>indexOf</h4>
-<pre>public&nbsp;int&nbsp;indexOf&#8203;(int&nbsp;ch,
-                   int&nbsp;fromIndex)</pre>
-<div class="block">Returns the index within this string of the first occurrence of the
- specified character, starting the search at the specified index.
- <p>
- If a character with value <code>ch</code> occurs in the
- character sequence represented by this <code>String</code>
- object at an index no smaller than <code>fromIndex</code>, then
- the index of the first such occurrence is returned. For values
- of <code>ch</code> in the range from 0 to 0xFFFF (inclusive),
- this is the smallest value <i>k</i> such that:
- <blockquote><pre>
- (this.charAt(<i>k</i>) == ch) <code>&amp;&amp;</code> (<i>k</i> &gt;= fromIndex)
- </pre></blockquote>
- is true. For other values of <code>ch</code>, it is the
- smallest value <i>k</i> such that:
- <blockquote><pre>
- (this.codePointAt(<i>k</i>) == ch) <code>&amp;&amp;</code> (<i>k</i> &gt;= fromIndex)
- </pre></blockquote>
- is true. In either case, if no such character occurs in this
- string at or after position <code>fromIndex</code>, then
- <code>-1</code> is returned.
-
- <p>
- There is no restriction on the value of <code>fromIndex</code>. If it
- is negative, it has the same effect as if it were zero: this entire
- string may be searched. If it is greater than the length of this
- string, it has the same effect as if it were equal to the length of
- this string: <code>-1</code> is returned.
-
- <p>All indices are specified in <code>char</code> values
- (Unicode code units).</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ch</code> - a character (Unicode code point).</dd>
-<dd><code>fromIndex</code> - the index to start the search from.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index of the first occurrence of the character in the
-          character sequence represented by this object that is greater
-          than or equal to <code>fromIndex</code>, or <code>-1</code>
-          if the character does not occur.</dd>
-</dl>
-</li>
-</ul>
-<a id="lastIndexOf(int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>lastIndexOf</h4>
-<pre>public&nbsp;int&nbsp;lastIndexOf&#8203;(int&nbsp;ch)</pre>
-<div class="block">Returns the index within this string of the last occurrence of
- the specified character. For values of <code>ch</code> in the
- range from 0 to 0xFFFF (inclusive), the index (in Unicode code
- units) returned is the largest value <i>k</i> such that:
- <blockquote><pre>
- this.charAt(<i>k</i>) == ch
- </pre></blockquote>
- is true. For other values of <code>ch</code>, it is the
- largest value <i>k</i> such that:
- <blockquote><pre>
- this.codePointAt(<i>k</i>) == ch
- </pre></blockquote>
- is true.  In either case, if no such character occurs in this
- string, then <code>-1</code> is returned.  The
- <code>String</code> is searched backwards starting at the last
- character.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ch</code> - a character (Unicode code point).</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index of the last occurrence of the character in the
-          character sequence represented by this object, or
-          <code>-1</code> if the character does not occur.</dd>
-</dl>
-</li>
-</ul>
-<a id="lastIndexOf(int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>lastIndexOf</h4>
-<pre>public&nbsp;int&nbsp;lastIndexOf&#8203;(int&nbsp;ch,
-                       int&nbsp;fromIndex)</pre>
-<div class="block">Returns the index within this string of the last occurrence of
- the specified character, searching backward starting at the
- specified index. For values of <code>ch</code> in the range
- from 0 to 0xFFFF (inclusive), the index returned is the largest
- value <i>k</i> such that:
- <blockquote><pre>
- (this.charAt(<i>k</i>) == ch) <code>&amp;&amp;</code> (<i>k</i> &lt;= fromIndex)
- </pre></blockquote>
- is true. For other values of <code>ch</code>, it is the
- largest value <i>k</i> such that:
- <blockquote><pre>
- (this.codePointAt(<i>k</i>) == ch) <code>&amp;&amp;</code> (<i>k</i> &lt;= fromIndex)
- </pre></blockquote>
- is true. In either case, if no such character occurs in this
- string at or before position <code>fromIndex</code>, then
- <code>-1</code> is returned.
-
- <p>All indices are specified in <code>char</code> values
- (Unicode code units).</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ch</code> - a character (Unicode code point).</dd>
-<dd><code>fromIndex</code> - the index to start the search from. There is no
-          restriction on the value of <code>fromIndex</code>. If it is
-          greater than or equal to the length of this string, it has
-          the same effect as if it were equal to one less than the
-          length of this string: this entire string may be searched.
-          If it is negative, it has the same effect as if it were -1:
-          -1 is returned.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index of the last occurrence of the character in the
-          character sequence represented by this object that is less
-          than or equal to <code>fromIndex</code>, or <code>-1</code>
-          if the character does not occur before that point.</dd>
-</dl>
-</li>
-</ul>
-<a id="indexOf(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>indexOf</h4>
-<pre>public&nbsp;int&nbsp;indexOf&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
-<div class="block">Returns the index within this string of the first occurrence of the
- specified substring.
-
- <p>The returned index is the smallest value <code>k</code> for which:
- <pre><code>
- this.startsWith(str, k)
- </code></pre>
- If no such value of <code>k</code> exists, then <code>-1</code> is returned.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>str</code> - the substring to search for.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index of the first occurrence of the specified substring,
-          or <code>-1</code> if there is no such occurrence.</dd>
-</dl>
-</li>
-</ul>
-<a id="indexOf(java.lang.String,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>indexOf</h4>
-<pre>public&nbsp;int&nbsp;indexOf&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str,
-                   int&nbsp;fromIndex)</pre>
-<div class="block">Returns the index within this string of the first occurrence of the
- specified substring, starting at the specified index.
-
- <p>The returned index is the smallest value <code>k</code> for which:
- <pre><code>
-     k &gt;= Math.min(fromIndex, this.length()) &amp;&amp;
-                   this.startsWith(str, k)
- </code></pre>
- If no such value of <code>k</code> exists, then <code>-1</code> is returned.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>str</code> - the substring to search for.</dd>
-<dd><code>fromIndex</code> - the index from which to start the search.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index of the first occurrence of the specified substring,
-          starting at the specified index,
-          or <code>-1</code> if there is no such occurrence.</dd>
-</dl>
-</li>
-</ul>
-<a id="lastIndexOf(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>lastIndexOf</h4>
-<pre>public&nbsp;int&nbsp;lastIndexOf&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
-<div class="block">Returns the index within this string of the last occurrence of the
- specified substring.  The last occurrence of the empty string ""
- is considered to occur at the index value <code>this.length()</code>.
-
- <p>The returned index is the largest value <code>k</code> for which:
- <pre><code>
- this.startsWith(str, k)
- </code></pre>
- If no such value of <code>k</code> exists, then <code>-1</code> is returned.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>str</code> - the substring to search for.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index of the last occurrence of the specified substring,
-          or <code>-1</code> if there is no such occurrence.</dd>
-</dl>
-</li>
-</ul>
-<a id="lastIndexOf(java.lang.String,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>lastIndexOf</h4>
-<pre>public&nbsp;int&nbsp;lastIndexOf&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str,
-                       int&nbsp;fromIndex)</pre>
-<div class="block">Returns the index within this string of the last occurrence of the
- specified substring, searching backward starting at the specified index.
-
- <p>The returned index is the largest value <code>k</code> for which:
- <pre><code>
-     k &lt;= Math.min(fromIndex, this.length()) &amp;&amp;
-                   this.startsWith(str, k)
- </code></pre>
- If no such value of <code>k</code> exists, then <code>-1</code> is returned.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>str</code> - the substring to search for.</dd>
-<dd><code>fromIndex</code> - the index to start the search from.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index of the last occurrence of the specified substring,
-          searching backward from the specified index,
-          or <code>-1</code> if there is no such occurrence.</dd>
-</dl>
-</li>
-</ul>
-<a id="substring(int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>substring</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;substring&#8203;(int&nbsp;beginIndex)</pre>
-<div class="block">Returns a string that is a substring of this string. The
- substring begins with the character at the specified index and
- extends to the end of this string. <p>
- Examples:
- <blockquote><pre>
- "unhappy".substring(2) returns "happy"
- "Harbison".substring(3) returns "bison"
- "emptiness".substring(9) returns "" (an empty string)
- </pre></blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>beginIndex</code> - the beginning index, inclusive.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the specified substring.</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if
-             <code>beginIndex</code> is negative or larger than the
-             length of this <code>String</code> object.</dd>
-</dl>
-</li>
-</ul>
-<a id="substring(int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>substring</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;substring&#8203;(int&nbsp;beginIndex,
-                        int&nbsp;endIndex)</pre>
-<div class="block">Returns a string that is a substring of this string. The
- substring begins at the specified <code>beginIndex</code> and
- extends to the character at index <code>endIndex - 1</code>.
- Thus the length of the substring is <code>endIndex-beginIndex</code>.
- <p>
- Examples:
- <blockquote><pre>
- "hamburger".substring(4, 8) returns "urge"
- "smiles".substring(1, 5) returns "mile"
- </pre></blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>beginIndex</code> - the beginning index, inclusive.</dd>
-<dd><code>endIndex</code> - the ending index, exclusive.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the specified substring.</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the
-             <code>beginIndex</code> is negative, or
-             <code>endIndex</code> is larger than the length of
-             this <code>String</code> object, or
-             <code>beginIndex</code> is larger than
-             <code>endIndex</code>.</dd>
-</dl>
-</li>
-</ul>
-<a id="subSequence(int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>subSequence</h4>
-<pre>public&nbsp;<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;subSequence&#8203;(int&nbsp;beginIndex,
-                                int&nbsp;endIndex)</pre>
-<div class="block">Returns a character sequence that is a subsequence of this sequence.
-
- <p> An invocation of this method of the form
-
- <blockquote><pre>
- str.subSequence(begin,&nbsp;end)</pre></blockquote>
-
- behaves in exactly the same way as the invocation
-
- <blockquote><pre>
- str.substring(begin,&nbsp;end)</pre></blockquote></div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="CharSequence.html#subSequence(int,int)">subSequence</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
-<dt><span class="simpleTagLabel">API Note:</span></dt>
-<dd>This method is defined so that the <code>String</code> class can implement
- the <a href="CharSequence.html" title="interface in java.lang"><code>CharSequence</code></a> interface.</dd>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>beginIndex</code> - the begin index, inclusive.</dd>
-<dd><code>endIndex</code> - the end index, exclusive.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the specified subsequence.</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if <code>beginIndex</code> or <code>endIndex</code> is negative,
-          if <code>endIndex</code> is greater than <code>length()</code>,
-          or if <code>beginIndex</code> is greater than <code>endIndex</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.4</dd>
-</dl>
-</li>
-</ul>
-<a id="concat(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>concat</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;concat&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
-<div class="block">Concatenates the specified string to the end of this string.
- <p>
- If the length of the argument string is <code>0</code>, then this
- <code>String</code> object is returned. Otherwise, a
- <code>String</code> object is returned that represents a character
- sequence that is the concatenation of the character sequence
- represented by this <code>String</code> object and the character
- sequence represented by the argument string.<p>
- Examples:
- <blockquote><pre>
- "cares".concat("s") returns "caress"
- "to".concat("get").concat("her") returns "together"
- </pre></blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>str</code> - the <code>String</code> that is concatenated to the end
-                of this <code>String</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string that represents the concatenation of this object's
-          characters followed by the string argument's characters.</dd>
-</dl>
-</li>
-</ul>
-<a id="replace(char,char)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>replace</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;replace&#8203;(char&nbsp;oldChar,
-                      char&nbsp;newChar)</pre>
-<div class="block">Returns a string resulting from replacing all occurrences of
- <code>oldChar</code> in this string with <code>newChar</code>.
- <p>
- If the character <code>oldChar</code> does not occur in the
- character sequence represented by this <code>String</code> object,
- then a reference to this <code>String</code> object is returned.
- Otherwise, a <code>String</code> object is returned that
- represents a character sequence identical to the character sequence
- represented by this <code>String</code> object, except that every
- occurrence of <code>oldChar</code> is replaced by an occurrence
- of <code>newChar</code>.
- <p>
- Examples:
- <blockquote><pre>
- "mesquite in your cellar".replace('e', 'o')
-         returns "mosquito in your collar"
- "the war of baronets".replace('r', 'y')
-         returns "the way of bayonets"
- "sparring with a purple porpoise".replace('p', 't')
-         returns "starring with a turtle tortoise"
- "JonL".replace('q', 'x') returns "JonL" (no change)
- </pre></blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>oldChar</code> - the old character.</dd>
-<dd><code>newChar</code> - the new character.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string derived from this string by replacing every
-          occurrence of <code>oldChar</code> with <code>newChar</code>.</dd>
-</dl>
-</li>
-</ul>
-<a id="matches(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>matches</h4>
-<pre>public&nbsp;boolean&nbsp;matches&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex)</pre>
-<div class="block">Tells whether or not this string matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a>.
-
- <p> An invocation of this method of the form
- <i>str</i><code>.matches(</code><i>regex</i><code>)</code> yields exactly the
- same result as the expression
-
- <blockquote>
- <a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a>.<a href="../util/regex/Pattern.html#matches(java.lang.String,java.lang.CharSequence)"><code>matches(<i>regex</i>, <i>str</i>)</code></a>
- </blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>regex</code> - the regular expression to which this string is to be matched</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if, and only if, this string matches the
-          given regular expression</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</a></code> - if the regular expression's syntax is invalid</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.4</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="contains(java.lang.CharSequence)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>contains</h4>
-<pre>public&nbsp;boolean&nbsp;contains&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;s)</pre>
-<div class="block">Returns true if and only if this string contains the specified
- sequence of char values.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>s</code> - the sequence to search for</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>true if this string contains <code>s</code>, false otherwise</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a id="replaceFirst(java.lang.String,java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>replaceFirst</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;replaceFirst&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
-                           <a href="String.html" title="class in java.lang">String</a>&nbsp;replacement)</pre>
-<div class="block">Replaces the first substring of this string that matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a> with the
- given replacement.
-
- <p> An invocation of this method of the form
- <i>str</i><code>.replaceFirst(</code><i>regex</i><code>,</code> <i>repl</i><code>)</code>
- yields exactly the same result as the expression
-
- <blockquote>
- <code>
- <a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a>.<a href="../util/regex/Pattern.html#compile(java.lang.String)"><code>compile</code></a>(<i>regex</i>).<a href="../util/regex/Pattern.html#matcher(java.lang.CharSequence)"><code>matcher</code></a>(<i>str</i>).<a href="../util/regex/Matcher.html#replaceFirst(java.lang.String)"><code>replaceFirst</code></a>(<i>repl</i>)
- </code>
- </blockquote>
-
-<p>
- Note that backslashes (<code>\</code>) and dollar signs (<code>$</code>) in the
- replacement string may cause the results to be different than if it were
- being treated as a literal replacement string; see
- <a href="../util/regex/Matcher.html#replaceFirst(java.lang.String)"><code>Matcher.replaceFirst(java.lang.String)</code></a>.
- Use <a href="../util/regex/Matcher.html#quoteReplacement(java.lang.String)"><code>Matcher.quoteReplacement(java.lang.String)</code></a> to suppress the special
- meaning of these characters, if desired.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>regex</code> - the regular expression to which this string is to be matched</dd>
-<dd><code>replacement</code> - the string to be substituted for the first match</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The resulting <code>String</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</a></code> - if the regular expression's syntax is invalid</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.4</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="replaceAll(java.lang.String,java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>replaceAll</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;replaceAll&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
-                         <a href="String.html" title="class in java.lang">String</a>&nbsp;replacement)</pre>
-<div class="block">Replaces each substring of this string that matches the given <a href="../util/regex/Pattern.html#sum">regular expression</a> with the
- given replacement.
-
- <p> An invocation of this method of the form
- <i>str</i><code>.replaceAll(</code><i>regex</i><code>,</code> <i>repl</i><code>)</code>
- yields exactly the same result as the expression
-
- <blockquote>
- <code>
- <a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a>.<a href="../util/regex/Pattern.html#compile(java.lang.String)"><code>compile</code></a>(<i>regex</i>).<a href="../util/regex/Pattern.html#matcher(java.lang.CharSequence)"><code>matcher</code></a>(<i>str</i>).<a href="../util/regex/Matcher.html#replaceAll(java.lang.String)"><code>replaceAll</code></a>(<i>repl</i>)
- </code>
- </blockquote>
-
-<p>
- Note that backslashes (<code>\</code>) and dollar signs (<code>$</code>) in the
- replacement string may cause the results to be different than if it were
- being treated as a literal replacement string; see
- <a href="../util/regex/Matcher.html#replaceAll(java.lang.String)"><code>Matcher.replaceAll</code></a>.
- Use <a href="../util/regex/Matcher.html#quoteReplacement(java.lang.String)"><code>Matcher.quoteReplacement(java.lang.String)</code></a> to suppress the special
- meaning of these characters, if desired.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>regex</code> - the regular expression to which this string is to be matched</dd>
-<dd><code>replacement</code> - the string to be substituted for each match</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The resulting <code>String</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</a></code> - if the regular expression's syntax is invalid</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.4</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="replace(java.lang.CharSequence,java.lang.CharSequence)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>replace</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;replace&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;target,
-                      <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;replacement)</pre>
-<div class="block">Replaces each substring of this string that matches the literal target
- sequence with the specified literal replacement sequence. The
- replacement proceeds from the beginning of the string to the end, for
- example, replacing "aa" with "b" in the string "aaa" will result in
- "ba" rather than "ab".</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>target</code> - The sequence of char values to be replaced</dd>
-<dd><code>replacement</code> - The replacement sequence of char values</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The resulting string</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a id="split(java.lang.String,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>split</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>[]&nbsp;split&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex,
-                      int&nbsp;limit)</pre>
-<div class="block">Splits this string around matches of the given
- <a href="../util/regex/Pattern.html#sum">regular expression</a>.
-
- <p> The array returned by this method contains each substring of this
- string that is terminated by another substring that matches the given
- expression or is terminated by the end of the string.  The substrings in
- the array are in the order in which they occur in this string.  If the
- expression does not match any part of the input then the resulting array
- has just one element, namely this string.
-
- <p> When there is a positive-width match at the beginning of this
- string then an empty leading substring is included at the beginning
- of the resulting array. A zero-width match at the beginning however
- never produces such empty leading substring.
-
- <p> The <code>limit</code> parameter controls the number of times the
- pattern is applied and therefore affects the length of the resulting
- array.
- <ul>
-    <li><p>
-    If the <i>limit</i> is positive then the pattern will be applied
-    at most <i>limit</i>&nbsp;-&nbsp;1 times, the array's length will be
-    no greater than <i>limit</i>, and the array's last entry will contain
-    all input beyond the last matched delimiter.</p></li>
-
-    <li><p>
-    If the <i>limit</i> is zero then the pattern will be applied as
-    many times as possible, the array can have any length, and trailing
-    empty strings will be discarded.</p></li>
-
-    <li><p>
-    If the <i>limit</i> is negative then the pattern will be applied
-    as many times as possible and the array can have any length.</p></li>
- </ul>
-
- <p> The string <code>"boo:and:foo"</code>, for example, yields the
- following results with these parameters:
-
- <blockquote><table class="plain">
- <caption style="display:none">Split example showing regex, limit, and result</caption>
- <thead>
- <tr>
-     <th scope="col">Regex</th>
-     <th scope="col">Limit</th>
-     <th scope="col">Result</th>
- </tr>
- </thead>
- <tbody>
- <tr><th scope="row" rowspan="3" style="font-weight:normal">:</th>
-     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">2</th>
-     <td><code>{ "boo", "and:foo" }</code></td></tr>
- <tr><!-- : -->
-     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">5</th>
-     <td><code>{ "boo", "and", "foo" }</code></td></tr>
- <tr><!-- : -->
-     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">-2</th>
-     <td><code>{ "boo", "and", "foo" }</code></td></tr>
- <tr><th scope="row" rowspan="3" style="font-weight:normal">o</th>
-     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">5</th>
-     <td><code>{ "b", "", ":and:f", "", "" }</code></td></tr>
- <tr><!-- o -->
-     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">-2</th>
-     <td><code>{ "b", "", ":and:f", "", "" }</code></td></tr>
- <tr><!-- o -->
-     <th scope="row" style="font-weight:normal; text-align:right; padding-right:1em">0</th>
-     <td><code>{ "b", "", ":and:f" }</code></td></tr>
- </tbody>
- </table></blockquote>
-
- <p> An invocation of this method of the form
- <i>str.</i><code>split(</code><i>regex</i><code>,</code>&nbsp;<i>n</i><code>)</code>
- yields the same result as the expression
-
- <blockquote>
- <code>
- <a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a>.<a href="../util/regex/Pattern.html#compile(java.lang.String)"><code>compile</code></a>(<i>regex</i>).<a href="../util/regex/Pattern.html#split(java.lang.CharSequence,int)"><code>split</code></a>(<i>str</i>,&nbsp;<i>n</i>)
- </code>
- </blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>regex</code> - the delimiting regular expression</dd>
-<dd><code>limit</code> - the result threshold, as described above</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the array of strings computed by splitting this string
-          around matches of the given regular expression</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</a></code> - if the regular expression's syntax is invalid</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.4</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="split(java.lang.String)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>split</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>[]&nbsp;split&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;regex)</pre>
-<div class="block">Splits this string around matches of the given <a href="../util/regex/Pattern.html#sum">regular expression</a>.
-
- <p> This method works as if by invoking the two-argument <a href="#split(java.lang.String,int)"><code>split</code></a> method with the given expression and a limit
- argument of zero.  Trailing empty strings are therefore not included in
- the resulting array.
-
- <p> The string <code>"boo:and:foo"</code>, for example, yields the following
- results with these expressions:
-
- <blockquote><table class="plain">
- <caption style="display:none">Split examples showing regex and result</caption>
- <thead>
- <tr>
-  <th scope="col">Regex</th>
-  <th scope="col">Result</th>
- </tr>
- </thead>
- <tbody>
- <tr><th scope="row" style="text-weight:normal">:</th>
-     <td><code>{ "boo", "and", "foo" }</code></td></tr>
- <tr><th scope="row" style="text-weight:normal">o</th>
-     <td><code>{ "b", "", ":and:f" }</code></td></tr>
- </tbody>
- </table></blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>regex</code> - the delimiting regular expression</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the array of strings computed by splitting this string
-          around matches of the given regular expression</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../util/regex/PatternSyntaxException.html" title="class in java.util.regex">PatternSyntaxException</a></code> - if the regular expression's syntax is invalid</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.4</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="join(java.lang.CharSequence,java.lang.CharSequence...)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>join</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;join&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
-                          <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>...&nbsp;elements)</pre>
-<div class="block">Returns a new String composed of copies of the
- <code>CharSequence elements</code> joined together with a copy of
- the specified <code>delimiter</code>.
-
- <blockquote>For example,
- <pre><code>
-     String message = String.join("-", "Java", "is", "cool");
-     // message returned is: "Java-is-cool"
- </code></pre></blockquote>
-
- Note that if an element is null, then <code>"null"</code> is added.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>delimiter</code> - the delimiter that separates each element</dd>
-<dd><code>elements</code> - the elements to join together.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a new <code>String</code> that is composed of the <code>elements</code>
-         separated by the <code>delimiter</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="NullPointerException.html" title="class in java.lang">NullPointerException</a></code> - If <code>delimiter</code> or <code>elements</code>
-         is <code>null</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.8</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../util/StringJoiner.html" title="class in java.util"><code>StringJoiner</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="join(java.lang.CharSequence,java.lang.Iterable)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>join</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;join&#8203;(<a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
-                          <a href="Iterable.html" title="interface in java.lang">Iterable</a>&lt;? extends <a href="CharSequence.html" title="interface in java.lang">CharSequence</a>&gt;&nbsp;elements)</pre>
-<div class="block">Returns a new <code>String</code> composed of copies of the
- <code>CharSequence elements</code> joined together with a copy of the
- specified <code>delimiter</code>.
-
- <blockquote>For example,
- <pre><code>
-     List&lt;String&gt; strings = List.of("Java", "is", "cool");
-     String message = String.join(" ", strings);
-     //message returned is: "Java is cool"
-
-     Set&lt;String&gt; strings =
-         new LinkedHashSet&lt;&gt;(List.of("Java", "is", "very", "cool"));
-     String message = String.join("-", strings);
-     //message returned is: "Java-is-very-cool"
- </code></pre></blockquote>
-
- Note that if an individual element is <code>null</code>, then <code>"null"</code> is added.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>delimiter</code> - a sequence of characters that is used to separate each
-         of the <code>elements</code> in the resulting <code>String</code></dd>
-<dd><code>elements</code> - an <code>Iterable</code> that will have its <code>elements</code>
-         joined together.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a new <code>String</code> that is composed from the <code>elements</code>
-         argument</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="NullPointerException.html" title="class in java.lang">NullPointerException</a></code> - If <code>delimiter</code> or <code>elements</code>
-         is <code>null</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.8</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="#join(java.lang.CharSequence,java.lang.CharSequence...)"><code>join(CharSequence,CharSequence...)</code></a>, 
-<a href="../util/StringJoiner.html" title="class in java.util"><code>StringJoiner</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="toLowerCase(java.util.Locale)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toLowerCase</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;toLowerCase&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</pre>
-<div class="block">Converts all of the characters in this <code>String</code> to lower
- case using the rules of the given <code>Locale</code>.  Case mapping is based
- on the Unicode Standard version specified by the <a href="Character.html" title="class in java.lang"><code>Character</code></a>
- class. Since case mappings are not always 1:1 char mappings, the resulting
- <code>String</code> may be a different length than the original <code>String</code>.
- <p>
- Examples of lowercase  mappings are in the following table:
- <table class="plain">
- <caption style="display:none">Lowercase mapping examples showing language code of locale, upper case, lower case, and description</caption>
- <thead>
- <tr>
-   <th scope="col">Language Code of Locale</th>
-   <th scope="col">Upper Case</th>
-   <th scope="col">Lower Case</th>
-   <th scope="col">Description</th>
- </tr>
- </thead>
- <tbody>
- <tr>
-   <td>tr (Turkish)</td>
-   <th scope="row" style="font-weight:normal; text-align:left">&#92;u0130</th>
-   <td>&#92;u0069</td>
-   <td>capital letter I with dot above -&gt; small letter i</td>
- </tr>
- <tr>
-   <td>tr (Turkish)</td>
-   <th scope="row" style="font-weight:normal; text-align:left">&#92;u0049</th>
-   <td>&#92;u0131</td>
-   <td>capital letter I -&gt; small letter dotless i </td>
- </tr>
- <tr>
-   <td>(all)</td>
-   <th scope="row" style="font-weight:normal; text-align:left">French Fries</th>
-   <td>french fries</td>
-   <td>lowercased all chars in String</td>
- </tr>
- <tr>
-   <td>(all)</td>
-   <th scope="row" style="font-weight:normal; text-align:left">
-       &Iota;&Chi;&Theta;&Upsilon;&Sigma;</th>
-   <td>&iota;&chi;&theta;&upsilon;&sigma;</td>
-   <td>lowercased all chars in String</td>
- </tr>
- </tbody>
- </table></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>locale</code> - use the case transformation rules for this locale</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the <code>String</code>, converted to lowercase.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.1</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="#toLowerCase()"><code>toLowerCase()</code></a>, 
-<a href="#toUpperCase()"><code>toUpperCase()</code></a>, 
-<a href="#toUpperCase(java.util.Locale)"><code>toUpperCase(Locale)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="toLowerCase()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toLowerCase</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;toLowerCase()</pre>
-<div class="block">Converts all of the characters in this <code>String</code> to lower
- case using the rules of the default locale. This is equivalent to calling
- <code>toLowerCase(Locale.getDefault())</code>.
- <p>
- <b>Note:</b> This method is locale sensitive, and may produce unexpected
- results if used for strings that are intended to be interpreted locale
- independently.
- Examples are programming language identifiers, protocol keys, and HTML
- tags.
- For instance, <code>"TITLE".toLowerCase()</code> in a Turkish locale
- returns <code>"t\u0131tle"</code>, where '\u0131' is the
- LATIN SMALL LETTER DOTLESS I character.
- To obtain correct results for locale insensitive strings, use
- <code>toLowerCase(Locale.ROOT)</code>.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the <code>String</code>, converted to lowercase.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="#toLowerCase(java.util.Locale)"><code>toLowerCase(Locale)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="toUpperCase(java.util.Locale)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toUpperCase</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;toUpperCase&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</pre>
-<div class="block">Converts all of the characters in this <code>String</code> to upper
- case using the rules of the given <code>Locale</code>. Case mapping is based
- on the Unicode Standard version specified by the <a href="Character.html" title="class in java.lang"><code>Character</code></a>
- class. Since case mappings are not always 1:1 char mappings, the resulting
- <code>String</code> may be a different length than the original <code>String</code>.
- <p>
- Examples of locale-sensitive and 1:M case mappings are in the following table.
-
- <table class="plain">
- <caption style="display:none">Examples of locale-sensitive and 1:M case mappings. Shows Language code of locale, lower case, upper case, and description.</caption>
- <thead>
- <tr>
-   <th scope="col">Language Code of Locale</th>
-   <th scope="col">Lower Case</th>
-   <th scope="col">Upper Case</th>
-   <th scope="col">Description</th>
- </tr>
- </thead>
- <tbody>
- <tr>
-   <td>tr (Turkish)</td>
-   <th scope="row" style="font-weight:normal; text-align:left">&#92;u0069</th>
-   <td>&#92;u0130</td>
-   <td>small letter i -&gt; capital letter I with dot above</td>
- </tr>
- <tr>
-   <td>tr (Turkish)</td>
-   <th scope="row" style="font-weight:normal; text-align:left">&#92;u0131</th>
-   <td>&#92;u0049</td>
-   <td>small letter dotless i -&gt; capital letter I</td>
- </tr>
- <tr>
-   <td>(all)</td>
-   <th scope="row" style="font-weight:normal; text-align:left">&#92;u00df</th>
-   <td>&#92;u0053 &#92;u0053</td>
-   <td>small letter sharp s -&gt; two letters: SS</td>
- </tr>
- <tr>
-   <td>(all)</td>
-   <th scope="row" style="font-weight:normal; text-align:left">Fahrvergn&uuml;gen</th>
-   <td>FAHRVERGN&Uuml;GEN</td>
-   <td></td>
- </tr>
- </tbody>
- </table></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>locale</code> - use the case transformation rules for this locale</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the <code>String</code>, converted to uppercase.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.1</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="#toUpperCase()"><code>toUpperCase()</code></a>, 
-<a href="#toLowerCase()"><code>toLowerCase()</code></a>, 
-<a href="#toLowerCase(java.util.Locale)"><code>toLowerCase(Locale)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="toUpperCase()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toUpperCase</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;toUpperCase()</pre>
-<div class="block">Converts all of the characters in this <code>String</code> to upper
- case using the rules of the default locale. This method is equivalent to
- <code>toUpperCase(Locale.getDefault())</code>.
- <p>
- <b>Note:</b> This method is locale sensitive, and may produce unexpected
- results if used for strings that are intended to be interpreted locale
- independently.
- Examples are programming language identifiers, protocol keys, and HTML
- tags.
- For instance, <code>"title".toUpperCase()</code> in a Turkish locale
- returns <code>"T\u0130TLE"</code>, where '\u0130' is the
- LATIN CAPITAL LETTER I WITH DOT ABOVE character.
- To obtain correct results for locale insensitive strings, use
- <code>toUpperCase(Locale.ROOT)</code>.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the <code>String</code>, converted to uppercase.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="#toUpperCase(java.util.Locale)"><code>toUpperCase(Locale)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="trim()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>trim</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;trim()</pre>
-<div class="block">Returns a string whose value is this string, with all leading
- and trailing space removed, where space is defined
- as any character whose codepoint is less than or equal to
- <code>'U+0020'</code> (the space character).
- <p>
- If this <code>String</code> object represents an empty character
- sequence, or the first and last characters of character sequence
- represented by this <code>String</code> object both have codes
- that are not space (as defined above), then a
- reference to this <code>String</code> object is returned.
- <p>
- Otherwise, if all characters in this string are space (as
- defined above), then a  <code>String</code> object representing an
- empty string is returned.
- <p>
- Otherwise, let <i>k</i> be the index of the first character in the
- string whose code is not a space (as defined above) and let
- <i>m</i> be the index of the last character in the string whose code
- is not a space (as defined above). A <code>String</code>
- object is returned, representing the substring of this string that
- begins with the character at index <i>k</i> and ends with the
- character at index <i>m</i>-that is, the result of
- <code>this.substring(k, m + 1)</code>.
- <p>
- This method may be used to trim space (as defined above) from
- the beginning and end of a string.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string whose value is this string, with all leading
-          and trailing space removed, or this string if it
-          has no leading or trailing space.</dd>
-</dl>
-</li>
-</ul>
-<a id="strip()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>strip</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;strip()</pre>
-<div class="block">Returns a string whose value is this string, with all leading
- and trailing <a href="Character.html#isWhitespace(int)"><code>white space</code></a>
- removed.
- <p>
- If this <code>String</code> object represents an empty string,
- or if all code points in this string are
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a>, then an empty string
- is returned.
- <p>
- Otherwise, returns a substring of this string beginning with the first
- code point that is not a <a href="Character.html#isWhitespace(int)"><code>white space</code></a>
- up to and including the last code point that is not a
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a>.
- <p>
- This method may be used to strip
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a> from
- the beginning and end of a string.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string whose value is this string, with all leading
-          and trailing white space removed</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>11</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Character.html#isWhitespace(int)"><code>Character.isWhitespace(int)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="stripLeading()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>stripLeading</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;stripLeading()</pre>
-<div class="block">Returns a string whose value is this string, with all leading
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a> removed.
- <p>
- If this <code>String</code> object represents an empty string,
- or if all code points in this string are
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a>, then an empty string
- is returned.
- <p>
- Otherwise, returns a substring of this string beginning with the first
- code point that is not a <a href="Character.html#isWhitespace(int)"><code>white space</code></a>
- up to to and including the last code point of this string.
- <p>
- This method may be used to trim
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a> from
- the beginning of a string.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string whose value is this string, with all leading white
-          space removed</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>11</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Character.html#isWhitespace(int)"><code>Character.isWhitespace(int)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="stripTrailing()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>stripTrailing</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;stripTrailing()</pre>
-<div class="block">Returns a string whose value is this string, with all trailing
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a> removed.
- <p>
- If this <code>String</code> object represents an empty string,
- or if all characters in this string are
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a>, then an empty string
- is returned.
- <p>
- Otherwise, returns a substring of this string beginning with the first
- code point of this string up to and including the last code point
- that is not a <a href="Character.html#isWhitespace(int)"><code>white space</code></a>.
- <p>
- This method may be used to trim
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a> from
- the end of a string.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string whose value is this string, with all trailing white
-          space removed</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>11</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Character.html#isWhitespace(int)"><code>Character.isWhitespace(int)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="isBlank()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>isBlank</h4>
-<pre>public&nbsp;boolean&nbsp;isBlank()</pre>
-<div class="block">Returns <code>true</code> if the string is empty or contains only
- <a href="Character.html#isWhitespace(int)"><code>white space</code></a> codepoints,
- otherwise <code>false</code>.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd><code>true</code> if the string is empty or contains only
-         <a href="Character.html#isWhitespace(int)"><code>white space</code></a> codepoints,
-         otherwise <code>false</code></dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>11</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Character.html#isWhitespace(int)"><code>Character.isWhitespace(int)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="lines()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>lines</h4>
-<pre>public&nbsp;<a href="../util/stream/Stream.html" title="interface in java.util.stream">Stream</a>&lt;<a href="String.html" title="class in java.lang">String</a>&gt;&nbsp;lines()</pre>
-<div class="block">Returns a stream of substrings extracted from this string
- partitioned by line terminators.
- <p>
- Line terminators recognized are line feed
- <code>"\n"</code> (<code>U+000A</code>),
- carriage return
- <code>"\r"</code> (<code>U+000D</code>)
- and a carriage return followed immediately by a line feed
- <code>"\r\n"</code> (<code>U+000D U+000A</code>).
- <p>
- The stream returned by this method contains each line of
- this string that is terminated by a line terminator except that
- the last line can either be terminated by a line terminator or the
- end of the string.
- The lines in the stream are in the order in which
- they occur in this string and do not include the line terminators
- partitioning the lines.</div>
-<dl>
-<dt><span class="simpleTagLabel">Implementation Note:</span></dt>
-<dd>This method provides better performance than
-           split("\R") by supplying elements lazily and
-           by faster search of new line terminators.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the stream of strings extracted from this string
-          partitioned by line terminators</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>11</dd>
-</dl>
-</li>
-</ul>
-<a id="toString()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toString</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;toString()</pre>
-<div class="block">This object (which is already a string!) is itself returned.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="CharSequence.html#toString()">toString</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code><a href="Object.html#toString()">toString</a></code>&nbsp;in class&nbsp;<code><a href="Object.html" title="class in java.lang">Object</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the string itself.</dd>
-</dl>
-</li>
-</ul>
-<a id="chars()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>chars</h4>
-<pre>public&nbsp;<a href="../util/stream/IntStream.html" title="interface in java.util.stream">IntStream</a>&nbsp;chars()</pre>
-<div class="block">Returns a stream of <code>int</code> zero-extending the <code>char</code> values
- from this sequence.  Any char which maps to a <a href="../../../java.base/java/lang/Character.html#unicode">surrogate code
- point</a> is passed through uninterpreted.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="CharSequence.html#chars()">chars</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>an IntStream of char values from this sequence</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>9</dd>
-</dl>
-</li>
-</ul>
-<a id="codePoints()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>codePoints</h4>
-<pre>public&nbsp;<a href="../util/stream/IntStream.html" title="interface in java.util.stream">IntStream</a>&nbsp;codePoints()</pre>
-<div class="block">Returns a stream of code point values from this sequence.  Any surrogate
- pairs encountered in the sequence are combined as if by <a href="Character.html#toCodePoint(char,char)">Character.toCodePoint</a> and the result is passed
- to the stream. Any other code units, including ordinary BMP characters,
- unpaired surrogates, and undefined code units, are zero-extended to
- <code>int</code> values which are then passed to the stream.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="CharSequence.html#codePoints()">codePoints</a></code>&nbsp;in interface&nbsp;<code><a href="CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>an IntStream of Unicode code points from this sequence</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>9</dd>
-</dl>
-</li>
-</ul>
-<a id="toCharArray()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toCharArray</h4>
-<pre>public&nbsp;char[]&nbsp;toCharArray()</pre>
-<div class="block">Converts this string to a new character array.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a newly allocated character array whose length is the length
-          of this string and whose contents are initialized to contain
-          the character sequence represented by this string.</dd>
-</dl>
-</li>
-</ul>
-<a id="format(java.lang.String,java.lang.Object...)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>format</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;format&#8203;(<a href="String.html" title="class in java.lang">String</a>&nbsp;format,
-                            <a href="Object.html" title="class in java.lang">Object</a>...&nbsp;args)</pre>
-<div class="block">Returns a formatted string using the specified format string and
- arguments.
-
- <p> The locale always used is the one returned by <a href="../util/Locale.html#getDefault(java.util.Locale.Category)"><code>Locale.getDefault(Locale.Category)</code></a> with
- <a href="../util/Locale.Category.html#FORMAT"><code>FORMAT</code></a> category specified.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>format</code> - A <a href="../util/Formatter.html#syntax">format string</a></dd>
-<dd><code>args</code> - Arguments referenced by the format specifiers in the format
-         string.  If there are more arguments than format specifiers, the
-         extra arguments are ignored.  The number of arguments is
-         variable and may be zero.  The maximum number of arguments is
-         limited by the maximum dimension of a Java array as defined by
-         <cite>The Java&trade; Virtual Machine Specification</cite>.
-         The behaviour on a
-         <code>null</code> argument depends on the <a href="../util/Formatter.html#syntax">conversion</a>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>A formatted string</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../util/IllegalFormatException.html" title="class in java.util">IllegalFormatException</a></code> - If a format string contains an illegal syntax, a format
-          specifier that is incompatible with the given arguments,
-          insufficient arguments given the format string, or other
-          illegal conditions.  For specification of all possible
-          formatting errors, see the <a href="../util/Formatter.html#detail">Details</a> section of the
-          formatter class specification.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../util/Formatter.html" title="class in java.util"><code>Formatter</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="format(java.util.Locale,java.lang.String,java.lang.Object...)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>format</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;format&#8203;(<a href="../util/Locale.html" title="class in java.util">Locale</a>&nbsp;l,
-                            <a href="String.html" title="class in java.lang">String</a>&nbsp;format,
-                            <a href="Object.html" title="class in java.lang">Object</a>...&nbsp;args)</pre>
-<div class="block">Returns a formatted string using the specified locale, format string,
- and arguments.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>l</code> - The <a href="../util/Locale.html" title="class in java.util">locale</a> to apply during
-         formatting.  If <code>l</code> is <code>null</code> then no localization
-         is applied.</dd>
-<dd><code>format</code> - A <a href="../util/Formatter.html#syntax">format string</a></dd>
-<dd><code>args</code> - Arguments referenced by the format specifiers in the format
-         string.  If there are more arguments than format specifiers, the
-         extra arguments are ignored.  The number of arguments is
-         variable and may be zero.  The maximum number of arguments is
-         limited by the maximum dimension of a Java array as defined by
-         <cite>The Java&trade; Virtual Machine Specification</cite>.
-         The behaviour on a
-         <code>null</code> argument depends on the
-         <a href="../util/Formatter.html#syntax">conversion</a>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>A formatted string</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../util/IllegalFormatException.html" title="class in java.util">IllegalFormatException</a></code> - If a format string contains an illegal syntax, a format
-          specifier that is incompatible with the given arguments,
-          insufficient arguments given the format string, or other
-          illegal conditions.  For specification of all possible
-          formatting errors, see the <a href="../util/Formatter.html#detail">Details</a> section of the
-          formatter class specification</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../util/Formatter.html" title="class in java.util"><code>Formatter</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="valueOf(java.lang.Object)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(<a href="Object.html" title="class in java.lang">Object</a>&nbsp;obj)</pre>
-<div class="block">Returns the string representation of the <code>Object</code> argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>obj</code> - an <code>Object</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>if the argument is <code>null</code>, then a string equal to
-          <code>"null"</code>; otherwise, the value of
-          <code>obj.toString()</code> is returned.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Object.html#toString()"><code>Object.toString()</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="valueOf(char[])">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(char[]&nbsp;data)</pre>
-<div class="block">Returns the string representation of the <code>char</code> array
- argument. The contents of the character array are copied; subsequent
- modification of the character array does not affect the returned
- string.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>data</code> - the character array.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a <code>String</code> that contains the characters of the
-          character array.</dd>
-</dl>
-</li>
-</ul>
-<a id="valueOf(char[],int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(char[]&nbsp;data,
-                             int&nbsp;offset,
-                             int&nbsp;count)</pre>
-<div class="block">Returns the string representation of a specific subarray of the
- <code>char</code> array argument.
- <p>
- The <code>offset</code> argument is the index of the first
- character of the subarray. The <code>count</code> argument
- specifies the length of the subarray. The contents of the subarray
- are copied; subsequent modification of the character array does not
- affect the returned string.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>data</code> - the character array.</dd>
-<dd><code>offset</code> - initial offset of the subarray.</dd>
-<dd><code>count</code> - length of the subarray.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a <code>String</code> that contains the characters of the
-          specified subarray of the character array.</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if <code>offset</code> is
-          negative, or <code>count</code> is negative, or
-          <code>offset+count</code> is larger than
-          <code>data.length</code>.</dd>
-</dl>
-</li>
-</ul>
-<a id="copyValueOf(char[],int,int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>copyValueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;copyValueOf&#8203;(char[]&nbsp;data,
-                                 int&nbsp;offset,
-                                 int&nbsp;count)</pre>
-<div class="block">Equivalent to <a href="#valueOf(char%5B%5D,int,int)"><code>valueOf(char[], int, int)</code></a>.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>data</code> - the character array.</dd>
-<dd><code>offset</code> - initial offset of the subarray.</dd>
-<dd><code>count</code> - length of the subarray.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a <code>String</code> that contains the characters of the
-          specified subarray of the character array.</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if <code>offset</code> is
-          negative, or <code>count</code> is negative, or
-          <code>offset+count</code> is larger than
-          <code>data.length</code>.</dd>
-</dl>
-</li>
-</ul>
-<a id="copyValueOf(char[])">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>copyValueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;copyValueOf&#8203;(char[]&nbsp;data)</pre>
-<div class="block">Equivalent to <a href="#valueOf(char%5B%5D)"><code>valueOf(char[])</code></a>.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>data</code> - the character array.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a <code>String</code> that contains the characters of the
-          character array.</dd>
-</dl>
-</li>
-</ul>
-<a id="valueOf(boolean)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(boolean&nbsp;b)</pre>
-<div class="block">Returns the string representation of the <code>boolean</code> argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>b</code> - a <code>boolean</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>if the argument is <code>true</code>, a string equal to
-          <code>"true"</code> is returned; otherwise, a string equal to
-          <code>"false"</code> is returned.</dd>
-</dl>
-</li>
-</ul>
-<a id="valueOf(char)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(char&nbsp;c)</pre>
-<div class="block">Returns the string representation of the <code>char</code>
- argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>c</code> - a <code>char</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string of length <code>1</code> containing
-          as its single character the argument <code>c</code>.</dd>
-</dl>
-</li>
-</ul>
-<a id="valueOf(int)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(int&nbsp;i)</pre>
-<div class="block">Returns the string representation of the <code>int</code> argument.
- <p>
- The representation is exactly the one returned by the
- <code>Integer.toString</code> method of one argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>i</code> - an <code>int</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string representation of the <code>int</code> argument.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Integer.html#toString(int,int)"><code>Integer.toString(int, int)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="valueOf(long)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(long&nbsp;l)</pre>
-<div class="block">Returns the string representation of the <code>long</code> argument.
- <p>
- The representation is exactly the one returned by the
- <code>Long.toString</code> method of one argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>l</code> - a <code>long</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string representation of the <code>long</code> argument.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Long.html#toString(long)"><code>Long.toString(long)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="valueOf(float)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(float&nbsp;f)</pre>
-<div class="block">Returns the string representation of the <code>float</code> argument.
- <p>
- The representation is exactly the one returned by the
- <code>Float.toString</code> method of one argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>f</code> - a <code>float</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string representation of the <code>float</code> argument.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Float.html#toString(float)"><code>Float.toString(float)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="valueOf(double)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;valueOf&#8203;(double&nbsp;d)</pre>
-<div class="block">Returns the string representation of the <code>double</code> argument.
- <p>
- The representation is exactly the one returned by the
- <code>Double.toString</code> method of one argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>d</code> - a <code>double</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a  string representation of the <code>double</code> argument.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="Double.html#toString(double)"><code>Double.toString(double)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="intern()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>intern</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;intern()</pre>
-<div class="block">Returns a canonical representation for the string object.
- <p>
- A pool of strings, initially empty, is maintained privately by the
- class <code>String</code>.
- <p>
- When the intern method is invoked, if the pool already contains a
- string equal to this <code>String</code> object as determined by
- the <a href="#equals(java.lang.Object)"><code>equals(Object)</code></a> method, then the string from the pool is
- returned. Otherwise, this <code>String</code> object is added to the
- pool and a reference to this <code>String</code> object is returned.
- <p>
- It follows that for any two strings <code>s</code> and <code>t</code>,
- <code>s.intern() == t.intern()</code> is <code>true</code>
- if and only if <code>s.equals(t)</code> is <code>true</code>.
- <p>
- All literal strings and string-valued constant expressions are
- interned. String literals are defined in section 3.10.5 of the
- <cite>The Java&trade; Language Specification</cite>.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string that has the same contents as this string, but is
-          guaranteed to be from a pool of unique strings.</dd>
-<dt><span class="simpleTagLabel">See <cite>The Java&trade; Language Specification</cite>:</span></dt>
-<dd>3.10.5 String Literals</dd>
-</dl>
-</li>
-</ul>
-<a id="repeat(int)">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>repeat</h4>
-<pre>public&nbsp;<a href="String.html" title="class in java.lang">String</a>&nbsp;repeat&#8203;(int&nbsp;count)</pre>
-<div class="block">Returns a string whose value is the concatenation of this
- string repeated <code>count</code> times.
- <p>
- If this string is empty or count is zero then the empty
- string is returned.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>count</code> - number of times to repeat</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>A string composed of this string repeated
-          <code>count</code> times or the empty string if this
-          string is empty or count is zero</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - if the <code>count</code> is
-          negative.</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>11</dd>
-</dl>
-</li>
-</ul>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-</div>
-</main>
-<!-- ========= END OF CLASS DATA ========= -->
-<footer role="contentinfo">
-<nav role="navigation">
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a id="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.bottom.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../index.html">Overview</a></li>
-<li><a href="../../module-summary.html">Module</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/String.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../index-files/index-1.html">Index</a></li>
-<li><a href="../../../help-doc.html">Help</a></li>
-</ul>
-<div class="aboutLanguage"><div style="margin-top: 9px;"><strong>Java SE 11 &amp; JDK 11</strong> <br><strong>DRAFT 11-ea+22</strong></div></div>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-</nav>
-<p class="legalCopy"><small><a href="http://bugreport.java.com/bugreport/">Report a bug or suggest an enhancement</a><br> For further API reference and developer documentation see the <a href="http://www.oracle.com/pls/topic/lookup?ctx=javase10&amp;id=homepage" target="_blank">Java SE Documentation</a>, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples.<br> Java is a trademark or registere [...]
-</footer>
-<!-- Start SiteCatalyst code   -->
-<script type="application/javascript" src="https://www.oracleimg.com/us/assets/metrics/ora_docs.js"></script>
-<!-- End SiteCatalyst code -->
-<noscript>
-<p>Scripting on this page tracks web page traffic, but does not change the content in any way.</p>
-</noscript>
-</body>
-</html>
diff --git a/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java8_String.html b/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java8_String.html
deleted file mode 100644
index d86e766..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/test/resources/Java8_String.html
+++ /dev/null
@@ -1,3627 +0,0 @@
-<!--
-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
--->
-<!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 (1.8.0_171) on Wed Mar 28 17:12:31 PDT 2018 -->
-<title>String (Java Platform SE 8 )</title>
-<meta name="date" content="2018-03-28">
-<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="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" src="../../script.js"></script>
-<script>window.ohcglobal || document.write('<script src="/en/dcommon/js/global.js">\x3C/script>')</script></head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="String (Java Platform SE 8 )";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":9,"i11":9,"i12":10,"i13":10,"i14":10,"i15":9,"i16":9,"i17":10,"i18":10,"i19":42,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":9,"i30":9,"i31":10,"i32":10,"i33":10,"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":1 [...]
-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";
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a name="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<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"><strong>Java&trade;&nbsp;Platform<br>Standard&nbsp;Ed.&nbsp;8</strong></div>
-</div>
-<div class="subNav">
-<ul class="navList">
-<li><a href="../../java/lang/StrictMath.html" title="class in java.lang"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../java/lang/StringBuffer.html" title="class in java.lang"><span class="typeNameLink">Next&nbsp;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&nbsp;Frames</a></li>
-</ul>
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a name="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-<!-- ======== START OF CLASS DATA ======== -->
-<div class="header">
-<div class="subTitle">compact1, compact2, compact3</div>
-<div class="subTitle">java.lang</div>
-<h2 title="Class String" class="title">Class String</h2>
-</div>
-<div class="contentContainer">
-<ul class="inheritance">
-<li><a href="../../java/lang/Object.html" title="class in java.lang">java.lang.Object</a></li>
-<li>
-<ul class="inheritance">
-<li>java.lang.String</li>
-</ul>
-</li>
-</ul>
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<dl>
-<dt>All Implemented Interfaces:</dt>
-<dd><a href="../../java/io/Serializable.html" title="interface in java.io">Serializable</a>, <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>, <a href="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt;</dd>
-</dl>
-<hr>
-<br>
-<pre>public final class <span class="typeNameLabel">String</span>
-extends <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>
-implements <a href="../../java/io/Serializable.html" title="interface in java.io">Serializable</a>, <a href="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt;, <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></pre>
-<div class="block">The <code>String</code> class represents character strings. All
- string literals in Java programs, such as <code>"abc"</code>, are
- implemented as instances of this class.
- <p>
- Strings are constant; their values cannot be changed after they
- are created. String buffers support mutable strings.
- Because String objects are immutable they can be shared. For example:
- <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="../../java/lang/Character.html" title="class in java.lang"><code>Character</code></a> class.
- <p>
- The Java language provides special support for the string
- concatenation operator (&nbsp;+&nbsp;), and for conversion of
- other objects to strings. String concatenation is implemented
- through the <code>StringBuilder</code>(or <code>StringBuffer</code>)
- class and its <code>append</code> method.
- String conversions are implemented through the method
- <code>toString</code>, defined by <code>Object</code> and
- inherited by all classes in Java. For additional information on
- string concatenation and conversion, see Gosling, Joy, and Steele,
- <i>The Java Language Specification</i>.
-
- <p> Unless otherwise noted, passing a <tt>null</tt> argument to a constructor
- or method in this class will cause a <a href="../../java/lang/NullPointerException.html" title="class in java.lang"><code>NullPointerException</code></a> to be
- thrown.
-
- <p>A <code>String</code> represents a string in the UTF-16 format
- in which <em>supplementary characters</em> are represented by <em>surrogate
- pairs</em> (see the section <a href="Character.html#unicode">Unicode
- Character Representations</a> in the <code>Character</code> class for
- more information).
- Index values refer to <code>char</code> code units, so a supplementary
- character uses two positions in a <code>String</code>.
- <p>The <code>String</code> class provides methods for dealing with
- Unicode code points (i.e., characters), in addition to those for
- dealing with Unicode code units (i.e., <code>char</code> values).</div>
-<dl>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>JDK1.0</dd>
-<dt><span class="seeLabel">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="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
-<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Field and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../../java/util/Comparator.html" title="interface in java.util">Comparator</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#CASE_INSENSITIVE_ORDER">CASE_INSENSITIVE_ORDER</a></span></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="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
-<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colOne" scope="col">Constructor and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String--">String</a></span>()</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><span class="memberNameLink"><a href="../../java/lang/String.html#String-byte:A-">String</a></span>(byte[]&nbsp;bytes)</code>
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
- using the platform's default charset.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-byte:A-java.nio.charset.Charset-">String</a></span>(byte[]&nbsp;bytes,
-      <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code>
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of
- bytes using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-byte:A-int-">String</a></span>(byte[]&nbsp;ascii,
-      int&nbsp;hibyte)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
-<div class="block"><span class="deprecationComment">This method does not properly convert bytes into
- characters.  As of JDK&nbsp;1.1, the preferred way to do this is via the
- <code>String</code> constructors that take a <a href="../../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.</span></div>
-</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-byte:A-int-int-">String</a></span>(byte[]&nbsp;bytes,
-      int&nbsp;offset,
-      int&nbsp;length)</code>
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the platform's default charset.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-byte:A-int-int-java.nio.charset.Charset-">String</a></span>(byte[]&nbsp;bytes,
-      int&nbsp;offset,
-      int&nbsp;length,
-      <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code>
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-byte:A-int-int-int-">String</a></span>(byte[]&nbsp;ascii,
-      int&nbsp;hibyte,
-      int&nbsp;offset,
-      int&nbsp;count)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
-<div class="block"><span class="deprecationComment">This method does not properly convert bytes into characters.
- As of JDK&nbsp;1.1, the preferred way to do this is via the
- <code>String</code> constructors that take a <a href="../../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.</span></div>
-</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-byte:A-int-int-java.lang.String-">String</a></span>(byte[]&nbsp;bytes,
-      int&nbsp;offset,
-      int&nbsp;length,
-      <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code>
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the specified charset.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-byte:A-java.lang.String-">String</a></span>(byte[]&nbsp;bytes,
-      <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code>
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
- using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-char:A-">String</a></span>(char[]&nbsp;value)</code>
-<div class="block">Allocates a new <code>String</code> so that it represents the sequence of
- characters currently contained in the character array argument.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-char:A-int-int-">String</a></span>(char[]&nbsp;value,
-      int&nbsp;offset,
-      int&nbsp;count)</code>
-<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
- of the character array argument.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-int:A-int-int-">String</a></span>(int[]&nbsp;codePoints,
-      int&nbsp;offset,
-      int&nbsp;count)</code>
-<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
- of the <a href="Character.html#unicode">Unicode code point</a> array
- argument.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-java.lang.String-">String</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;original)</code>
-<div class="block">Initializes a newly created <code>String</code> object so that it represents
- the same sequence of characters as the argument; in other words, the
- newly created string is a copy of the argument string.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-java.lang.StringBuffer-">String</a></span>(<a href="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;buffer)</code>
-<div class="block">Allocates a new string that contains the sequence of characters
- currently contained in the string buffer argument.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../java/lang/String.html#String-java.lang.StringBuilder-">String</a></span>(<a href="../../java/lang/StringBuilder.html" title="class in java.lang">StringBuilder</a>&nbsp;builder)</code>
-<div class="block">Allocates a new string that contains the sequence of characters
- currently contained in the string builder argument.</div>
-</td>
-</tr>
-</table>
-</li>
-</ul>
-<!-- ========== METHOD SUMMARY =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="method.summary">
-<!--   -->
-</a>
-<h3>Method Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Method and Description</th>
-</tr>
-<tr id="i0" class="altColor">
-<td class="colFirst"><code>char</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#charAt-int-">charAt</a></span>(int&nbsp;index)</code>
-<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>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#codePointAt-int-">codePointAt</a></span>(int&nbsp;index)</code>
-<div class="block">Returns the character (Unicode code point) at the specified
- index.</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#codePointBefore-int-">codePointBefore</a></span>(int&nbsp;index)</code>
-<div class="block">Returns the character (Unicode code point) before the specified
- index.</div>
-</td>
-</tr>
-<tr id="i3" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#codePointCount-int-int-">codePointCount</a></span>(int&nbsp;beginIndex,
-              int&nbsp;endIndex)</code>
-<div class="block">Returns the number of Unicode code points in the specified text
- range of this <code>String</code>.</div>
-</td>
-</tr>
-<tr id="i4" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#compareTo-java.lang.String-">compareTo</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;anotherString)</code>
-<div class="block">Compares two strings lexicographically.</div>
-</td>
-</tr>
-<tr id="i5" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#compareToIgnoreCase-java.lang.String-">compareToIgnoreCase</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</code>
-<div class="block">Compares two strings lexicographically, ignoring case
- differences.</div>
-</td>
-</tr>
-<tr id="i6" 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><span class="memberNameLink"><a href="../../java/lang/String.html#concat-java.lang.String-">concat</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</code>
-<div class="block">Concatenates the specified string to the end of this string.</div>
-</td>
-</tr>
-<tr id="i7" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#contains-java.lang.CharSequence-">contains</a></span>(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;s)</code>
-<div class="block">Returns true if and only if this string contains the specified
- sequence of char values.</div>
-</td>
-</tr>
-<tr id="i8" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#contentEquals-java.lang.CharSequence-">contentEquals</a></span>(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;cs)</code>
-<div class="block">Compares this string to the specified <code>CharSequence</code>.</div>
-</td>
-</tr>
-<tr id="i9" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#contentEquals-java.lang.StringBuffer-">contentEquals</a></span>(<a href="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;sb)</code>
-<div class="block">Compares this string to the specified <code>StringBuffer</code>.</div>
-</td>
-</tr>
-<tr id="i10" 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><span class="memberNameLink"><a href="../../java/lang/String.html#copyValueOf-char:A-">copyValueOf</a></span>(char[]&nbsp;data)</code>
-<div class="block">Equivalent to <a href="../../java/lang/String.html#valueOf-char:A-"><code>valueOf(char[])</code></a>.</div>
-</td>
-</tr>
-<tr id="i11" 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><span class="memberNameLink"><a href="../../java/lang/String.html#copyValueOf-char:A-int-int-">copyValueOf</a></span>(char[]&nbsp;data,
-           int&nbsp;offset,
-           int&nbsp;count)</code>
-<div class="block">Equivalent to <a href="../../java/lang/String.html#valueOf-char:A-int-int-"><code>valueOf(char[], int, int)</code></a>.</div>
-</td>
-</tr>
-<tr id="i12" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#endsWith-java.lang.String-">endsWith</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;suffix)</code>
-<div class="block">Tests if this string ends with the specified suffix.</div>
-</td>
-</tr>
-<tr id="i13" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#equals-java.lang.Object-">equals</a></span>(<a href="../../java/lang/Object.html" title="class in java.lang">Object</a>&nbsp;anObject)</code>
-<div class="block">Compares this string to the specified object.</div>
-</td>
-</tr>
-<tr id="i14" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#equalsIgnoreCase-java.lang.String-">equalsIgnoreCase</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;anotherString)</code>
-<div class="block">Compares this <code>String</code> to another <code>String</code>, ignoring case
- considerations.</div>
-</td>
-</tr>
-<tr id="i15" 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><span class="memberNameLink"><a href="../../java/lang/String.html#format-java.util.Locale-java.lang.String-java.lang.Object...-">format</a></span>(<a href="../../java/util/Locale.html" title="class in java.util">Locale</a>&nbsp;l,
-      <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;format,
-      <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>...&nbsp;args)</code>
-<div class="block">Returns a formatted string using the specified locale, format string,
- and arguments.</div>
-</td>
-</tr>
-<tr id="i16" 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><span class="memberNameLink"><a href="../../java/lang/String.html#format-java.lang.String-java.lang.Object...-">format</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;format,
-      <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>...&nbsp;args)</code>
-<div class="block">Returns a formatted string using the specified format string and
- arguments.</div>
-</td>
-</tr>
-<tr id="i17" class="rowColor">
-<td class="colFirst"><code>byte[]</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#getBytes--">getBytes</a></span>()</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 id="i18" class="altColor">
-<td class="colFirst"><code>byte[]</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#getBytes-java.nio.charset.Charset-">getBytes</a></span>(<a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</code>
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the given
- <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>, storing the result into a
- new byte array.</div>
-</td>
-</tr>
-<tr id="i19" class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#getBytes-int-int-byte:A-int-">getBytes</a></span>(int&nbsp;srcBegin,
-        int&nbsp;srcEnd,
-        byte[]&nbsp;dst,
-        int&nbsp;dstBegin)</code>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
-<div class="block"><span class="deprecationComment">This method does not properly convert characters into
- bytes.  As of JDK&nbsp;1.1, the preferred way to do this is via the
- <a href="../../java/lang/String.html#getBytes--"><code>getBytes()</code></a> method, which uses the platform's default charset.</span></div>
-</div>
-</td>
-</tr>
-<tr id="i20" class="altColor">
-<td class="colFirst"><code>byte[]</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#getBytes-java.lang.String-">getBytes</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)</code>
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the named
- charset, storing the result into a new byte array.</div>
-</td>
-</tr>
-<tr id="i21" class="rowColor">
-<td class="colFirst"><code>void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#getChars-int-int-char:A-int-">getChars</a></span>(int&nbsp;srcBegin,
-        int&nbsp;srcEnd,
-        char[]&nbsp;dst,
-        int&nbsp;dstBegin)</code>
-<div class="block">Copies characters from this string into the destination character
- array.</div>
-</td>
-</tr>
-<tr id="i22" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#hashCode--">hashCode</a></span>()</code>
-<div class="block">Returns a hash code for this string.</div>
-</td>
-</tr>
-<tr id="i23" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#indexOf-int-">indexOf</a></span>(int&nbsp;ch)</code>
-<div class="block">Returns the index within this string of the first occurrence of
- the specified character.</div>
-</td>
-</tr>
-<tr id="i24" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#indexOf-int-int-">indexOf</a></span>(int&nbsp;ch,
-       int&nbsp;fromIndex)</code>
-<div class="block">Returns the index within this string of the first occurrence of the
- specified character, starting the search at the specified index.</div>
-</td>
-</tr>
-<tr id="i25" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#indexOf-java.lang.String-">indexOf</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</code>
-<div class="block">Returns the index within this string of the first occurrence of the
- specified substring.</div>
-</td>
-</tr>
-<tr id="i26" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#indexOf-java.lang.String-int-">indexOf</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str,
-       int&nbsp;fromIndex)</code>
-<div class="block">Returns the index within this string of the first occurrence of the
- specified substring, starting at the specified index.</div>
-</td>
-</tr>
-<tr id="i27" 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><span class="memberNameLink"><a href="../../java/lang/String.html#intern--">intern</a></span>()</code>
-<div class="block">Returns a canonical representation for the string object.</div>
-</td>
-</tr>
-<tr id="i28" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#isEmpty--">isEmpty</a></span>()</code>
-<div class="block">Returns <code>true</code> if, and only if, <a href="../../java/lang/String.html#length--"><code>length()</code></a> is <code>0</code>.</div>
-</td>
-</tr>
-<tr id="i29" 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><span class="memberNameLink"><a href="../../java/lang/String.html#join-java.lang.CharSequence-java.lang.CharSequence...-">join</a></span>(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
-    <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>...&nbsp;elements)</code>
-<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="i30" 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><span class="memberNameLink"><a href="../../java/lang/String.html#join-java.lang.CharSequence-java.lang.Iterable-">join</a></span>(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
-    <a href="../../java/lang/Iterable.html" title="interface in java.lang">Iterable</a>&lt;? extends <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&gt;&nbsp;elements)</code>
-<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="i31" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#lastIndexOf-int-">lastIndexOf</a></span>(int&nbsp;ch)</code>
-<div class="block">Returns the index within this string of the last occurrence of
- the specified character.</div>
-</td>
-</tr>
-<tr id="i32" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#lastIndexOf-int-int-">lastIndexOf</a></span>(int&nbsp;ch,
-           int&nbsp;fromIndex)</code>
-<div class="block">Returns the index within this string of the last occurrence of
- the specified character, searching backward starting at the
- specified index.</div>
-</td>
-</tr>
-<tr id="i33" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#lastIndexOf-java.lang.String-">lastIndexOf</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</code>
-<div class="block">Returns the index within this string of the last occurrence of the
- specified substring.</div>
-</td>
-</tr>
-<tr id="i34" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#lastIndexOf-java.lang.String-int-">lastIndexOf</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str,
-           int&nbsp;fromIndex)</code>
-<div class="block">Returns the index within this string of the last occurrence of the
- specified substring, searching backward starting at the specified index.</div>
-</td>
-</tr>
-<tr id="i35" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#length--">length</a></span>()</code>
-<div class="block">Returns the length of this string.</div>
-</td>
-</tr>
-<tr id="i36" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#matches-java.lang.String-">matches</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex)</code>
-<div class="block">Tells whether or not this string matches the given <a
- href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
-</td>
-</tr>
-<tr id="i37" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#offsetByCodePoints-int-int-">offsetByCodePoints</a></span>(int&nbsp;index,
-                  int&nbsp;codePointOffset)</code>
-<div class="block">Returns the index within this <code>String</code> that is
- offset from the given <code>index</code> by
- <code>codePointOffset</code> code points.</div>
-</td>
-</tr>
-<tr id="i38" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#regionMatches-boolean-int-java.lang.String-int-int-">regionMatches</a></span>(boolean&nbsp;ignoreCase,
-             int&nbsp;toffset,
-             <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;other,
-             int&nbsp;ooffset,
-             int&nbsp;len)</code>
-<div class="block">Tests if two string regions are equal.</div>
-</td>
-</tr>
-<tr id="i39" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#regionMatches-int-java.lang.String-int-int-">regionMatches</a></span>(int&nbsp;toffset,
-             <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;other,
-             int&nbsp;ooffset,
-             int&nbsp;len)</code>
-<div class="block">Tests if two string regions are equal.</div>
-</td>
-</tr>
-<tr id="i40" 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><span class="memberNameLink"><a href="../../java/lang/String.html#replace-char-char-">replace</a></span>(char&nbsp;oldChar,
-       char&nbsp;newChar)</code>
-<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="i41" 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><span class="memberNameLink"><a href="../../java/lang/String.html#replace-java.lang.CharSequence-java.lang.CharSequence-">replace</a></span>(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;target,
-       <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;replacement)</code>
-<div class="block">Replaces each substring of this string that matches the literal target
- sequence with the specified literal replacement sequence.</div>
-</td>
-</tr>
-<tr id="i42" 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><span class="memberNameLink"><a href="../../java/lang/String.html#replaceAll-java.lang.String-java.lang.String-">replaceAll</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex,
-          <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replacement)</code>
-<div class="block">Replaces each substring of this string that matches the given <a
- href="../util/regex/Pattern.html#sum">regular expression</a> with the
- given replacement.</div>
-</td>
-</tr>
-<tr id="i43" 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><span class="memberNameLink"><a href="../../java/lang/String.html#replaceFirst-java.lang.String-java.lang.String-">replaceFirst</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex,
-            <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replacement)</code>
-<div class="block">Replaces the first substring of this string that matches the given <a
- href="../util/regex/Pattern.html#sum">regular expression</a> with the
- given replacement.</div>
-</td>
-</tr>
-<tr id="i44" 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><span class="memberNameLink"><a href="../../java/lang/String.html#split-java.lang.String-">split</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex)</code>
-<div class="block">Splits this string around matches of the given <a
- href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
-</td>
-</tr>
-<tr id="i45" 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><span class="memberNameLink"><a href="../../java/lang/String.html#split-java.lang.String-int-">split</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex,
-     int&nbsp;limit)</code>
-<div class="block">Splits this string around matches of the given
- <a href="../util/regex/Pattern.html#sum">regular expression</a>.</div>
-</td>
-</tr>
-<tr id="i46" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#startsWith-java.lang.String-">startsWith</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;prefix)</code>
-<div class="block">Tests if this string starts with the specified prefix.</div>
-</td>
-</tr>
-<tr id="i47" class="rowColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#startsWith-java.lang.String-int-">startsWith</a></span>(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;prefix,
-          int&nbsp;toffset)</code>
-<div class="block">Tests if the substring of this string beginning at the
- specified index starts with the specified prefix.</div>
-</td>
-</tr>
-<tr id="i48" 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><span class="memberNameLink"><a href="../../java/lang/String.html#subSequence-int-int-">subSequence</a></span>(int&nbsp;beginIndex,
-           int&nbsp;endIndex)</code>
-<div class="block">Returns a character sequence that is a subsequence of this sequence.</div>
-</td>
-</tr>
-<tr id="i49" 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><span class="memberNameLink"><a href="../../java/lang/String.html#substring-int-">substring</a></span>(int&nbsp;beginIndex)</code>
-<div class="block">Returns a string that is a substring of this string.</div>
-</td>
-</tr>
-<tr id="i50" 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><span class="memberNameLink"><a href="../../java/lang/String.html#substring-int-int-">substring</a></span>(int&nbsp;beginIndex,
-         int&nbsp;endIndex)</code>
-<div class="block">Returns a string that is a substring of this string.</div>
-</td>
-</tr>
-<tr id="i51" class="rowColor">
-<td class="colFirst"><code>char[]</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../java/lang/String.html#toCharArray--">toCharArray</a></span>()</code>
-<div class="block">Converts this string to a new character array.</div>
-</td>
-</tr>
-<tr id="i52" 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><span class="memberNameLink"><a href="../../java/lang/String.html#toLowerCase--">toLowerCase</a></span>()</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 id="i53" 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><span class="memberNameLink"><a href="../../java/lang/String.html#toLowerCase-java.util.Locale-">toLowerCase</a></span>(<a href="../../java/util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</code>
-<div class="block">Converts all of the characters in this <code>String</code> to lower
- case using the rules of the given <code>Locale</code>.</div>
-</td>
-</tr>
-<tr id="i54" 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><span class="memberNameLink"><a href="../../java/lang/String.html#toString--">toString</a></span>()</code>
-<div class="block">This object (which is already a string!) is itself returned.</div>
-</td>
-</tr>
-<tr id="i55" 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><span class="memberNameLink"><a href="../../java/lang/String.html#toUpperCase--">toUpperCase</a></span>()</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 id="i56" 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><span class="memberNameLink"><a href="../../java/lang/String.html#toUpperCase-java.util.Locale-">toUpperCase</a></span>(<a href="../../java/util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</code>
-<div class="block">Converts all of the characters in this <code>String</code> to upper
- case using the rules of the given <code>Locale</code>.</div>
-</td>
-</tr>
-<tr id="i57" 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><span class="memberNameLink"><a href="../../java/lang/String.html#trim--">trim</a></span>()</code>
-<div class="block">Returns a string whose value is this string, with any leading and trailing
- whitespace removed.</div>
-</td>
-</tr>
-<tr id="i58" 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><span class="memberNameLink"><a href="../../java/lang/String.html#valueOf-boolean-">valueOf</a></span>(boolean&nbsp;b)</code>
-<div class="block">Returns the string representation of the <code>boolean</code> argument.</div>
-</td>
-</tr>
-<tr id="i59" 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><span class="memberNameLink"><a href="../../java/lang/String.html#valueOf-char-">valueOf</a></span>(char&nbsp;c)</code>
-<div class="block">Returns the string representation of the <code>char</code>
- argument.</div>
-</td>
-</tr>
-<tr id="i60" 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><span class="memberNameLink"><a href="../../java/lang/String.html#valueOf-char:A-">valueOf</a></span>(char[]&nbsp;data)</code>
-<div class="block">Returns the string representation of the <code>char</code> array
- argument.</div>
-</td>
-</tr>
-<tr id="i61" 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><span class="memberNameLink"><a href="../../java/lang/String.html#valueOf-char:A-int-int-">valueOf</a></span>(char[]&nbsp;data,
-       int&nbsp;offset,
-       int&nbsp;count)</code>
-<div class="block">Returns the string representation of a specific subarray of the
- <code>char</code> array argument.</div>
-</td>
-</tr>
-<tr id="i62" 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><span class="memberNameLink"><a href="../../java/lang/String.html#valueOf-double-">valueOf</a></span>(double&nbsp;d)</code>
-<div class="block">Returns the string representation of the <code>double</code> argument.</div>
-</td>
-</tr>
-<tr id="i63" 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><span class="memberNameLink"><a href="../../java/lang/String.html#valueOf-float-">valueOf</a></span>(float&nbsp;f)</code>
-<div class="block">Returns the string representation of the <code>float</code> argument.</div>
-</td>
-</tr>
-<tr id="i64" 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><span class="memberNameLink"><a href="../../java/lang/String.html#valueOf-int-">valueOf</a></span>(int&nbsp;i)</code>
-<div class="block">Returns the string representation of the <code>int</code> argument.</div>
-</td>
-</tr>
-<tr id="i65" 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><span class="memberNameLink"><a href="../../java/lang/String.html#valueOf-long-">valueOf</a></span>(long&nbsp;l)</code>
-<div class="block">Returns the string representation of the <code>long</code> argument.</div>
-</td>
-</tr>
-<tr id="i66" 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><span class="memberNameLink"><a href="../../java/lang/String.html#valueOf-java.lang.Object-">valueOf</a></span>(<a href="../../java/lang/Object.html" title="class in java.lang">Object</a>&nbsp;obj)</code>
-<div class="block">Returns the string representation of the <code>Object</code> argument.</div>
-</td>
-</tr>
-</table>
-<ul class="blockList">
-<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
-<!--   -->
-</a>
-<h3>Methods inherited from class&nbsp;java.lang.<a href="../../java/lang/Object.html" title="class in java.lang">Object</a></h3>
-<code><a href="../../java/lang/Object.html#clone--">clone</a>, <a href="../../java/lang/Object.html#finalize--">finalize</a>, <a href="../../java/lang/Object.html#getClass--">getClass</a>, <a href="../../java/lang/Object.html#notify--">notify</a>, <a href="../../java/lang/Object.html#notifyAll--">notifyAll</a>, <a href="../../java/lang/Object.html#wait--">wait</a>, <a href="../../java/lang/Object.html#wait-long-">wait</a>, <a href="../../java/lang/Object.html#wait-long-int-">wait</a></co [...]
-</ul>
-<ul class="blockList">
-<li class="blockList"><a name="methods.inherited.from.class.java.lang.CharSequence">
-<!--   -->
-</a>
-<h3>Methods inherited from interface&nbsp;java.lang.<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></h3>
-<code><a href="../../java/lang/CharSequence.html#chars--">chars</a>, <a href="../../java/lang/CharSequence.html#codePoints--">codePoints</a></code></li>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="details">
-<ul class="blockList">
-<li class="blockList">
-<!-- ============ FIELD DETAIL =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.detail">
-<!--   -->
-</a>
-<h3>Field Detail</h3>
-<a name="CASE_INSENSITIVE_ORDER">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>CASE_INSENSITIVE_ORDER</h4>
-<pre>public static final&nbsp;<a href="../../java/util/Comparator.html" title="interface in java.util">Comparator</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt; CASE_INSENSITIVE_ORDER</pre>
-<div class="block">A Comparator that orders <code>String</code> objects as by
- <code>compareToIgnoreCase</code>. This comparator is serializable.
- <p>
- Note that this Comparator does <em>not</em> take locale into account,
- and will result in an unsatisfactory ordering for certain locales.
- The java.text package provides <em>Collators</em> to allow
- locale-sensitive ordering.</div>
-<dl>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.2</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../java/text/Collator.html#compare-java.lang.String-java.lang.String-"><code>Collator.compare(String, String)</code></a></dd>
-</dl>
-</li>
-</ul>
-</li>
-</ul>
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<ul class="blockList">
-<li class="blockList"><a name="constructor.detail">
-<!--   -->
-</a>
-<h3>Constructor Detail</h3>
-<a name="String--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String()</pre>
-<div class="block">Initializes a newly created <code>String</code> object so that it represents
- an empty character sequence.  Note that use of this constructor is
- unnecessary since Strings are immutable.</div>
-</li>
-</ul>
-<a name="String-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;original)</pre>
-<div class="block">Initializes a newly created <code>String</code> object so that it represents
- the same sequence of characters as the argument; in other words, the
- newly created string is a copy of the argument string. Unless an
- explicit copy of <code>original</code> is needed, use of this constructor is
- unnecessary since Strings are immutable.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>original</code> - A <code>String</code></dd>
-</dl>
-</li>
-</ul>
-<a name="String-char:A-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(char[]&nbsp;value)</pre>
-<div class="block">Allocates a new <code>String</code> so that it represents the sequence of
- characters currently contained in the character array argument. The
- contents of the character array are copied; subsequent modification of
- the character array does not affect the newly created string.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>value</code> - The initial value of the string</dd>
-</dl>
-</li>
-</ul>
-<a name="String-char:A-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(char[]&nbsp;value,
-              int&nbsp;offset,
-              int&nbsp;count)</pre>
-<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
- of the character array argument. The <code>offset</code> argument is the
- index of the first character of the subarray and the <code>count</code>
- argument specifies the length of the subarray. The contents of the
- subarray are copied; subsequent modification of the character array does
- not affect the newly created string.</div>
-<dl>
-<dt><span class="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="../../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:A-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(int[]&nbsp;codePoints,
-              int&nbsp;offset,
-              int&nbsp;count)</pre>
-<div class="block">Allocates a new <code>String</code> that contains characters from a subarray
- of the <a href="Character.html#unicode">Unicode code point</a> array
- argument.  The <code>offset</code> argument is the index of the first code
- point of the subarray and the <code>count</code> argument specifies the
- length of the subarray.  The contents of the subarray are converted to
- <code>char</code>s; subsequent modification of the <code>int</code> array does not
- affect the newly created string.</div>
-<dl>
-<dt><span class="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="../../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="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a name="String-byte:A-int-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre><a href="../../java/lang/Deprecated.html" title="annotation in java.lang">@Deprecated</a>
-public&nbsp;String(byte[]&nbsp;ascii,
-                          int&nbsp;hibyte,
-                          int&nbsp;offset,
-                          int&nbsp;count)</pre>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">This method does not properly convert bytes into characters.
- As of JDK&nbsp;1.1, the preferred way to do this is via the
- <code>String</code> constructors that take a <a href="../../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.</span></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="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="../../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="seeLabel">See Also:</span></dt>
-<dd><a href="../../java/lang/String.html#String-byte:A-int-"><code>String(byte[], int)</code></a>, 
-<a href="../../java/lang/String.html#String-byte:A-int-int-java.lang.String-"><code>String(byte[], int, int, java.lang.String)</code></a>, 
-<a href="../../java/lang/String.html#String-byte:A-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:A-int-int-"><code>String(byte[], int, int)</code></a>, 
-<a href="../../java/lang/String.html#String-byte:A-java.lang.String-"><code>String(byte[], java.lang.String)</code></a>, 
-<a href="../../java/lang/String.html#String-byte:A-java.nio.charset.Charset-"><code>String(byte[], java.nio.charset.Charset)</code></a>, 
-<a href="../../java/lang/String.html#String-byte:A-"><code>String(byte[])</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="String-byte:A-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre><a href="../../java/lang/Deprecated.html" title="annotation in java.lang">@Deprecated</a>
-public&nbsp;String(byte[]&nbsp;ascii,
-                          int&nbsp;hibyte)</pre>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">This method does not properly convert bytes into
- characters.  As of JDK&nbsp;1.1, the preferred way to do this is via the
- <code>String</code> constructors that take a <a href="../../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.</span></div>
-<div class="block">Allocates a new <code>String</code> containing characters constructed from
- an array of 8-bit integer values. Each character <i>c</i>in the
- resulting string is constructed from the corresponding component
- <i>b</i> in the byte array such that:
-
- <blockquote><pre>
-     <b><i>c</i></b> == (char)(((hibyte &amp; 0xff) &lt;&lt; 8)
-                         | (<b><i>b</i></b> &amp; 0xff))
- </pre></blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ascii</code> - The bytes to be converted to characters</dd>
-<dd><code>hibyte</code> - The top 8 bits of each 16-bit Unicode code unit</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../java/lang/String.html#String-byte:A-int-int-java.lang.String-"><code>String(byte[], int, int, java.lang.String)</code></a>, 
-<a href="../../java/lang/String.html#String-byte:A-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:A-int-int-"><code>String(byte[], int, int)</code></a>, 
-<a href="../../java/lang/String.html#String-byte:A-java.lang.String-"><code>String(byte[], java.lang.String)</code></a>, 
-<a href="../../java/lang/String.html#String-byte:A-java.nio.charset.Charset-"><code>String(byte[], java.nio.charset.Charset)</code></a>, 
-<a href="../../java/lang/String.html#String-byte:A-"><code>String(byte[])</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="String-byte:A-int-int-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(byte[]&nbsp;bytes,
-              int&nbsp;offset,
-              int&nbsp;length,
-              <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)
-       throws <a href="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the specified charset.  The length of the new <code>String</code>
- is a function of the charset, and hence may not be equal to the length
- of the subarray.
-
- <p> The behavior of this constructor when the given bytes are not valid
- in the given charset is unspecified.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="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="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
-<dt><span class="throwsLabel">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="simpleTagLabel">Since:</span></dt>
-<dd>JDK1.1</dd>
-</dl>
-</li>
-</ul>
-<a name="String-byte:A-int-int-java.nio.charset.Charset-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(byte[]&nbsp;bytes,
-              int&nbsp;offset,
-              int&nbsp;length,
-              <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.
- The length of the new <code>String</code> is a function of the charset, and
- hence may not be equal to the length of the subarray.
-
- <p> This method always replaces malformed-input and unmappable-character
- sequences with this charset's default replacement string.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="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="../../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="throwsLabel">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="simpleTagLabel">Since:</span></dt>
-<dd>1.6</dd>
-</dl>
-</li>
-</ul>
-<a name="String-byte:A-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(byte[]&nbsp;bytes,
-              <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)
-       throws <a href="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
- using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.  The
- length of the new <code>String</code> is a function of the charset, and hence
- may not be equal to the length of the byte array.
-
- <p> The behavior of this constructor when the given bytes are not valid
- in the given charset is unspecified.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="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="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a></dd>
-<dt><span class="throwsLabel">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="simpleTagLabel">Since:</span></dt>
-<dd>JDK1.1</dd>
-</dl>
-</li>
-</ul>
-<a name="String-byte:A-java.nio.charset.Charset-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(byte[]&nbsp;bytes,
-              <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of
- bytes using the specified <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>.
- The length of the new <code>String</code> is a function of the charset, and
- hence may not be equal to the length of the byte array.
-
- <p> This method always replaces malformed-input and unmappable-character
- sequences with this charset's default replacement string.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">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="simpleTagLabel">Since:</span></dt>
-<dd>1.6</dd>
-</dl>
-</li>
-</ul>
-<a name="String-byte:A-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(byte[]&nbsp;bytes,
-              int&nbsp;offset,
-              int&nbsp;length)</pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified subarray of
- bytes using the platform's default charset.  The length of the new
- <code>String</code> is a function of the charset, and hence may not be equal
- to the length of the subarray.
-
- <p> The behavior of this constructor when the given bytes are not valid
- in the default charset is unspecified.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="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="../../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="simpleTagLabel">Since:</span></dt>
-<dd>JDK1.1</dd>
-</dl>
-</li>
-</ul>
-<a name="String-byte:A-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(byte[]&nbsp;bytes)</pre>
-<div class="block">Constructs a new <code>String</code> by decoding the specified array of bytes
- using the platform's default charset.  The length of the new <code>String</code> is a function of the charset, and hence may not be equal to the
- length of the byte array.
-
- <p> The behavior of this constructor when the given bytes are not valid
- in the default charset is unspecified.  The <a href="../../java/nio/charset/CharsetDecoder.html" title="class in java.nio.charset"><code>CharsetDecoder</code></a> class should be used when more control
- over the decoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>bytes</code> - The bytes to be decoded into characters</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>JDK1.1</dd>
-</dl>
-</li>
-</ul>
-<a name="String-java.lang.StringBuffer-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(<a href="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;buffer)</pre>
-<div class="block">Allocates a new string that contains the sequence of characters
- currently contained in the string buffer argument. The contents of the
- string buffer are copied; subsequent modification of the string buffer
- does not affect the newly created string.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>buffer</code> - A <code>StringBuffer</code></dd>
-</dl>
-</li>
-</ul>
-<a name="String-java.lang.StringBuilder-">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>String</h4>
-<pre>public&nbsp;String(<a href="../../java/lang/StringBuilder.html" title="class in java.lang">StringBuilder</a>&nbsp;builder)</pre>
-<div class="block">Allocates a new string that contains the sequence of characters
- currently contained in the string builder argument. The contents of the
- string builder are copied; subsequent modification of the string builder
- does not affect the newly created string.
-
- <p> This constructor is provided to ease migration to <code>StringBuilder</code>. Obtaining a string from a string builder via the <code>toString</code> method is likely to run faster and is generally preferred.</div>
-<dl>
-<dt><span class="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>
-<!-- ============ METHOD DETAIL ========== -->
-<ul class="blockList">
-<li class="blockList"><a name="method.detail">
-<!--   -->
-</a>
-<h3>Method Detail</h3>
-<a name="length--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>length</h4>
-<pre>public&nbsp;int&nbsp;length()</pre>
-<div class="block">Returns the length of this string.
- The length is equal to the number of <a href="Character.html#unicode">Unicode
- code units</a> in the string.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../java/lang/CharSequence.html#length--">length</a></code>&nbsp;in interface&nbsp;<code><a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the length of the sequence of characters represented by this
-          object.</dd>
-</dl>
-</li>
-</ul>
-<a name="isEmpty--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>isEmpty</h4>
-<pre>public&nbsp;boolean&nbsp;isEmpty()</pre>
-<div class="block">Returns <code>true</code> if, and only if, <a href="../../java/lang/String.html#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="../../java/lang/String.html#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 name="charAt-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>charAt</h4>
-<pre>public&nbsp;char&nbsp;charAt(int&nbsp;index)</pre>
-<div class="block">Returns the <code>char</code> value at the
- specified index. An index ranges from <code>0</code> to
- <code>length() - 1</code>. The first <code>char</code> value of the sequence
- is at index <code>0</code>, the next at index <code>1</code>,
- and so on, as for array indexing.
-
- <p>If the <code>char</code> value specified by the index is a
- <a href="Character.html#unicode">surrogate</a>, the surrogate
- value is returned.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../java/lang/CharSequence.html#charAt-int-">charAt</a></code>&nbsp;in interface&nbsp;<code><a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
-<dt><span class="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="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the <code>index</code>
-             argument is negative or not less than the length of this
-             string.</dd>
-</dl>
-</li>
-</ul>
-<a name="codePointAt-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>codePointAt</h4>
-<pre>public&nbsp;int&nbsp;codePointAt(int&nbsp;index)</pre>
-<div class="block">Returns the character (Unicode code point) at the specified
- index. The index refers to <code>char</code> values
- (Unicode code units) and ranges from <code>0</code> to
- <a href="../../java/lang/String.html#length--"><code>length()</code></a><code>- 1</code>.
-
- <p> If the <code>char</code> value specified at the given index
- is in the high-surrogate range, the following index is less
- than the length of this <code>String</code>, and the
- <code>char</code> value at the following index is in the
- low-surrogate range, then the supplementary code point
- corresponding to this surrogate pair is returned. Otherwise,
- the <code>char</code> value at the given index is returned.</div>
-<dl>
-<dt><span class="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="../../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="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a name="codePointBefore-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>codePointBefore</h4>
-<pre>public&nbsp;int&nbsp;codePointBefore(int&nbsp;index)</pre>
-<div class="block">Returns the character (Unicode code point) before the specified
- index. The index refers to <code>char</code> values
- (Unicode code units) and ranges from <code>1</code> to <a href="../../java/lang/CharSequence.html#length--"><code>length</code></a>.
-
- <p> If the <code>char</code> value at <code>(index - 1)</code>
- is in the low-surrogate range, <code>(index - 2)</code> is not
- negative, and the <code>char</code> value at <code>(index -
- 2)</code> is in the high-surrogate range, then the
- supplementary code point value of the surrogate pair is
- returned. If the <code>char</code> value at <code>index -
- 1</code> is an unpaired low-surrogate or a high-surrogate, the
- surrogate value is returned.</div>
-<dl>
-<dt><span class="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="../../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="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a name="codePointCount-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>codePointCount</h4>
-<pre>public&nbsp;int&nbsp;codePointCount(int&nbsp;beginIndex,
-                          int&nbsp;endIndex)</pre>
-<div class="block">Returns the number of Unicode code points in the specified text
- range of this <code>String</code>. The text range begins at the
- specified <code>beginIndex</code> and extends to the
- <code>char</code> at index <code>endIndex - 1</code>. Thus the
- length (in <code>char</code>s) of the text range is
- <code>endIndex-beginIndex</code>. Unpaired surrogates within
- the text range count as one code point each.</div>
-<dl>
-<dt><span class="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="../../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="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a name="offsetByCodePoints-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>offsetByCodePoints</h4>
-<pre>public&nbsp;int&nbsp;offsetByCodePoints(int&nbsp;index,
-                              int&nbsp;codePointOffset)</pre>
-<div class="block">Returns the index within this <code>String</code> that is
- offset from the given <code>index</code> by
- <code>codePointOffset</code> code points. Unpaired surrogates
- within the text range given by <code>index</code> and
- <code>codePointOffset</code> count as one code point each.</div>
-<dl>
-<dt><span class="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="../../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="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a name="getChars-int-int-char:A-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getChars</h4>
-<pre>public&nbsp;void&nbsp;getChars(int&nbsp;srcBegin,
-                     int&nbsp;srcEnd,
-                     char[]&nbsp;dst,
-                     int&nbsp;dstBegin)</pre>
-<div class="block">Copies characters from this string into the destination character
- array.
- <p>
- The first character to be copied is at index <code>srcBegin</code>;
- the last character to be copied is at index <code>srcEnd-1</code>
- (thus the total number of characters to be copied is
- <code>srcEnd-srcBegin</code>). The characters are copied into the
- subarray of <code>dst</code> starting at index <code>dstBegin</code>
- and ending at index:
- <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="../../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:A-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getBytes</h4>
-<pre><a href="../../java/lang/Deprecated.html" title="annotation in java.lang">@Deprecated</a>
-public&nbsp;void&nbsp;getBytes(int&nbsp;srcBegin,
-                                 int&nbsp;srcEnd,
-                                 byte[]&nbsp;dst,
-                                 int&nbsp;dstBegin)</pre>
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">This method does not properly convert characters into
- bytes.  As of JDK&nbsp;1.1, the preferred way to do this is via the
- <a href="../../java/lang/String.html#getBytes--"><code>getBytes()</code></a> method, which uses the platform's default charset.</span></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="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - If any of the following is true:
-          <ul>
-            <li> <code>srcBegin</code> is negative
-            <li> <code>srcBegin</code> is greater than <code>srcEnd</code>
-            <li> <code>srcEnd</code> is greater than the length of this String
-            <li> <code>dstBegin</code> is negative
-            <li> <code>dstBegin+(srcEnd-srcBegin)</code> is larger than <code>dst.length</code>
-          </ul></dd>
-</dl>
-</li>
-</ul>
-<a name="getBytes-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getBytes</h4>
-<pre>public&nbsp;byte[]&nbsp;getBytes(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;charsetName)
-                throws <a href="../../java/io/UnsupportedEncodingException.html" title="class in java.io">UnsupportedEncodingException</a></pre>
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the named
- charset, storing the result into a new byte array.
-
- <p> The behavior of this method when this string cannot be encoded in
- the given charset is unspecified.  The <a href="../../java/nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more control
- over the encoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">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="returnLabel">Returns:</span></dt>
-<dd>The resultant byte array</dd>
-<dt><span class="throwsLabel">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="simpleTagLabel">Since:</span></dt>
-<dd>JDK1.1</dd>
-</dl>
-</li>
-</ul>
-<a name="getBytes-java.nio.charset.Charset-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getBytes</h4>
-<pre>public&nbsp;byte[]&nbsp;getBytes(<a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">Charset</a>&nbsp;charset)</pre>
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the given
- <a href="../../java/nio/charset/Charset.html" title="class in java.nio.charset">charset</a>, storing the result into a
- new byte array.
-
- <p> This method always replaces malformed-input and unmappable-character
- sequences with this charset's default replacement byte array.  The
- <a href="../../java/nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more
- control over the encoding process is required.</div>
-<dl>
-<dt><span class="paramLabel">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="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 name="getBytes--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getBytes</h4>
-<pre>public&nbsp;byte[]&nbsp;getBytes()</pre>
-<div class="block">Encodes this <code>String</code> into a sequence of bytes using the
- platform's default charset, storing the result into a new byte array.
-
- <p> The behavior of this method when this string cannot be encoded in
- the default charset is unspecified.  The <a href="../../java/nio/charset/CharsetEncoder.html" title="class in java.nio.charset"><code>CharsetEncoder</code></a> class should be used when more control
- over the encoding process is required.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>The resultant byte array</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>JDK1.1</dd>
-</dl>
-</li>
-</ul>
-<a name="equals-java.lang.Object-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>equals</h4>
-<pre>public&nbsp;boolean&nbsp;equals(<a href="../../java/lang/Object.html" title="class in java.lang">Object</a>&nbsp;anObject)</pre>
-<div class="block">Compares this string to the specified object.  The result is <code>true</code> if and only if the argument is not <code>null</code> and is a <code>String</code> object that represents the same sequence of characters as this
- object.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code><a href="../../java/lang/Object.html#equals-java.lang.Object-">equals</a></code>&nbsp;in class&nbsp;<code><a href="../../java/lang/Object.html" title="class in java.lang">Object</a></code></dd>
-<dt><span class="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="../../java/lang/String.html#compareTo-java.lang.String-"><code>compareTo(String)</code></a>, 
-<a href="../../java/lang/String.html#equalsIgnoreCase-java.lang.String-"><code>equalsIgnoreCase(String)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="contentEquals-java.lang.StringBuffer-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>contentEquals</h4>
-<pre>public&nbsp;boolean&nbsp;contentEquals(<a href="../../java/lang/StringBuffer.html" title="class in java.lang">StringBuffer</a>&nbsp;sb)</pre>
-<div class="block">Compares this string to the specified <code>StringBuffer</code>.  The result
- is <code>true</code> if and only if this <code>String</code> represents the same
- sequence of characters as the specified <code>StringBuffer</code>. This method
- synchronizes on the <code>StringBuffer</code>.</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 name="contentEquals-java.lang.CharSequence-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>contentEquals</h4>
-<pre>public&nbsp;boolean&nbsp;contentEquals(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;cs)</pre>
-<div class="block">Compares this string to the specified <code>CharSequence</code>.  The
- result is <code>true</code> if and only if this <code>String</code> represents the
- same sequence of char values as the specified sequence. Note that if the
- <code>CharSequence</code> is a <code>StringBuffer</code> then the method
- synchronizes on it.</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 name="equalsIgnoreCase-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>equalsIgnoreCase</h4>
-<pre>public&nbsp;boolean&nbsp;equalsIgnoreCase(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;anotherString)</pre>
-<div class="block">Compares this <code>String</code> to another <code>String</code>, ignoring case
- considerations.  Two strings are considered equal ignoring case if they
- are of the same length and corresponding characters in the two strings
- are equal ignoring case.
-
- <p> Two characters <code>c1</code> and <code>c2</code> are considered the same
- ignoring case if at least one of the following is true:
- <ul>
-   <li> The two characters are the same (as compared by the
-        <code>==</code> operator)
-   <li> Applying the method <a href="../../java/lang/Character.html#toUpperCase-char-"><code>Character.toUpperCase(char)</code></a> to each character
-        produces the same result
-   <li> Applying the method <a href="../../java/lang/Character.html#toLowerCase-char-"><code>Character.toLowerCase(char)</code></a> to each character
-        produces the same result
- </ul></div>
-<dl>
-<dt><span class="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="../../java/lang/String.html#equals-java.lang.Object-"><code>equals(Object)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="compareTo-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>compareTo</h4>
-<pre>public&nbsp;int&nbsp;compareTo(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;anotherString)</pre>
-<div class="block">Compares two strings lexicographically.
- The comparison is based on the Unicode value of each character in
- the strings. The character sequence represented by this
- <code>String</code> object is compared lexicographically to the
- character sequence represented by the argument string. The result is
- a negative integer if this <code>String</code> object
- lexicographically precedes the argument string. The result is a
- positive integer if this <code>String</code> object lexicographically
- follows the argument string. The result is zero if the strings
- are equal; <code>compareTo</code> returns <code>0</code> exactly when
- the <a href="../../java/lang/String.html#equals-java.lang.Object-"><code>equals(Object)</code></a> method would return <code>true</code>.
- <p>
- This is the definition of lexicographic ordering. If two strings are
- different, then either they have different characters at some index
- that is a valid index for both strings, or their lengths are different,
- or both. If they have different characters at one or more index
- positions, let <i>k</i> be the smallest such index; then the string
- whose character at position <i>k</i> has the smaller value, as
- determined by using the &lt; operator, lexicographically precedes the
- other string. In this case, <code>compareTo</code> returns the
- difference of the two character values at position <code>k</code> in
- the two string -- that is, the value:
- <blockquote><pre>
- this.charAt(k)-anotherString.charAt(k)
- </pre></blockquote>
- If there is no index position at which they differ, then the shorter
- string lexicographically precedes the longer string. In this case,
- <code>compareTo</code> returns the difference of the lengths of the
- strings -- that is, the value:
- <blockquote><pre>
- this.length()-anotherString.length()
- </pre></blockquote></div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../java/lang/Comparable.html#compareTo-T-">compareTo</a></code>&nbsp;in interface&nbsp;<code><a href="../../java/lang/Comparable.html" title="interface in java.lang">Comparable</a>&lt;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&gt;</code></dd>
-<dt><span class="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 name="compareToIgnoreCase-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>compareToIgnoreCase</h4>
-<pre>public&nbsp;int&nbsp;compareToIgnoreCase(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
-<div class="block">Compares two strings lexicographically, ignoring case
- differences. This method returns an integer whose sign is that of
- calling <code>compareTo</code> with normalized versions of the strings
- where case differences have been eliminated by calling
- <code>Character.toLowerCase(Character.toUpperCase(character))</code> on
- each character.
- <p>
- Note that this method does <em>not</em> take locale into account,
- and will result in an unsatisfactory ordering for certain locales.
- The java.text package provides <em>collators</em> to allow
- locale-sensitive ordering.</div>
-<dl>
-<dt><span class="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="../../java/text/Collator.html#compare-java.lang.String-java.lang.String-"><code>Collator.compare(String, String)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="regionMatches-int-java.lang.String-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>regionMatches</h4>
-<pre>public&nbsp;boolean&nbsp;regionMatches(int&nbsp;toffset,
-                             <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;other,
-                             int&nbsp;ooffset,
-                             int&nbsp;len)</pre>
-<div class="block">Tests if two string regions are equal.
- <p>
- A substring of this <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></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 name="regionMatches-boolean-int-java.lang.String-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>regionMatches</h4>
-<pre>public&nbsp;boolean&nbsp;regionMatches(boolean&nbsp;ignoreCase,
-                             int&nbsp;toffset,
-                             <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;other,
-                             int&nbsp;ooffset,
-                             int&nbsp;len)</pre>
-<div class="block">Tests if two string regions are equal.
- <p>
- A substring of this <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(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="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 name="startsWith-java.lang.String-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>startsWith</h4>
-<pre>public&nbsp;boolean&nbsp;startsWith(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;prefix,
-                          int&nbsp;toffset)</pre>
-<div class="block">Tests if the substring of this string beginning at the
- specified index starts with the specified prefix.</div>
-<dl>
-<dt><span class="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 name="startsWith-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>startsWith</h4>
-<pre>public&nbsp;boolean&nbsp;startsWith(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;prefix)</pre>
-<div class="block">Tests if this string starts with the specified prefix.</div>
-<dl>
-<dt><span class="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="../../java/lang/String.html#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 name="endsWith-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>endsWith</h4>
-<pre>public&nbsp;boolean&nbsp;endsWith(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;suffix)</pre>
-<div class="block">Tests if this string ends with the specified suffix.</div>
-<dl>
-<dt><span class="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="../../java/lang/String.html#equals-java.lang.Object-"><code>equals(Object)</code></a> method.</dd>
-</dl>
-</li>
-</ul>
-<a name="hashCode--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>hashCode</h4>
-<pre>public&nbsp;int&nbsp;hashCode()</pre>
-<div class="block">Returns a hash code for this string. The hash code for a
- <code>String</code> object is computed as
- <blockquote><pre>
- s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
- </pre></blockquote>
- using <code>int</code> arithmetic, where <code>s[i]</code> is the
- <i>i</i>th character of the string, <code>n</code> is the length of
- the string, and <code>^</code> indicates exponentiation.
- (The hash value of the empty string is zero.)</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code><a href="../../java/lang/Object.html#hashCode--">hashCode</a></code>&nbsp;in class&nbsp;<code><a href="../../java/lang/Object.html" title="class in java.lang">Object</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a hash code value for this object.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../java/lang/Object.html#equals-java.lang.Object-"><code>Object.equals(java.lang.Object)</code></a>, 
-<a href="../../java/lang/System.html#identityHashCode-java.lang.Object-"><code>System.identityHashCode(java.lang.Object)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="indexOf-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>indexOf</h4>
-<pre>public&nbsp;int&nbsp;indexOf(int&nbsp;ch)</pre>
-<div class="block">Returns the index within this string of the first occurrence of
- the specified character. If a character with value
- <code>ch</code> occurs in the character sequence represented by
- this <code>String</code> object, then the index (in Unicode
- code units) of the first such occurrence is returned. For
- values of <code>ch</code> in the range from 0 to 0xFFFF
- (inclusive), this is the smallest value <i>k</i> such that:
- <blockquote><pre>
- this.charAt(<i>k</i>) == ch
- </pre></blockquote>
- is true. For other values of <code>ch</code>, it is the
- smallest value <i>k</i> such that:
- <blockquote><pre>
- this.codePointAt(<i>k</i>) == ch
- </pre></blockquote>
- is true. In either case, if no such character occurs in this
- string, then <code>-1</code> is returned.</div>
-<dl>
-<dt><span class="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 name="indexOf-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>indexOf</h4>
-<pre>public&nbsp;int&nbsp;indexOf(int&nbsp;ch,
-                   int&nbsp;fromIndex)</pre>
-<div class="block">Returns the index within this string of the first occurrence of the
- specified character, starting the search at the specified index.
- <p>
- If a character with value <code>ch</code> occurs in the
- character sequence represented by this <code>String</code>
- object at an index no smaller than <code>fromIndex</code>, then
- the index of the first such occurrence is returned. For values
- of <code>ch</code> in the range from 0 to 0xFFFF (inclusive),
- this is the smallest value <i>k</i> such that:
- <blockquote><pre>
- (this.charAt(<i>k</i>) == ch) <code> &amp;&amp;</code> (<i>k</i> &gt;= fromIndex)
- </pre></blockquote>
- is true. For other values of <code>ch</code>, it is the
- smallest value <i>k</i> such that:
- <blockquote><pre>
- (this.codePointAt(<i>k</i>) == ch) <code> &amp;&amp;</code> (<i>k</i> &gt;= fromIndex)
- </pre></blockquote>
- is true. In either case, if no such character occurs in this
- string at or after position <code>fromIndex</code>, then
- <code>-1</code> is returned.
-
- <p>
- There is no restriction on the value of <code>fromIndex</code>. If it
- is negative, it has the same effect as if it were zero: this entire
- string may be searched. If it is greater than the length of this
- string, it has the same effect as if it were equal to the length of
- this string: <code>-1</code> is returned.
-
- <p>All indices are specified in <code>char</code> values
- (Unicode code units).</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ch</code> - a character (Unicode code point).</dd>
-<dd><code>fromIndex</code> - the index to start the search from.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index of the first occurrence of the character in the
-          character sequence represented by this object that is greater
-          than or equal to <code>fromIndex</code>, or <code>-1</code>
-          if the character does not occur.</dd>
-</dl>
-</li>
-</ul>
-<a name="lastIndexOf-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>lastIndexOf</h4>
-<pre>public&nbsp;int&nbsp;lastIndexOf(int&nbsp;ch)</pre>
-<div class="block">Returns the index within this string of the last occurrence of
- the specified character. For values of <code>ch</code> in the
- range from 0 to 0xFFFF (inclusive), the index (in Unicode code
- units) returned is the largest value <i>k</i> such that:
- <blockquote><pre>
- this.charAt(<i>k</i>) == ch
- </pre></blockquote>
- is true. For other values of <code>ch</code>, it is the
- largest value <i>k</i> such that:
- <blockquote><pre>
- this.codePointAt(<i>k</i>) == ch
- </pre></blockquote>
- is true.  In either case, if no such character occurs in this
- string, then <code>-1</code> is returned.  The
- <code>String</code> is searched backwards starting at the last
- character.</div>
-<dl>
-<dt><span class="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 name="lastIndexOf-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>lastIndexOf</h4>
-<pre>public&nbsp;int&nbsp;lastIndexOf(int&nbsp;ch,
-                       int&nbsp;fromIndex)</pre>
-<div class="block">Returns the index within this string of the last occurrence of
- the specified character, searching backward starting at the
- specified index. For values of <code>ch</code> in the range
- from 0 to 0xFFFF (inclusive), the index returned is the largest
- value <i>k</i> such that:
- <blockquote><pre>
- (this.charAt(<i>k</i>) == ch) <code> &amp;&amp;</code> (<i>k</i> &lt;= fromIndex)
- </pre></blockquote>
- is true. For other values of <code>ch</code>, it is the
- largest value <i>k</i> such that:
- <blockquote><pre>
- (this.codePointAt(<i>k</i>) == ch) <code> &amp;&amp;</code> (<i>k</i> &lt;= fromIndex)
- </pre></blockquote>
- is true. In either case, if no such character occurs in this
- string at or before position <code>fromIndex</code>, then
- <code>-1</code> is returned.
-
- <p>All indices are specified in <code>char</code> values
- (Unicode code units).</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>ch</code> - a character (Unicode code point).</dd>
-<dd><code>fromIndex</code> - the index to start the search from. There is no
-          restriction on the value of <code>fromIndex</code>. If it is
-          greater than or equal to the length of this string, it has
-          the same effect as if it were equal to one less than the
-          length of this string: this entire string may be searched.
-          If it is negative, it has the same effect as if it were -1:
-          -1 is returned.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the index of the last occurrence of the character in the
-          character sequence represented by this object that is less
-          than or equal to <code>fromIndex</code>, or <code>-1</code>
-          if the character does not occur before that point.</dd>
-</dl>
-</li>
-</ul>
-<a name="indexOf-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>indexOf</h4>
-<pre>public&nbsp;int&nbsp;indexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
-<div class="block">Returns the index within this string of the first occurrence of the
- specified substring.
-
- <p>The returned index is the smallest value <i>k</i> for which:
- <blockquote><pre>
- this.startsWith(str, <i>k</i>)
- </pre></blockquote>
- If no such value of <i>k</i> exists, then <code>-1</code> is returned.</div>
-<dl>
-<dt><span class="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 name="indexOf-java.lang.String-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>indexOf</h4>
-<pre>public&nbsp;int&nbsp;indexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str,
-                   int&nbsp;fromIndex)</pre>
-<div class="block">Returns the index within this string of the first occurrence of the
- specified substring, starting at the specified index.
-
- <p>The returned index is the smallest value <i>k</i> for which:
- <blockquote><pre>
- <i>k</i> &gt;= fromIndex <code> &amp;&amp;</code> 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="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 name="lastIndexOf-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>lastIndexOf</h4>
-<pre>public&nbsp;int&nbsp;lastIndexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
-<div class="block">Returns the index within this string of the last occurrence of the
- specified substring.  The last occurrence of the empty string ""
- is considered to occur at the index value <code>this.length()</code>.
-
- <p>The returned index is the largest value <i>k</i> for which:
- <blockquote><pre>
- this.startsWith(str, <i>k</i>)
- </pre></blockquote>
- If no such value of <i>k</i> exists, then <code>-1</code> is returned.</div>
-<dl>
-<dt><span class="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 name="lastIndexOf-java.lang.String-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>lastIndexOf</h4>
-<pre>public&nbsp;int&nbsp;lastIndexOf(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str,
-                       int&nbsp;fromIndex)</pre>
-<div class="block">Returns the index within this string of the last occurrence of the
- specified substring, searching backward starting at the specified index.
-
- <p>The returned index is the largest value <i>k</i> for which:
- <blockquote><pre>
- <i>k</i> <code> &lt;=</code> fromIndex <code> &amp;&amp;</code> 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="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 name="substring-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>substring</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;substring(int&nbsp;beginIndex)</pre>
-<div class="block">Returns a 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="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if
-             <code>beginIndex</code> is negative or larger than the
-             length of this <code>String</code> object.</dd>
-</dl>
-</li>
-</ul>
-<a name="substring-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>substring</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;substring(int&nbsp;beginIndex,
-                        int&nbsp;endIndex)</pre>
-<div class="block">Returns a 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="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - if the
-             <code>beginIndex</code> is negative, or
-             <code>endIndex</code> is larger than the length of
-             this <code>String</code> object, or
-             <code>beginIndex</code> is larger than
-             <code>endIndex</code>.</dd>
-</dl>
-</li>
-</ul>
-<a name="subSequence-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>subSequence</h4>
-<pre>public&nbsp;<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;subSequence(int&nbsp;beginIndex,
-                                int&nbsp;endIndex)</pre>
-<div class="block">Returns a character sequence that is a subsequence of this sequence.
-
- <p> An invocation of this method of the form
-
- <blockquote><pre>
- str.subSequence(begin,&nbsp;end)</pre></blockquote>
-
- behaves in exactly the same way as the invocation
-
- <blockquote><pre>
- str.substring(begin,&nbsp;end)</pre></blockquote></div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../java/lang/CharSequence.html#subSequence-int-int-">subSequence</a></code>&nbsp;in interface&nbsp;<code><a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
-<dt><span class="simpleTagLabel">API Note:</span></dt>
-<dd>This method is defined so that the <code>String</code> class can implement
- the <a href="../../java/lang/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="../../java/lang/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 name="concat-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>concat</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;concat(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;str)</pre>
-<div class="block">Concatenates the specified string to the end of this string.
- <p>
- If the length of the argument string is <code>0</code>, then this
- <code>String</code> object is returned. Otherwise, a
- <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 name="replace-char-char-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>replace</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replace(char&nbsp;oldChar,
-                      char&nbsp;newChar)</pre>
-<div class="block">Returns a 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 name="matches-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>matches</h4>
-<pre>public&nbsp;boolean&nbsp;matches(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex)</pre>
-<div class="block">Tells whether or not this string matches the given <a
- href="../util/regex/Pattern.html#sum">regular expression</a>.
-
- <p> An invocation of this method of the form
- <i>str</i><code>.matches(</code><i>regex</i><code>)</code> yields exactly 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#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="../../java/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="../../java/util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="contains-java.lang.CharSequence-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>contains</h4>
-<pre>public&nbsp;boolean&nbsp;contains(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;s)</pre>
-<div class="block">Returns true if and only if this string contains the specified
- sequence of char values.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>s</code> - the sequence to search for</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>true if this string contains <code>s</code>, false otherwise</dd>
-<dt><span class="simpleTagLabel">Since:</span></dt>
-<dd>1.5</dd>
-</dl>
-</li>
-</ul>
-<a name="replaceFirst-java.lang.String-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>replaceFirst</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replaceFirst(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex,
-                           <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replacement)</pre>
-<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="../../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>(<i>regex</i>).<a href="../../java/util/regex/Pattern.html#matcher-java.lang.CharSequence-"><code>matcher</code></a>(<i>str</i>).<a href="../../java/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="../../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.</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="../../java/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="../../java/util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="replaceAll-java.lang.String-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>replaceAll</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replaceAll(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex,
-                         <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replacement)</pre>
-<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="../../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>(<i>regex</i>).<a href="../../java/util/regex/Pattern.html#matcher-java.lang.CharSequence-"><code>matcher</code></a>(<i>str</i>).<a href="../../java/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="../../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.</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="../../java/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="../../java/util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="replace-java.lang.CharSequence-java.lang.CharSequence-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>replace</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;replace(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;target,
-                      <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;replacement)</pre>
-<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 name="split-java.lang.String-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>split</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>[]&nbsp;split(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex,
-                      int&nbsp;limit)</pre>
-<div class="block">Splits this string around matches of the given
- <a href="../util/regex/Pattern.html#sum">regular expression</a>.
-
- <p> The array returned by this method contains each substring of this
- string that is terminated by another substring that matches the given
- expression or is terminated by the end of the string.  The substrings in
- the array are in the order in which they occur in this string.  If the
- expression does not match any part of the input then the resulting array
- has just one element, namely this string.
-
- <p> When there is a positive-width match at the beginning of this
- string then an empty leading substring is included at the beginning
- of the resulting array. A zero-width match at the beginning however
- never produces such empty leading substring.
-
- <p> The <code>limit</code> parameter controls the number of times the
- pattern is applied and therefore affects the length of the resulting
- array.  If the limit <i>n</i> is greater than zero then the pattern
- will be applied at most <i>n</i>&nbsp;-&nbsp;1 times, the array's
- length will be no greater than <i>n</i>, and the array's last entry
- will contain all input beyond the last matched delimiter.  If <i>n</i>
- is non-positive then the pattern will be applied as many times as
- possible and the array can have any length.  If <i>n</i> is zero then
- the pattern will be applied as many times as possible, the array can
- have any length, and trailing empty strings will be discarded.
-
- <p> The string <code>"boo:and:foo"</code>, 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><code>{ "boo", "and:foo" }</code></td></tr>
- <tr><td align=center>:</td>
-     <td align=center>5</td>
-     <td><code>{ "boo", "and", "foo" }</code></td></tr>
- <tr><td align=center>:</td>
-     <td align=center>-2</td>
-     <td><code>{ "boo", "and", "foo" }</code></td></tr>
- <tr><td align=center>o</td>
-     <td align=center>5</td>
-     <td><code>{ "b", "", ":and:f", "", "" }</code></td></tr>
- <tr><td align=center>o</td>
-     <td align=center>-2</td>
-     <td><code>{ "b", "", ":and:f", "", "" }</code></td></tr>
- <tr><td align=center>o</td>
-     <td align=center>0</td>
-     <td><code>{ "b", "", ":and:f" }</code></td></tr>
- </table></blockquote>
-
- <p> An invocation of this method of the form
- <i>str.</i><code>split(</code><i>regex</i><code>,</code>&nbsp;<i>n</i><code>)</code>
- yields the same result as the expression
-
- <blockquote>
- <code>
- <a href="../../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>(<i>regex</i>).<a href="../../java/util/regex/Pattern.html#split-java.lang.CharSequence-int-"><code>split</code></a>(<i>str</i>,&nbsp;<i>n</i>)
- </code>
- </blockquote></div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>regex</code> - the delimiting regular expression</dd>
-<dd><code>limit</code> - the result threshold, as described above</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the array of strings computed by splitting this string
-          around matches of the given regular expression</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../../java/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="../../java/util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="split-java.lang.String-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>split</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>[]&nbsp;split(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;regex)</pre>
-<div class="block">Splits this string around matches of the given <a
- href="../util/regex/Pattern.html#sum">regular expression</a>.
-
- <p> This method works as if by invoking the two-argument <a href="../../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 <code>"boo:and:foo"</code>, 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><code>{ "boo", "and", "foo" }</code></td></tr>
- <tr><td align=center>o</td>
-     <td><code>{ "b", "", ":and:f" }</code></td></tr>
- </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="../../java/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="../../java/util/regex/Pattern.html" title="class in java.util.regex"><code>Pattern</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="join-java.lang.CharSequence-java.lang.CharSequence...-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>join</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;join(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
-                          <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>...&nbsp;elements)</pre>
-<div class="block">Returns a new String composed of copies of the
- <code>CharSequence elements</code> joined together with a copy of
- the specified <code>delimiter</code>.
-
- <blockquote>For example,
- <pre><code>
-     String message = String.join("-", "Java", "is", "cool");
-     // message returned is: "Java-is-cool"
- </code></pre></blockquote>
-
- Note that if an element is null, then <code>"null"</code> is added.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>delimiter</code> - the delimiter that separates each element</dd>
-<dd><code>elements</code> - the elements to join together.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a new <code>String</code> that is composed of the <code>elements</code>
-         separated by the <code>delimiter</code></dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../../java/lang/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="../../java/util/StringJoiner.html" title="class in java.util"><code>StringJoiner</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="join-java.lang.CharSequence-java.lang.Iterable-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>join</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;join(<a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&nbsp;delimiter,
-                          <a href="../../java/lang/Iterable.html" title="interface in java.lang">Iterable</a>&lt;? extends <a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a>&gt;&nbsp;elements)</pre>
-<div class="block">Returns a new <code>String</code> composed of copies of the
- <code>CharSequence elements</code> joined together with a copy of the
- specified <code>delimiter</code>.
-
- <blockquote>For example,
- <pre><code>
-     List&lt;String&gt; strings = new LinkedList&lt;&gt;();
-     strings.add("Java");strings.add("is");
-     strings.add("cool");
-     String message = String.join(" ", strings);
-     //message returned is: "Java is cool"
-
-     Set&lt;String&gt; strings = new LinkedHashSet&lt;&gt;();
-     strings.add("Java"); strings.add("is");
-     strings.add("very"); strings.add("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="../../java/lang/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="../../java/lang/String.html#join-java.lang.CharSequence-java.lang.CharSequence...-"><code>join(CharSequence,CharSequence...)</code></a>, 
-<a href="../../java/util/StringJoiner.html" title="class in java.util"><code>StringJoiner</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="toLowerCase-java.util.Locale-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toLowerCase</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;toLowerCase(<a href="../../java/util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</pre>
-<div class="block">Converts all of the characters in this <code>String</code> to lower
- case using the rules of the given <code>Locale</code>.  Case mapping is based
- on the Unicode Standard version specified by the <a href="../../java/lang/Character.html" title="class in java.lang"><code>Character</code></a>
- class. Since case mappings are not always 1:1 char mappings, the resulting
- <code>String</code> may be a different length than the original <code>String</code>.
- <p>
- Examples of lowercase  mappings are in the following table:
- <table border="1" summary="Lowercase mapping examples showing language code of locale, upper case, lower case, and description">
- <tr>
-   <th>Language Code of Locale</th>
-   <th>Upper Case</th>
-   <th>Lower Case</th>
-   <th>Description</th>
- </tr>
- <tr>
-   <td>tr (Turkish)</td>
-   <td>&#92;u0130</td>
-   <td>&#92;u0069</td>
-   <td>capital letter I with dot above -&gt; small letter i</td>
- </tr>
- <tr>
-   <td>tr (Turkish)</td>
-   <td>&#92;u0049</td>
-   <td>&#92;u0131</td>
-   <td>capital letter I -&gt; small letter dotless i </td>
- </tr>
- <tr>
-   <td>(all)</td>
-   <td>French Fries</td>
-   <td>french fries</td>
-   <td>lowercased all chars in String</td>
- </tr>
- <tr>
-   <td>(all)</td>
-   <td><img src="doc-files/capiota.gif" alt="capiota"><img src="doc-files/capchi.gif" alt="capchi">
-       <img src="doc-files/captheta.gif" alt="captheta"><img src="doc-files/capupsil.gif" alt="capupsil">
-       <img src="doc-files/capsigma.gif" alt="capsigma"></td>
-   <td><img src="doc-files/iota.gif" alt="iota"><img src="doc-files/chi.gif" alt="chi">
-       <img src="doc-files/theta.gif" alt="theta"><img src="doc-files/upsilon.gif" alt="upsilon">
-       <img src="doc-files/sigma1.gif" alt="sigma"></td>
-   <td>lowercased all chars in String</td>
- </tr>
- </table></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="../../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></dd>
-</dl>
-</li>
-</ul>
-<a name="toLowerCase--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toLowerCase</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;toLowerCase()</pre>
-<div class="block">Converts all of the characters in this <code>String</code> to lower
- case using the rules of the default locale. This is equivalent to calling
- <code>toLowerCase(Locale.getDefault())</code>.
- <p>
- <b>Note:</b> This method is locale sensitive, and may produce unexpected
- results if used for strings that are intended to be interpreted locale
- independently.
- Examples are programming language identifiers, protocol keys, and HTML
- tags.
- For instance, <code>"TITLE".toLowerCase()</code> in a Turkish locale
- returns <code>"t\u0131tle"</code>, where '\u0131' is the
- LATIN SMALL LETTER DOTLESS I character.
- To obtain correct results for locale insensitive strings, use
- <code>toLowerCase(Locale.ROOT)</code>.
- <p></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="../../java/lang/String.html#toLowerCase-java.util.Locale-"><code>toLowerCase(Locale)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="toUpperCase-java.util.Locale-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toUpperCase</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;toUpperCase(<a href="../../java/util/Locale.html" title="class in java.util">Locale</a>&nbsp;locale)</pre>
-<div class="block">Converts all of the characters in this <code>String</code> to upper
- case using the rules of the given <code>Locale</code>. Case mapping is based
- on the Unicode Standard version specified by the <a href="../../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.
-
- <table border="1" summary="Examples of locale-sensitive and 1:M case mappings. Shows Language code of locale, lower case, upper case, and description.">
- <tr>
-   <th>Language Code of Locale</th>
-   <th>Lower Case</th>
-   <th>Upper Case</th>
-   <th>Description</th>
- </tr>
- <tr>
-   <td>tr (Turkish)</td>
-   <td>&#92;u0069</td>
-   <td>&#92;u0130</td>
-   <td>small letter i -&gt; capital letter I with dot above</td>
- </tr>
- <tr>
-   <td>tr (Turkish)</td>
-   <td>&#92;u0131</td>
-   <td>&#92;u0049</td>
-   <td>small letter dotless i -&gt; capital letter I</td>
- </tr>
- <tr>
-   <td>(all)</td>
-   <td>&#92;u00df</td>
-   <td>&#92;u0053 &#92;u0053</td>
-   <td>small letter sharp s -&gt; two letters: SS</td>
- </tr>
- <tr>
-   <td>(all)</td>
-   <td>Fahrvergn&uuml;gen</td>
-   <td>FAHRVERGN&Uuml;GEN</td>
-   <td></td>
- </tr>
- </table></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="../../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></dd>
-</dl>
-</li>
-</ul>
-<a name="toUpperCase--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toUpperCase</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;toUpperCase()</pre>
-<div class="block">Converts all of the characters in this <code>String</code> to upper
- case using the rules of the default locale. This method is equivalent to
- <code>toUpperCase(Locale.getDefault())</code>.
- <p>
- <b>Note:</b> This method is locale sensitive, and may produce unexpected
- results if used for strings that are intended to be interpreted locale
- independently.
- Examples are programming language identifiers, protocol keys, and HTML
- tags.
- For instance, <code>"title".toUpperCase()</code> in a Turkish locale
- returns <code>"T\u0130TLE"</code>, where '\u0130' is the
- LATIN CAPITAL LETTER I WITH DOT ABOVE character.
- To obtain correct results for locale insensitive strings, use
- <code>toUpperCase(Locale.ROOT)</code>.
- <p></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="../../java/lang/String.html#toUpperCase-java.util.Locale-"><code>toUpperCase(Locale)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="trim--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>trim</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;trim()</pre>
-<div class="block">Returns a string whose value is this string, with any leading and trailing
- whitespace removed.
- <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
- <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 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 <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 whitespace (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 any leading and trailing white
-          space removed, or this string if it has no leading or
-          trailing white space.</dd>
-</dl>
-</li>
-</ul>
-<a name="toString--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toString</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;toString()</pre>
-<div class="block">This object (which is already a string!) is itself returned.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../java/lang/CharSequence.html#toString--">toString</a></code>&nbsp;in interface&nbsp;<code><a href="../../java/lang/CharSequence.html" title="interface in java.lang">CharSequence</a></code></dd>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code><a href="../../java/lang/Object.html#toString--">toString</a></code>&nbsp;in class&nbsp;<code><a href="../../java/lang/Object.html" title="class in java.lang">Object</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the string itself.</dd>
-</dl>
-</li>
-</ul>
-<a name="toCharArray--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>toCharArray</h4>
-<pre>public&nbsp;char[]&nbsp;toCharArray()</pre>
-<div class="block">Converts this string to a new character array.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a newly allocated character array whose length is the length
-          of this string and whose contents are initialized to contain
-          the character sequence represented by this string.</dd>
-</dl>
-</li>
-</ul>
-<a name="format-java.lang.String-java.lang.Object...-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>format</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;format(<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;format,
-                            <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>...&nbsp;args)</pre>
-<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="../../java/util/Locale.html#getDefault--"><code>Locale.getDefault()</code></a>.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>format</code> - A <a href="../util/Formatter.html#syntax">format string</a></dd>
-<dd><code>args</code> - Arguments referenced by the format specifiers in the format
-         string.  If there are more arguments than format specifiers, the
-         extra arguments are ignored.  The number of arguments is
-         variable and may be zero.  The maximum number of arguments is
-         limited by the maximum dimension of a Java array as defined by
-         <cite>The Java&trade; Virtual Machine Specification</cite>.
-         The behaviour on a
-         <code>null</code> argument depends on the <a
-         href="../util/Formatter.html#syntax">conversion</a>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>A formatted string</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../../java/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="../../java/util/Formatter.html" title="class in java.util"><code>Formatter</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="format-java.util.Locale-java.lang.String-java.lang.Object...-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>format</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;format(<a href="../../java/util/Locale.html" title="class in java.util">Locale</a>&nbsp;l,
-                            <a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;format,
-                            <a href="../../java/lang/Object.html" title="class in java.lang">Object</a>...&nbsp;args)</pre>
-<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="../../java/util/Locale.html" title="class in java.util">locale</a> to apply during
-         formatting.  If <code>l</code> is <code>null</code> then no localization
-         is applied.</dd>
-<dd><code>format</code> - A <a href="../util/Formatter.html#syntax">format string</a></dd>
-<dd><code>args</code> - Arguments referenced by the format specifiers in the format
-         string.  If there are more arguments than format specifiers, the
-         extra arguments are ignored.  The number of arguments is
-         variable and may be zero.  The maximum number of arguments is
-         limited by the maximum dimension of a Java array as defined by
-         <cite>The Java&trade; Virtual Machine Specification</cite>.
-         The behaviour on a
-         <code>null</code> argument depends on the
-         <a href="../util/Formatter.html#syntax">conversion</a>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>A formatted string</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../../java/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="../../java/util/Formatter.html" title="class in java.util"><code>Formatter</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="valueOf-java.lang.Object-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;valueOf(<a href="../../java/lang/Object.html" title="class in java.lang">Object</a>&nbsp;obj)</pre>
-<div class="block">Returns the string representation of the <code>Object</code> argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>obj</code> - an <code>Object</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>if the argument is <code>null</code>, then a string equal to
-          <code>"null"</code>; otherwise, the value of
-          <code>obj.toString()</code> is returned.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../java/lang/Object.html#toString--"><code>Object.toString()</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="valueOf-char:A-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;valueOf(char[]&nbsp;data)</pre>
-<div class="block">Returns the string representation of the <code>char</code> array
- argument. The contents of the character array are copied; subsequent
- modification of the character array does not affect the returned
- string.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>data</code> - the character array.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a <code>String</code> that contains the characters of the
-          character array.</dd>
-</dl>
-</li>
-</ul>
-<a name="valueOf-char:A-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;valueOf(char[]&nbsp;data,
-                             int&nbsp;offset,
-                             int&nbsp;count)</pre>
-<div class="block">Returns the string representation of a specific subarray of the
- <code>char</code> array argument.
- <p>
- The <code>offset</code> argument is the index of the first
- character of the subarray. The <code>count</code> argument
- specifies the length of the subarray. The contents of the subarray
- are copied; subsequent modification of the character array does not
- affect the returned string.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>data</code> - the character array.</dd>
-<dd><code>offset</code> - initial offset of the subarray.</dd>
-<dd><code>count</code> - length of the subarray.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a <code>String</code> that contains the characters of the
-          specified subarray of the character array.</dd>
-<dt><span class="throwsLabel">Throws:</span></dt>
-<dd><code><a href="../../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>.</dd>
-</dl>
-</li>
-</ul>
-<a name="copyValueOf-char:A-int-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>copyValueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;copyValueOf(char[]&nbsp;data,
-                                 int&nbsp;offset,
-                                 int&nbsp;count)</pre>
-<div class="block">Equivalent to <a href="../../java/lang/String.html#valueOf-char:A-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="../../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>.</dd>
-</dl>
-</li>
-</ul>
-<a name="copyValueOf-char:A-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>copyValueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;copyValueOf(char[]&nbsp;data)</pre>
-<div class="block">Equivalent to <a href="../../java/lang/String.html#valueOf-char:A-"><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 name="valueOf-boolean-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;valueOf(boolean&nbsp;b)</pre>
-<div class="block">Returns the string representation of the <code>boolean</code> argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>b</code> - a <code>boolean</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>if the argument is <code>true</code>, a string equal to
-          <code>"true"</code> is returned; otherwise, a string equal to
-          <code>"false"</code> is returned.</dd>
-</dl>
-</li>
-</ul>
-<a name="valueOf-char-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;valueOf(char&nbsp;c)</pre>
-<div class="block">Returns the string representation of the <code>char</code>
- argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>c</code> - a <code>char</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string of length <code>1</code> containing
-          as its single character the argument <code>c</code>.</dd>
-</dl>
-</li>
-</ul>
-<a name="valueOf-int-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;valueOf(int&nbsp;i)</pre>
-<div class="block">Returns the string representation of the <code>int</code> argument.
- <p>
- The representation is exactly the one returned by the
- <code>Integer.toString</code> method of one argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>i</code> - an <code>int</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string representation of the <code>int</code> argument.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../java/lang/Integer.html#toString-int-int-"><code>Integer.toString(int, int)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="valueOf-long-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;valueOf(long&nbsp;l)</pre>
-<div class="block">Returns the string representation of the <code>long</code> argument.
- <p>
- The representation is exactly the one returned by the
- <code>Long.toString</code> method of one argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>l</code> - a <code>long</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string representation of the <code>long</code> argument.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../java/lang/Long.html#toString-long-"><code>Long.toString(long)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="valueOf-float-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;valueOf(float&nbsp;f)</pre>
-<div class="block">Returns the string representation of the <code>float</code> argument.
- <p>
- The representation is exactly the one returned by the
- <code>Float.toString</code> method of one argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>f</code> - a <code>float</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string representation of the <code>float</code> argument.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../java/lang/Float.html#toString-float-"><code>Float.toString(float)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="valueOf-double-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>valueOf</h4>
-<pre>public static&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;valueOf(double&nbsp;d)</pre>
-<div class="block">Returns the string representation of the <code>double</code> argument.
- <p>
- The representation is exactly the one returned by the
- <code>Double.toString</code> method of one argument.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>d</code> - a <code>double</code>.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a  string representation of the <code>double</code> argument.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../java/lang/Double.html#toString-double-"><code>Double.toString(double)</code></a></dd>
-</dl>
-</li>
-</ul>
-<a name="intern--">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>intern</h4>
-<pre>public&nbsp;<a href="../../java/lang/String.html" title="class in java.lang">String</a>&nbsp;intern()</pre>
-<div class="block">Returns a canonical representation for the string object.
- <p>
- A pool of strings, initially empty, is maintained privately by the
- class <code>String</code>.
- <p>
- When the intern method is invoked, if the pool already contains a
- string equal to this <code>String</code> object as determined by
- the <a href="../../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 section 3.10.5 of the
- <cite>The Java&trade; Language Specification</cite>.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a string that has the same contents as this string, but is
-          guaranteed to be from a pool of unique strings.</dd>
-</dl>
-</li>
-</ul>
-</li>
-</ul>
-</li>
-</ul>
-</div>
-</div>
-<!-- ========= END OF CLASS DATA ========= -->
-<!-- ======= START OF BOTTOM NAVBAR ====== -->
-<div class="bottomNav"><a name="navbar.bottom">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
-<a name="navbar.bottom.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"><strong>Java&trade;&nbsp;Platform<br>Standard&nbsp;Ed.&nbsp;8</strong></div>
-</div>
-<div class="subNav">
-<ul class="navList">
-<li><a href="../../java/lang/StrictMath.html" title="class in java.lang"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../java/lang/StringBuffer.html" title="class in java.lang"><span class="typeNameLink">Next&nbsp;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&nbsp;Frames</a></li>
-</ul>
-<ul class="navList" id="allclasses_navbar_bottom">
-<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_bottom");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a name="skip.navbar.bottom">
-<!--   -->
-</a></div>
-<!-- ======== END OF BOTTOM NAVBAR ======= -->
-<p class="legalCopy"><small><font size="-1"> <a href="http://bugreport.sun.com/bugreport/">Submit a bug or feature</a> <br>For further API reference and developer documentation, see <a href="https://docs.oracle.com/javase/8/docs/index.html" target="_blank">Java SE Documentation</a>. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.<br> <a href="../../../legal/cpyr.html">Copy [...]
-<!-- 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/test-proxy-signatures.txt b/tooling/maven/camel-api-component-maven-plugin/src/test/resources/test-proxy-signatures.txt
deleted file mode 100644
index 1b11a19..0000000
--- a/tooling/maven/camel-api-component-maven-plugin/src/test/resources/test-proxy-signatures.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-public String sayHi();
-public String sayHi(boolean hello);
-public String sayHi(final String name);
-public final String greetMe(final String name);
-public final String greetUs(final String name1, String name2);
-public final String greetAll(java.util.List<String> names);
-public final <T> String greetAll(java.util.List<T> people);
-public final <K, Vv> String greetAll(java.util.Map<K, Vv> peopleMap);
-public final String[] greetTimes(String name, int times);
-public final String greetInnerChild(org.apache.camel.component.test.TestProxy.InnerChild child);