search
HomeJavajavaTutorial[java tutorial] Java String class

[java tutorial] Java String class

Dec 26, 2016 pm 01:15 PM
java

Java String class

Strings are widely used in Java programming. Strings are objects in Java. Java provides the String class to create and operate strings.

Create a string

The simplest way to create a string is as follows:

String greeting = "Hello world!";

When you encounter a string constant in your code, the value here is "Hello world!" , the compiler will use this value to create a String object.

Like other objects, you can use keywords and constructors to create String objects. The

String class has 11 construction methods. These methods provide different parameters to initialize the string, such as providing a character array parameter:

public class StringDemo{

   public static void main(String args[]){
      char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.'};
      String helloString = new String(helloArray);  
      System.out.println( helloString );
   }
}

The compilation and running results of the above example are as follows:

hello.

Note: The String class is immutable, so once you create a String object, its value cannot be changed. If you need to make a lot of modifications to the string, then you should choose to use the StringBuffer & StringBuilder classes.

String length


Methods used to obtain information about an object are called accessor methods. One of the accessor methods of the

String class is the length() method, which returns the number of characters contained in the string object.

After the following code is executed, the len variable is equal to 17:

public class StringDemo {

   public static void main(String args[]) {
      String palindrome = "Dot saw I was Tod";
      int len = palindrome.length();
      System.out.println( "String Length is : " + len );
   }
}

The compilation and running results of the above example are as follows:

String Length is : 17


Connect Strings

String class provides methods to connect two strings:

string1.concat(string2);

Returns a new string of string2 connected to string1. You can also use the concat() method for string constants, such as:

"My name is ".concat("Zara");

More commonly used is to use the '+' operator to concatenate strings, such as:

"Hello," + " world" + "!"

The result is as follows:

"Hello, world!"

The following is an example:

public class StringDemo {
   public static void main(String args[]) {     
   String string1 = "saw I was ";     
   System.out.println("Dot " + string1 + "Tod");  
}
}

The compilation and running results of the above example are as follows:

Dot saw I was Tod

Create a formatted string

We know that you can use the printf() and format() methods to output formatted numbers. The String class uses the static method format() to return a String object instead of a PrintStream object. The static method format() of the

String class can be used to create reusable formatted strings, not just for one-time printout. As shown below:

System.out.printf("The value of the float variable is " +
                  "%f, while the value of the integer " +
                  "variable is %d, and the string " +
                  "is %s", floatVar, intVar, stringVar);

You can also write

String fs;
fs = String.format("The value of the float variable is " +
                   "%f, while the value of the integer " +
                   "variable is %d, and the string " +
                   "is %s", floatVar, intVar, stringVar);
System.out.println(fs);

String method

The following are the methods supported by the String class. For more details, please refer to the Java API documentation:

SN(serial number)

Method description

1 char charAt(int index)
returns the char at the specified index value.

2 int compareTo(Object o)
Compare this string with another object.

3 int compareTo(String anotherString)
Compares two strings in lexicographic order.

4 int compareToIgnoreCase(String str)
Compares two strings in lexicographic order, regardless of case.

5 String concat(String str)
Concatenates the specified string to the end of this string.

6 boolean contentEquals(StringBuffer sb)
Returns true if and only if the string has the same order of characters as the specified StringButter.

7 static String copyValueOf(char[] data)
Returns the String representing the character sequence in the specified array.

8 static String copyValueOf(char[] data, int offset, int count)
Returns the String representing the character sequence in the specified array.

9 boolean endsWith(String suffix)
Test whether this string ends with the specified suffix.

10 boolean equals(Object anObject)
Compare this string with the specified object.

11 boolean equalsIgnoreCase(String anotherString)
Compares this String with another String, regardless of case.

12 byte[] getBytes()
Encode this String into a byte sequence using the platform's default character set and store the result in a new byte array.

13 byte[] getBytes(String charsetName)
Encode this String into a byte sequence using the specified character set, and store the result in a new byte array.

14 void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
Copy characters from this string to the target character array.

15 int hashCode()
Returns the hash code of this string.

16 int indexOf(int ch)
Returns the index of the first occurrence of the specified character in this string.

17 int indexOf(int ch, int fromIndex)
Returns the index where the specified character appears for the first time in this string, and starts searching from the specified index.

18 int indexOf(String str)
Returns the index of the first occurrence of the specified substring in this string.

19 int indexOf(String str, int fromIndex)
Returns the index of the first occurrence of the specified substring in this string, starting from the specified index.

20 String intern()
Returns the normalized representation of the string object.

21 int lastIndexOf(int ch)
Returns the index of the last occurrence of the specified character in this string.

22 int lastIndexOf(int ch, int fromIndex)
Returns the index of the last occurrence of the specified character in this string, and starts a reverse search from the specified index.

23 int lastIndexOf(String str)
Returns the index of the rightmost occurrence of the specified substring in this string.

24 int lastIndexOf(String str, int fromIndex)
Returns the index of the last occurrence of the specified substring in this string, starting the reverse search from the specified index.

25 int length()
Returns the length of this string.

26 boolean matches(String regex)
Tells whether this string matches the given regular expression.

27 boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)
Test whether two string regions are equal.

28 boolean regionMatches(int toffset, String other, int ooffset, int len)
Test whether two string regions are equal.

29 String replace(char oldChar, char newChar)
Returns a new string obtained by replacing all occurrences of oldChar in this string with newChar.

