Java Strings Cheat Sheet

String Creation



Java
Copy
//Literal
String str1 = "This is string 1!";

//Using new Keyword
String str2 = new String("This is string 2");

//Using valueOf method
String str3 = String.valueOf(1234);

//Using Character Array
char[] chars = {'H', 'e', 'l', 'l', 'o'};
String s3 = new String(chars);

Concatenation



Java
Copy
String str1 = 1 + "one" + 1;  // 1one1

String str2 = 2 + 2 + "two";  // 4two

String str3 = "3" + 3 + "three";  // 33three

String str4 = "4" + str1;  // 41one1

String str5 = "5" + String.valueOf(5);  // 55

String str6 = str2.concat(str3); // 4two33three

String Information



Java
Copy
String str = "Welcome";

str.length(); // 7

str.indexOf("e"); // 1

str.indexOf("r"); // -1

str.charAt(2); // l

str.substring(1,3); // el

str.contains("c"); // true

str.startsWith("W"); // true

str.endsWith("e"); // true

str.isBlank(); // false

str.isEmpty(); // false

str.lastIndexOf("e"); // 6

Comparison



Java
Copy
String str1 = "Welcome";

String str2 = new String("Welcome");

String str3 = "welcome";

System.out.println(str1 == str2); // false

System.out.println(str1.equals(str2)); // true

System.out.println(str1.equals(str3)); //false

System.out.println(str1.equalsIgnoreCase(str3)); //true

System.out.println(str1.contains(str2)); // true

System.out.println(str1.contains(str3)); // false

System.out.println(str1.compareTo(str2)); // 0

System.out.println(str1.contentEquals(str2)); // true

System.out.println(str1.contentEquals(str3)); // false

Manipulation



Java
Copy
String str1 = "Welcome";

String str2 = " Welcome ";

System.out.println(str1.toLowerCase()); // welcome

System.out.println(str1.toUpperCase()); // WELCOME

char[] char1 = str1.toCharArray(); // ['W','e','l','c','o','m','e']

System.out.println(char1); // Welcome

String strArr[] = str1.split(""); // ["W","e","l","c","o","m","e"]

System.out.println(String.join(",", strArr)); // W,e,l,c,o,m,e

System.out.println(str2.trim()); // [Welcome]

System.out.println(str2.stripLeading()); // [Welcome ]

System.out.println(str2.stripTrailing()); // [ Welcome]

StringBuilder (Mutable)



Java
Copy
StringBuilder sb = new StringBuilder("Hello");

sb.append(" World"); // Appends " World"

sb.insert(5, ","); // Inserts "," at index 5

sb.delete(5, 6); // Deletes the character at index 5

sb.reverse(); // Reverses the string

String finalString = sb.toString(); // Converts StringBuilder to String

StringBuffer (Thread-safe, Mutable)



Java
Copy
StringBuffer sbf = new StringBuffer("Hello");

sbf.append(" World");

sbf.insert(5, ",");

sbf.delete(5, 6);

sbf.reverse();

String finalStringBuffer = sbf.toString();

String Pool



String Pool: In Java, the string pool is a special storage area in the heap memory. When a string literal is created, Java checks the pool first. If the string already exists, the reference to the pooled instance is returned. If not, a new string object is created and placed in the pool.

Advanced String Handling



String Joiner (Java 8+)


Java
Copy
StringJoiner joiner = new StringJoiner(", ");

joiner.add("Apple").add("Banana").add("Cherry");

String result = joiner.toString(); // "Apple, Banana, Cherry"

String Repeat (Java 11+)


Java
Copy
String repeated = "Hello".repeat(3); // "HelloHelloHello"

String Strip (Java 11+)


Java
Copy
String stripped = "  Hello  ".strip(); // Removes leading and trailing whitespaces

String strippedLeading = "  Hello  ".stripLeading(); // Removes leading whitespaces

String strippedTrailing = "  Hello  ".stripTrailing(); // Removes trailing whitespaces

String Lines (Java 11+)


Java
Copy
String multiline = "Hello\nWorld\nJava";

multiline.lines().forEach(System.out::println); // Splits the string into lines and processes each line

String indent (Java 12+)


Java
Copy
String indented = "Hello\nWorld".indent(4); // Indents each line by 4 spaces

Formatted String (Java 15+)


Java
Copy
String formatted = String.format("Hello %s", "World"); // "Hello World"