문자열 메소드 Java  



자바

Java 프로그래밍 언어에서 문자열은 일련의 문자 일뿐입니다. 가장 널리 사용되는 개체입니다. Java String 클래스에는 다양한 조작에 사용되는 많은 메소드가 있습니다. 변경 불가능합니다. 즉, 값을 변경할 수 없습니다. 문자열은 문자 배열과 같습니다.

자바에서 문자열 만들기  

두 가지 다른 방법을 사용하여 문자열을 만들 수 있습니다.

  • 문자열 리터럴 사용
  • 새 키워드 사용

문자열 리터럴을 사용하여 문자열 만들기

이것은 생성하는 가장 직접적인 방법입니다 자바에서. 값을 큰 따옴표로 묶어 문자열을 만들 수 있습니다. 여기서 String 유형의 변수 "값"은 "Java 언어"라는 이름의 문자열을 보유합니다.

String value = "Java language";

문자열 리터럴을 만들 때 JVM은 먼저 문자열이 있는지 "문자열 상수 풀"을 확인합니다. 존재하지 않는 경우 JVM은 새 문자열 인스턴스를 만들고 그렇지 않으면 풀링 된 인스턴스에 대한 참조 만 반환됩니다. 예를 들어, 아래의 경우 두 문자열 객체는 동일한 값을 보유합니다. 따라서 하나의 객체 만 생성되고 (예 : s1) s1는 s2에 대한 참조를 갖게됩니다. 즉, 동일한 값으로 생성 한 문자열 변수의 수에 관계없이 문자열 상수 풀에 1 개의 인스턴스 만 생성됩니다.

“문자열 상수 풀”은 문자열 객체를 보관하기위한 특수 메모리 일뿐입니다.

String s1 = "Java language"; 
String s2 = "Java language";

자바의 문자열

새 키워드를 사용하여 문자열 만들기

동일한 문자열 값을 보유하는 두 개의 다른 객체를 원할 때 다음을 사용하여 문자열을 만듭니다. 새로운 키워드는 아래와 같습니다. 이 경우 JVM은 힙 메모리에 2 개의 서로 다른 문자열 객체를 생성합니다.

String s1 = new String("Java");
String s2 = new String("Java");

자바의 문자열  

문자열 메소드 Java  

java.lang.String 클래스는 아래에 설명 된대로 다양한 문자열 조작에 사용되는 다양한 메소드를 지원합니다.

참조
자바 스레드
방법제품 설명매개 변수
char charAt (int 인덱스)입력 문자열의 지정된 인덱스에있는 문자를 반환합니다.index-문자열의 인덱스 값
int codePointAt (int index)지정된 인덱스에있는 문자의 유니 코드 값을 반환합니다.index-문자열의 인덱스 값
int codePointBefore (int index)지정된 인덱스 앞에있는 문자의 유니 코드 값을 반환합니다.index-문자열의 인덱스 값
int compareTo (문자열 다른 문자열)문자의 유니 코드 값을 기준으로 2 개의 문자열을 비교하고 인수 문자열 앞에 있으면 음수 값을 반환하고 그렇지 않으면 양수를 반환합니다. 두 문자열이 같으면 반환 값은 0입니다.anotherstring-문자열 객체와 비교할 문자열
int compareToIgnoreCase (문자열 다른 문자열)대소 문자를 무시한다는 점을 제외하면 compareTo 메서드와 유사합니다.anotherstring-문자열 객체와 비교할 문자열
문자열 연결 (String str)두 개의 문자열 값을 연결합니다.str-문자열 객체 값과 연결할 문자열
부울 contains (CharSequence c)문자열에 지정된 문자 시퀀스가 ​​포함되어 있는지 확인하고 존재하는 경우 true를 반환합니다.c-문자열에서 찾을 문자 시퀀스
부울 contentEquals (CharSequence c)문자열에 정확한 문자 시퀀스가 ​​포함되어 있는지 확인하고 존재하는 경우 true를 반환합니다.c-문자열에서 찾을 문자 시퀀스
부울 contentEquals (StringBuffer sb)문자열에 지정된 문자열 버퍼가 포함되어 있는지 확인하고 존재하는 경우 true를 반환합니다.sb-문자열 버퍼 내용
부울 endsWith (문자열 접미사)문자열이 지정된 접미사로 끝나는 지 확인하고 존재하는 경우 true를 반환합니다.suffix-문자열에서 확인할 접미사
부울 같음 (Object obj)전달 된 객체와 문자열 객체의 유사성을 확인하고 동일한 경우 true를 반환합니다.obj-비교할 객체
부울 equalsIgnoreCase (String str)대소 문자를 무시하여 두 문자열을 비교하고 두 문자열이 같으면 true를 반환합니다.str-비교할 문자열
int indexOf (int ch)문자열에서 지정된 유니 코드 문자의 첫 번째 발생 인덱스를 반환합니다.ch-문자의 유니 코드 값
int indexOf (문자열 str)문자열에서 지정된 하위 문자열이 처음 나타나는 인덱스를 반환합니다.str-문자열에있는 부분 문자열 값
부울 isBlank ()문자열이 비어 있거나 공백 만 포함하면 true를 반환합니다.
부울 isEmpty ()문자열이 비어 있으면 true를 반환합니다 (예 : 길이가 0).
int lastindexOf (int ch)문자열에서 지정된 유니 코드 문자의 마지막 발생 인덱스를 반환합니다.ch-문자의 유니 코드 값
int lastindexOf (문자열 str)문자열에서 지정된 하위 문자열의 마지막 발생 인덱스를 반환합니다.str-문자열에있는 부분 문자열 값
int 길이 ()문자열의 길이를 반환
부울 일치 (문자열 정규식)문자열이 지정된 정규식과 일치하면 true를 반환합니다.regex-확인할 정규식
문자열 반복 (int count)개수에 따라 문자열을 연결합니다.count-입력 문자열을 연결하는 횟수
문자열 바꾸기 (char oldchar, char newchar)모든 문자를 새 문자로 대체하여 새 문자열을 반환합니다.oldchar-대체 할 문자
newchar-대체 할 문자
String [] split (string regexp)정규식에 따라 문자열을 분할합니다. 배열을 반환합니다.regexp-문자열을 분할 할 구분 기호
문자열 [] split (문자열 정규식, 정수 제한)정규식과 적용해야하는 횟수에 따라 문자열을 분할합니다.regexp-문자열을 분할 할 구분 기호
제한-패턴을 적용해야하는 횟수
부울 startsWith (문자열 접두사)주어진 문자열이 지정된 접두사로 시작하는지 확인합니다. 존재하는 경우 true를 반환합니다.prefix-문자열에서 확인할 접두사
부울 startsWith (문자열 접두사, int tooffset)주어진 문자열이 tooffset 매개 변수에 따라 지정된 접두어로 시작하는지 확인합니다. 존재하는 경우 true를 반환합니다.prefix-문자열에서 확인할 접두사
tooffset-검색을 시작해야하는 색인
스트링 스트립 ()선행 및 후행 모두 공백이 제거 된 문자열을 반환합니다.
문자열 stripLeading ()모든 선행 공백이 제거 된 문자열의 하위 문자열을 반환합니다.
문자열 stripTrailing ()모든 후행 공백이 제거 된 문자열의 하위 문자열을 반환합니다.
CharSequence subSequence (int startIndex, int endIndex)시작 및 끝 인덱스를 기반으로 문자열의 문자 시퀀스를 반환합니다.startIndex-하위 문자열을 검색해야하는 인덱스
endIndex-하위 문자열을 검색해야하는 인덱스
문자열 subString (int startIndex)시작 인덱스를 기반으로 문자열의 하위 문자열을 반환합니다.startIndex-하위 문자열을 검색해야하는 인덱스
문자열 subString (int startIndex, int endIndex)시작 및 끝 인덱스를 기반으로 문자열의 하위 문자열을 반환합니다.startIndex-하위 문자열을 검색해야하는 인덱스
endIndex-하위 문자열을 검색해야하는 인덱스
char []-CharArray ()문자열을 문자 배열로 변환합니다.
String toLowerCase ()문자열의 모든 문자를 소문자로 변환합니다.
String toLowerCase (로케일 로케일)로케일 규칙에 따라 문자열의 모든 문자를 소문자로 변환합니다.locale-적용 할 로케일 규칙
String toString ()문자열 자체를 반환합니다.
문자열 toUpperCase ()문자열의 모든 문자를 대문자로 변환합니다.
String toUpperCase (로케일 로케일)로케일 규칙에 따라 문자열의 모든 문자를 대문자로 변환합니다.locale-적용 할 로케일 규칙
문자열 trim ()모든 선행 및 후행 공백이 제거 된 문자열을 반환합니다.
String formatString (문자열 형식, 개체 ... 인수)형식 및 인수를 기반으로 형식화 된 문자열을 반환합니다.format-형식 지정자
args-형식 지정자가 참조하는 인수
문자열 결합 (CharSequence 구분 기호, CharSequence ... 요소)구분 기호를 사용하여 문자 시퀀스 요소를 결합합니다.delimiter-결합 할 구분자
elements-결합 할 문자열 요소
문자열 valueOf (부울 b)부울 인수의 문자열 표현을 반환합니다. true가 전달되면 true를 반환합니다.b-부울 값 (true 또는 false)
문자열 valueOf (char c)문자 인수의 문자열 표현을 반환합니다.c-문자
문자열 valueOf (char [] 데이터)문자 배열 인수의 문자열 표현을 반환합니다.데이터-문자형 배열
문자열 valueOf (double d)double 인수의 문자열 표현을 반환합니다.d-이중 값
문자열 valueOf (float f)float 인수의 문자열 표현을 반환합니다.f-부동 값
문자열 valueOf (int i)정수 인수의 문자열 표현을 반환합니다.i-정수 값
문자열 값 IOf (long l)긴 인수의 문자열 표현을 반환합니다.l-긴 값
문자열 valueOf (Object obj)객체 인수의 문자열 표현을 반환합니다.obj-객체
문자열 valueOf (char [] 데이터, 정수 오프셋, 정수 개수)오프셋 및 개수를 기반으로 특정 하위 문자열 문자 배열 인수의 문자열 표현을 반환합니다.데이터-문자형 배열
오프셋-인덱스 시작
count-부분 문자열의 길이
참조
자바의 호출 가능 및 미래 인터페이스