30 String replaceAll(String regex, String replacement
Replace all substrings of this string that match the given regular expression with the given replacement.

31 String replaceFirst( String regex, String replacement)
Replaces the first substring of this string matching the given regular expression with the given replacement

32 String[] split(String regex)
Split this string based on a match of the given regular expression

33 String[] split(String regex, int limit)
Split this string based on a match of the given regular expression. .

34 boolean startsWith(String prefix)
Test whether this string starts with the specified prefix.

35 boolean startsWith(String prefix, int toffset)
Test this character. Whether the substring starting from the specified index starts with the specified prefix.

36 CharSequence subSequence(int beginIndex, int endIndex)
Returns a new character sequence, which is a subsequence of this sequence.

37 String substring(int beginIndex)
Returns a new string, which is a substring of this string.

38 String substring(int beginIndex, int endIndex)
Returns a new string that is a substring of this string.

39 char[] toCharArray()
Converts this string to a new character array. *

40 String toLowerCase()
Converts all characters in this String to lowercase using the rules of the default locale.

41 String toLowerCase(Locale locale)
Converts all characters in this String to lowercase using the rules of the given Locale.

42 String toString()
Returns this object itself (it is already a string!).

43 String toUpperCase()
Converts all characters in this String to uppercase using the rules of the default locale.

44 String toUpperCase(Locale locale)
Converts all characters in this String to uppercase using the rules of the given Locale.

45 String trim()
Returns a copy of the string, ignoring leading and trailing whitespace.

46 static String valueOf(primitive data type x)
Returns the string representation of the given data type x parameter.

The above is the content of [java tutorial] Java String class. For more related content, please pay attention to the PHP Chinese website (www.php.cn)!


Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
What aspects of Java development are platform-dependent?What aspects of Java development are platform-dependent?Apr 26, 2025 am 12:19 AM

Javadevelopmentisnotentirelyplatform-independentduetoseveralfactors.1)JVMvariationsaffectperformanceandbehavioracrossdifferentOS.2)NativelibrariesviaJNIintroduceplatform-specificissues.3)Filepathsandsystempropertiesdifferbetweenplatforms.4)GUIapplica

Are there performance differences when running Java code on different platforms? Why?Are there performance differences when running Java code on different platforms? Why?Apr 26, 2025 am 12:15 AM

Java code will have performance differences when running on different platforms. 1) The implementation and optimization strategies of JVM are different, such as OracleJDK and OpenJDK. 2) The characteristics of the operating system, such as memory management and thread scheduling, will also affect performance. 3) Performance can be improved by selecting the appropriate JVM, adjusting JVM parameters and code optimization.

What are some limitations of Java's platform independence?What are some limitations of Java's platform independence?Apr 26, 2025 am 12:10 AM

Java'splatformindependencehaslimitationsincludingperformanceoverhead,versioncompatibilityissues,challengeswithnativelibraryintegration,platform-specificfeatures,andJVMinstallation/maintenance.Thesefactorscomplicatethe"writeonce,runanywhere"

Explain the difference between platform independence and cross-platform development.Explain the difference between platform independence and cross-platform development.Apr 26, 2025 am 12:08 AM

Platformindependenceallowsprogramstorunonanyplatformwithoutmodification,whilecross-platformdevelopmentrequiressomeplatform-specificadjustments.Platformindependence,exemplifiedbyJava,enablesuniversalexecutionbutmaycompromiseperformance.Cross-platformd

How does Just-In-Time (JIT) compilation affect Java's performance and platform independence?How does Just-In-Time (JIT) compilation affect Java's performance and platform independence?Apr 26, 2025 am 12:02 AM

JITcompilationinJavaenhancesperformancewhilemaintainingplatformindependence.1)Itdynamicallytranslatesbytecodeintonativemachinecodeatruntime,optimizingfrequentlyusedcode.2)TheJVMremainsplatform-independent,allowingthesameJavaapplicationtorunondifferen

Why is Java a popular choice for developing cross-platform desktop applications?Why is Java a popular choice for developing cross-platform desktop applications?Apr 25, 2025 am 12:23 AM

Javaispopularforcross-platformdesktopapplicationsduetoits"WriteOnce,RunAnywhere"philosophy.1)ItusesbytecodethatrunsonanyJVM-equippedplatform.2)LibrarieslikeSwingandJavaFXhelpcreatenative-lookingUIs.3)Itsextensivestandardlibrarysupportscompr

Discuss situations where writing platform-specific code in Java might be necessary.Discuss situations where writing platform-specific code in Java might be necessary.Apr 25, 2025 am 12:22 AM

Reasons for writing platform-specific code in Java include access to specific operating system features, interacting with specific hardware, and optimizing performance. 1) Use JNA or JNI to access the Windows registry; 2) Interact with Linux-specific hardware drivers through JNI; 3) Use Metal to optimize gaming performance on macOS through JNI. Nevertheless, writing platform-specific code can affect the portability of the code, increase complexity, and potentially pose performance overhead and security risks.

What are the future trends in Java development that relate to platform independence?What are the future trends in Java development that relate to platform independence?Apr 25, 2025 am 12:12 AM

Java will further enhance platform independence through cloud-native applications, multi-platform deployment and cross-language interoperability. 1) Cloud native applications will use GraalVM and Quarkus to increase startup speed. 2) Java will be extended to embedded devices, mobile devices and quantum computers. 3) Through GraalVM, Java will seamlessly integrate with languages ​​such as Python and JavaScript to enhance cross-language interoperability.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools