- Author

- Name
- Nelson Silva
- Social
Introduction
String manipulation is a crucial skill in Java, since strings are used in practically every aspect of programming. This article delves into techniques and practices for working with strings efficiently and effectively.
- Escape Characters and Useful Methods
- String Concatenation and Formatting
- String Comparison
- Immutable Strings and the String Pool
Escape Characters and Useful Methods
Escape characters such as \n for a new line and \t for a tab are widely used. In addition, there are several useful methods:
variable.length(): Returns the length of the string.variable.toUpperCase(): Converts to uppercase.variable.toLowerCase(): Converts to lowercase.
String Concatenation and Formatting
There are several techniques for concatenating strings:
- + Operator: Simple, but less efficient in loops.
- StringBuilder: Better for multiple concatenations.
- String.format and System.out.printf: Offer customisable formats.
Usage Example
package com.caffeinealgorithm.programaremjava;
public class MoreAboutStrings {
public void Run() {
String firstName = "Nelson";
String lastName = "Silva";
int age = 28;
// Concatenation with the + operator
System.out.println("Name: " + firstName + ' ' + lastName + "\nAge: " + age);
// Using StringBuilder
System.out.println(new StringBuilder().append("Name: ").append(firstName).append(' ').append(lastName).append("\nAge: ").append(age));
// Formatting with printf
System.out.printf("Name: %s %s\nAge: %d", firstName, lastName, age);
}
}
String Comparison
In Java, string comparison should be done with the equals method and not with the == operator, which compares references and not the content of the strings.
Comparison Example
String str1 = "Hello";
String str2 = "Hello";
String str3 = new String("Hello");
System.out.println(str1 == str2); // True, but can be misleading
System.out.println(str1.equals(str3)); // True, compares content
Immutable Strings and the String Pool
It is important to remember that strings in Java are immutable. When we modify a string, we are actually creating a new one. Java's String Pool stores string literals for reuse, which helps with memory optimisation.
Conclusion
Mastering string manipulation is essential in Java, and understanding the nuances and advanced techniques can lead to more efficient programming and cleaner, more optimised code.