예 : 배열 문자에서 문자열을 생성하는 Java 프로그램  

아래 예에서 우리는 정렬 new 키워드를 사용하여 Java의 문자열에 문자 수.

public class StringDemo1 {

  public static void main(String[] args) {
    char[] c = {'j','a','v','a'};
    String s = new String(c);
    System.out.println(s);
    
  }

}
Output:
java

예 : length (), charAt () 및 indexOf () 메서드 사용  

아래 예는 특정 인덱스에서 문자를 검색하고, 문자열 길이를 가져오고, 특정 문자의 인덱스를 검색하는 방법을 보여줍니다.

public class StringDemo2 {

  public static void main(String[] args) {
    String s1 = new String("Java tutorial");
    System.out.println("The character at index 6 is : " + s1.charAt(6));
    System.out.println("The length of the input string is : " + s1.length());
    System.out.println("The index of letter 'v' is : " + s1.indexOf('v'));
  }

}
Output:
The character at index 6 is : u
The length of the input string is : 13
The index of letter 'v' is : 2

예 : compareTo (), contentEquals () 및 contains () 사용  

이 예는 Java에서 두 문자열의 비교를 보여줍니다.

  1. compareTo ()는 여기에서 입력 문자열이 인수 문자열에 이어 양의 정수를 반환합니다.
  2. compareToIgnoreCase ()는 대소 문자에 관계없이 두 문자열이 동일하므로 0을 반환합니다.
  3. contains ()는 입력 문자열에 인수 문자열이 포함되어 있으므로 true를 반환합니다.
  4. contentEquals ()는 입력 문자열에 정확한 인수 문자열이 포함되어 있지 않으므로 false를 반환합니다.
public class StringDemo2 {

  public static void main(String[] args) {
    String s1 = new String("Java tutorial");
    System.out.println("Comparison of input string with argument is : " + s1.compareTo("C++"));
    System.out.println("Comparison of input string with argument ignoring case is : " + s1.compareToIgnoreCase("JAVA TUTORIAL"));
    System.out.println("Output of contains method: " + s1.contains("tutorial"));
    System.out.println("Output of contentEquals method: " + s1.contentEquals("Java"));
    }
}
Output:
Comparison of input string with argument is : 7
Comparison of input string with argument ignoring case is : 0
Output of contains method: true
Output of contentEquals method: false

예 : equals () 사용  

내용이 동일하더라도 대소 문자가 일치하지 않기 때문에 첫 번째 출력은 거짓입니다. 내용과 대소 문자가 일치하므로 두 번째 출력은 참입니다.

참조
지그재그 변환

두 콘텐츠가 다르기 때문에 세 번째 출력은 거짓입니다.

public class StringDemo3 {

  public static void main(String[] args) {
    String s1 = "java tutorial";
    String s2 = "Java Tutorial";
    String s3 = "java tutorial";
    String s4 = "Tutorial cup";
    System.out.println(s1.equals(s2));
    System.out.println(s1.equals(s3));
    System.out.println(s1.equals(s4));
  }

}
Output:
false
true
false

