Java Programming for Beginners
上QQ阅读APP看书,第一时间看更新

The replace() function

To confirm that we're all on the same page, let's employ one more method from the String class. If we head back to our documentation and scroll up, we can find the String's replace() method:

Unlike our toUpperCase() method, which took no arguments, replace() takes two characters as arguments. The function will return a new string where all the instances of the first character (oldChar) we give as an argument are replaced with the second character (newChar) we gave as an argument.

Let's utilize this function on our first println() line in StringsInJava.java. We'll type s3.replace() and give our function two characters as arguments. Let's replace the character g with the character o:

package stringsinjava; 
 
public class StringsInJava { 
    public static void main(String[] args) { 
       char c = 'c'; 
        String s1 = "stringone"; 
        String s2 = "stringtwo"; 
        String s3 = s1 + s2 + "LIT"; 
 
        s3 = s3.toUpperCase(); 
         
        System.out.println(s3.replace('g', 'o')); 
        System.out.println(s3); 
    } 
} 

If we run our program, of course, nothing happens. This is because by the time we reach the print statement, there are no lowercase g characters, and there are no lowercase g characters left in s3; there are only uppercase G characters. So let's try and replace the uppercase G characters:

System.out.println(s3.replace('G', 'o')); 
System.out.println(s3); 

Now if we run our program, we see the replacement happen on the first instance of println, not on the second instance. This is because we haven't actually changed the value of s3:

Excellent! You are now well-equipped, as long as you have the Java documentation handy, to call all sorts of String methods.