그만큼 Java 문자열 클래스 교체() 메서드는 모든 이전 char 또는 CharSequence를 새 char 또는 CharSequence로 바꾸는 문자열을 반환합니다.
JDK 1.5부터 char 값의 시퀀스를 바꿀 수 있는 새로운 replacement() 메서드가 도입되었습니다.
서명
Java String 클래스에는 두 가지 유형의 교체() 메소드가 있습니다.
public String replace(char oldChar, char newChar) public String replace(CharSequence target, CharSequence replacement)
두 번째 replacement() 메소드는 JDK 1.5부터 추가되었습니다.
매개변수
오래된 문자 : 오래된 캐릭터
새로운 문자 : 신규 캐릭터
표적 : 대상 문자 순서
대사 : 대체 문자 순서
자바 tostring 메소드
보고
대체된 문자열
예외 발생
NullPointerException: 대체 또는 대상이 null과 같은 경우.
내부 구현
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)>
Java 문자열 대체(이전 문자, 새 문자) 메소드 예
파일 이름: 바꾸기Example1.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); }}지금 테스트해보세요
산출:
jevetpoint is e very good website
Java String replacement(CharSequence target, CharSequence replacement) 메소드 예시
파일 이름: 바꾸기Example2.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); }}지금 테스트해보세요
산출:
my name was khan my name was java
Java 문자열 바꾸기() 메서드 예 3
파일 이름: 바꾸기Example3.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); } }
산출:
oooooo-ssss-oooooo oooooo-hhhh-oooooo
Java 문자열 바꾸기() 메서드 예 4
대체() 메서드는 대체 항목이나 대상이 null인 경우 NullPointerException을 발생시킵니다. 다음 예에서는 동일한 내용을 확인합니다.
파일 이름: 바꾸기Example4.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); } }
산출:
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)