The Java String class replace() metoda vrací řetězec nahrazující všechny staré znaky nebo sekvence znaků za nový znak nebo sekvenci znaků.
Od verze JDK 1.5 je zavedena nová metoda replace(), která nám umožňuje nahradit sekvenci hodnot znaků.
Podpis
Ve třídě Java String existují dva typy metod replace().
public String replace(char oldChar, char newChar) public String replace(CharSequence target, CharSequence replacement)
Druhá metoda replace() je přidána od verze JDK 1.5.
Parametry
starýChar : stará postava
novýChar : nová postava
cílová : cílová sekvence znaků
výměna, nahrazení : náhradní sekvence znaků
java int do řetězce
Návraty
nahrazený řetězec
Výjimečné hody
NullPointerException: pokud je nahrazení nebo cíl roven null.
Interní implementace
public String replace(char oldChar, char newChar) { if (oldChar != newChar) { int len = value.length; int i = -1; char[] val = value; /* avoid getfield opcode */ while (++i <len) { if (val[i]="=" oldchar) break; } (i < len) char buf[]="new" char[len]; for (int j="0;" i; j++) buf[j]="val[j];" while c="val[i];" buf[i]="(c" =="oldChar)" ? newchar : c; i++; return new string(buf, true); this; pre> <pre> public String replace(CharSequence target, CharSequence replacement) { return Pattern.compile(target.toString(), Pattern.LITERAL).matcher( this).replaceAll(Matcher.quoteReplacement(replacement.toString())); } </pre> <h2>Java String replace(char old, char new) method example</h2> <p> <strong>FileName:</strong> ReplaceExample1.java</p> <pre> public class ReplaceExample1{ public static void main(String args[]){ String s1='javatpoint is a very good website'; String replaceString=s1.replace('a','e');//replaces all occurrences of 'a' to 'e' System.out.println(replaceString); }} </pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> jevetpoint is e very good website </pre> <h2>Java String replace(CharSequence target, CharSequence replacement) method example</h2> <p> <strong>FileName:</strong> ReplaceExample2.java</p> <pre> public class ReplaceExample2{ public static void main(String args[]){ String s1='my name is khan my name is java'; String replaceString=s1.replace('is','was');//replaces all occurrences of 'is' to 'was' System.out.println(replaceString); }} </pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> my name was khan my name was java </pre> <h2>Java String replace() Method Example 3</h2> <p> <strong>FileName:</strong> ReplaceExample3.java</p> <pre> public class ReplaceExample3 { public static void main(String[] args) { String str = 'oooooo-hhhh-oooooo'; String rs = str.replace('h','s'); // Replace 'h' with 's' System.out.println(rs); rs = rs.replace('s','h'); // Replace 's' with 'h' System.out.println(rs); } }</pre> <p> <strong>Output:</strong> </p> <pre>oooooo-ssss-oooooo oooooo-hhhh-oooooo </pre> <h2>Java String replace() Method Example 4</h2> <p>The replace() method throws the NullPointerException when the replacement or target is null. The following example confirms the same.</p> <p> <strong>FileName:</strong> ReplaceExample4.java</p> <pre> public class ReplaceExample4 { // main method public static void main(String argvs[]) { String str = 'For learning Java, JavaTpoint is a very good site.'; int size = str.length(); System.out.println(str); String target = null; // replacing null with JavaTpoint. Hence, the NullPointerException is raised. str = str.replace(target, 'JavaTpoint '); System.out.println(str); } } </pre> <p> <strong>Output:</strong> </p> <pre> For learning Java, JavaTpoint is a very good site. Exception in thread 'main' java.lang.NullPointerException at java.base/java.lang.String.replace(String.java:2142) at ReplaceExample4.main(ReplaceExample4.java:12) </pre> <hr></len)>
Příklad metody Java String replace(char old, char new).
Název souboru: ReplaceExample1.java
public class ReplaceExample1{ public static void main(String args[]){ String s1='javatpoint is a very good website'; String replaceString=s1.replace('a','e');//replaces all occurrences of 'a' to 'e' System.out.println(replaceString); }}Otestujte to hned
Výstup:
jevetpoint is e very good website
Příklad metody Java String replace(CharSequence target, CharSequence replacement).
Název souboru: ReplaceExample2.java
připojení k databázi v jazyce Java
public class ReplaceExample2{ public static void main(String args[]){ String s1='my name is khan my name is java'; String replaceString=s1.replace('is','was');//replaces all occurrences of 'is' to 'was' System.out.println(replaceString); }}Otestujte to hned
Výstup:
my name was khan my name was java
Příklad metody Java String replace() 3
Název souboru: ReplaceExample3.java
public class ReplaceExample3 { public static void main(String[] args) { String str = 'oooooo-hhhh-oooooo'; String rs = str.replace('h','s'); // Replace 'h' with 's' System.out.println(rs); rs = rs.replace('s','h'); // Replace 's' with 'h' System.out.println(rs); } }
Výstup:
oooooo-ssss-oooooo oooooo-hhhh-oooooo
Příklad metody Java String replace() 4
Metoda replace() vyvolá výjimku NullPointerException, když je nahrazení nebo cíl null. Následující příklad potvrzuje totéž.
Název souboru: ReplaceExample4.java
public class ReplaceExample4 { // main method public static void main(String argvs[]) { String str = 'For learning Java, JavaTpoint is a very good site.'; int size = str.length(); System.out.println(str); String target = null; // replacing null with JavaTpoint. Hence, the NullPointerException is raised. str = str.replace(target, 'JavaTpoint '); System.out.println(str); } }
Výstup:
For learning Java, JavaTpoint is a very good site. Exception in thread 'main' java.lang.NullPointerException at java.base/java.lang.String.replace(String.java:2142) at ReplaceExample4.main(ReplaceExample4.java:12)