예 : 문자열 연결  

concat ()을 사용하여 Java에서 2 개의 문자열을 연결할 수 있습니다. 자바의 방법 문자열 클래스. "+"는 일반적으로 print 문에서 사용되는 2 개 이상의 문자열을 연결하는데도 사용됩니다. 두 문자열을 연결하는 동안 문자열 사이에 공백이 포함되지 않습니다. 아래 예에서 문자열 s2에는 print 문에서 새 문자열과 함께 사용되는 s3 및 s1의 연결된 값이 포함됩니다.

join () 메서드를 사용하여 Java에서 2 개의 문자열을 연결할 수도 있습니다. 이것은 지정된 구분 기호와 함께 인수에 전달 된 단어를 결합합니다.

public class StringConcat {

  public static void main(String[] args) {
    String s1 = "Hello,";
    String s2 = "how are you";
    String s3 = s1.concat(s2);
    System.out.println(s3 + " today");
    System.out.println(s1.join(",", "welcome","to","tutorialcup"));
  }

}
Output:
Hello,how are you today
welcome,to,tutorialcup

예 : 문자열을 대문자와 소문자로 변환하는 Java 프로그램  

public class StringCase {

  public static void main(String[] args) {
    String s1 = "Welcome to tutorialcup";
    System.out.println("Convert to lower case: " + s1.toLowerCase());
    System.out.println("Convert to upper case: " + s1.toUpperCase());

  }

}
Output:
Convert to lower case: welcome to tutorialcup
Convert to upper case: WELCOME TO TUTORIALCUP

예 : Java에서 하위 문자열 사용  

Java에서 문자열의 일부를 검색 할 수 있습니다. 부분 문자열 방법. 인덱스 값은 0에서 시작합니다.

public class StringDemo3 {

  public static void main(String[] args) {
    String s1 = "java tutorial";
    System.out.println(s1.substring(3));
    System.out.println(s1.substring(1, 10));
  }

}
Output:
a tutorial
ava tutor

예 : 분할 및 바꾸기 사용  

Split은 Java에서 가장 일반적으로 사용되는 String 메서드입니다. 이 예에서는 먼저 구분 기호”“를 사용하여 입력 문자열을 분할합니다. 따라서 이것은 각 단어를 개별적으로 인쇄합니다. 다음으로 구분 기호를 기준으로 분할하지만 limit를 2로 지정하면 두 개의 문자열 배열 값으로 만 분할됩니다.

참조
Java의 하위 문자열이란?

첫 번째 교체 예에서는 개별 문자를 교체합니다. 다음으로 문자 시퀀스를 바꿉니다.

public class StringDemo4 {

  public static void main(String[] args) {
    String str1 = "Welcome to java programming";
    System.out.println("Split output using delimiter:");
    //Split using only delimiter
    String[] arrval = str1.split(" ");
    for(int i=0;i<arrval.length;i++) {
      System.out.println(arrval[i]);
    }
    System.out.println("\nSplit output using delimiter and limit:");
    //Split using delimiter and limit
    String[] arrval2 = str1.split(" ", 2);
    for(int i=0;i<arrval2.length;i++) {
      System.out.println(arrval2[i]);
    }
    
    System.out.println("\nReplace output with character:");
    //Replace character
    String str2 = str1.replace('j', 'J');
    System.out.println(str2);
    System.out.println("\nReplace output with character sequence:");
    String str3 = str1.replace("java", "javascript");
    System.out.println(str3);
  }

}


Output:
Split output using delimiter:
Welcome
to
java
programming

Split output using delimiter and limit:
Welcome
to java programming

Replace output with character:
Welcome to Java programming

Replace output with character sequence:
Welcome to javascript programming

예 : Java 형식 문자열  

우리는 데이터 유형 형식 메서드를 사용하여 문자열에. 여기서는 string ( "% s"), float (% f ") 및 boolean ("% b ")를 예로 사용합니다.

public class StringFormat {

  public static void main(String[] args) {
    String str = "Java";
    String formatstring1 = String.format("Programming language is %s",str);
    String formatstring2 = String.format("Float value is %f", 55.6789);
    String formatstring3 = String.format("Boolean value is %b", true);
    System.out.println(formatstring1);
    System.out.println(formatstring2);
    System.out.println(formatstring3);
  }

}
Output:
Programming language is Java
Float value is 55.678900
Boolean value is true

결론  

이 자습서에서는 Java의 String,이를 생성하는 다양한 방법 및 예제와 함께 다양한 문자열 메서드에 대해 배웠습니다.

참고