Java by API/java.lang/StringBuilder
Содержание
new StringBuilder(int capacity)
<source lang="java">
public class Main {
public static void main(String[] a) { StringBuilder builder1 = new StringBuilder(); StringBuilder builder2 = new StringBuilder(0); StringBuilder builder3 = new StringBuilder(100); System.out.println(builder1.capacity()); System.out.println(builder2.capacity()); System.out.println(builder3.capacity()); }
} /* 16 0 100
- /
</source>
new StringBuilder(String str)
<source lang="java">
public class Main {
public static void main(String[] args) { StringBuilder lipsum = new StringBuilder("Lorem ipsum dolor sit amet."); System.out.println("lipsum = " + lipsum.toString()); lipsum.delete(0, 28); System.out.println("lipsum = " + lipsum.toString()); lipsum.deleteCharAt(lipsum.length() - 1); System.out.println("lipsum = " + lipsum.toString()); }
}
</source>
StringBuilder: append(char c)
<source lang="java">
/*
* Copyright (c) Ian F. Darwin, http://www.darwinsys.ru/, 1996-2002. * All rights reserved. Software written by Ian F. Darwin and others. * $Id: LICENSE,v 1.8 2004/02/09 03:33:38 ian Exp $ * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS"" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * * Java, the Duke mascot, and all variants of Sun"s Java "steaming coffee * cup" logo are trademarks of Sun Microsystems. Sun"s, and James Gosling"s, * pioneering role in inventing and promulgating (and standardizing) the Java * language and environment is gratefully acknowledged. * * The pioneering role of Dennis Ritchie and Bjarne Stroustrup, of AT&T, for * inventing predecessor languages C and C++ is also gratefully acknowledged. */
/**
* StringBuilderDemo: construct the same String three different ways. */
public class Main {
public static void main(String[] argv) { String s1 = "Hello" + ", " + "World"; System.out.println(s1); // Build a StringBuilder, and append some things to it. StringBuilder sb2 = new StringBuilder(); sb2.append("Hello"); sb2.append(","); sb2.append(" "); sb2.append("World"); // Get the StringBuilder"s value as a String, and print it. String s2 = sb2.toString(); System.out.println(s2); // Now do the above all over again, but in a more // concise (and typical "real-world" Java) fashion. StringBuilder sb3 = new StringBuilder().append("Hello").append(",") .append(" ").append("World"); System.out.println(sb3.toString()); }
}
</source>
StringBuilder: capacity()
<source lang="java">
public class Main {
public static void main(String[] a) { StringBuilder builder1 = new StringBuilder(); StringBuilder builder2 = new StringBuilder(0); StringBuilder builder3 = new StringBuilder(100); System.out.println(builder1.capacity()); System.out.println(builder2.capacity()); System.out.println(builder3.capacity()); }
} /* 16 0 100
- /
</source>
StringBuilder: delete(int start, int end)
<source lang="java">
public class Main {
public static void main(String[] args) { StringBuilder lipsum = new StringBuilder("Lorem ipsum dolor sit amet."); System.out.println("lipsum = " + lipsum.toString()); lipsum.delete(0, 28); System.out.println("lipsum = " + lipsum.toString()); lipsum.deleteCharAt(lipsum.length() - 1); System.out.println("lipsum = " + lipsum.toString()); }
}
</source>
StringBuilder: insert(int offset, String str)
<source lang="java">
public class Main {
public static void main(String[] a) { StringBuilder builder = new StringBuilder("Line 1\n"); builder.append("Line 3\n"); String lineToInsert = "Line 2\n"; builder.insert(0, lineToInsert); System.out.println(builder.toString()); }
} /* Line 2 Line 1 Line 3
- /
</source>
StringBuilder: reverse()
<source lang="java">
/*
* Copyright (c) 1995 - 2008 Sun Microsystems, Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * - Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * - Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * - Neither the name of Sun Microsystems nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
public class Main {
public static void main(String[] args) { String palindrome = "Dot saw I was Tod"; StringBuilder sb = new StringBuilder(palindrome); sb.reverse(); // reverse it System.out.println(sb); }
}
</source>
StringBuilder: toString()
<source lang="java">
public class Main {
public static void main(String[] a) { StringBuilder builder = new StringBuilder("Line 1\n"); builder.append("Line 3\n"); String lineToInsert = "Line 2\n"; builder.insert(0, lineToInsert); System.out.println(builder.toString()); }
} /* Line 2 Line 1 Line 3
- /
</source>