JAVA String 관련 함수

2022. 12. 24. 16:14·BackEnd/JAVA 공부

String 클래스

1. charAt(int index) : index 인덱스에 있는 문자 값 리턴

2. codePointAt(int index) : index 인덱스에 있는 유니코드 값 리턴

3. compareTo(String anotehrString) : 두 스트링을 사전 순으로 비교하여 두 스트링이 같으면 0, 현 스트링이 anotherString보다 먼저 나오면 음수, 아니면 양수 리턴한다.

String str = "abc";
String anotherStr = "bcd";
System.out.println(str.compareTo(anotherStr));
// -1 리턴

4. concat(String str) : 현재 스트링 뒤에 str 스트링을 덧붙인 새로운 스트링 리턴

5. contains(CharSequence s) : s에 지정된 문자들을 포함하고 있으면 true 리턴

String str = "abc";
String anotherStr = "b";
System.out.println(str.contains(anotherStr));
//True 리턴

6. length() : 스트링의 길이 리턴

7. replace(Charsequence target, Charsequence replacement) : target이 지정하는 일련의 문자들을 replacement가 지정하는 문자들로 변경한 스트링 리턴

String str = "abc";
String anotherStr = "b";
str = str.replace("b", "d");
System.out.println(str);
//adc 리턴

8. split(String regex) : 정규식 regex에 일치하는 부분을 중심으로 스트링을 분리하고, 분리된 스트링들을 배열로 저장하여 리턴

String str = "abc";
String anotherStr = "b";
String s[] = str.split("b");
for (int i = 0; i < s.length; i++) {
     System.out.print(s[i] + " ");
}
//a c 리턴

9. subString(int beginIndex) : beginIndex 인덱스부터 시작하는 서브 스트링 리턴

String str = "abc";
System.out.println(str.substring(1));
//b 출력
System.out.println(str.substring(1,3));
//bc 출력

10. toLowerCase(), toUpperCase() : 소문자로 변경한 스트링 리턴, 대문자로 변경한 스트링 리턴

11. trim() : 스트링 앞뒤의 공백 문자들을 제거한 스트링 리턴

String str = "    abc     ";
System.out.println(str.trim());
//abc 리턴

 

12. startWith : 문자열이 지정한 문자로 시작하는지 판단, 같으면 True반환 아니면 False를 반환한다(대소문자 구별)

13. endWith : 문자열이 마지막에 지정한 문자가 있는지를 판단후 있으면 true, 없으면 false를 반환한다(대소문자 구별)

14. indexOf : 지정한 문자가 문자열에 몇번째에 있는지를 반환한다. (중복될 경우 맨앞에꺼 반환)

15. lastindexOf : 문자열에 지정한 문자가 마지막 몇번째에 있는 int를 반환한다.

16. valueOf : 지정한 개체의 원시 값을 반환한다.

int i = 12345;
long l = 1L;
char c = '1';
System.out.println("valueOf: " + String.valueOf (i));
System.out.println("valueOf: " + String.valueOf (l));
System.out.println("valueOf: " + String.valueOf (c));
//12345 1 1

 

StringBuffer 클래스

String은 내부의 문자열을 수정할 수 없지만, StringBuffer는 내부의 문자열을 수정 가능하다.

1. append(String str) : str 스트링을 스트링 버퍼에 덧붙인다.

2. append(StringBuffer sb) : sb 스트링 버퍼를 현재의 스트링 버퍼에 덧붙인다. 이 결과 현재 스트링 버퍼의 내용이 변한다.

3. capacity() : 스트링 버퍼의 현재 크기 리턴

4. delete(int start, int end) : start 위치에서 end 위치 앞까지 부분 문자열 삭제

5. insert(int offset, String str) : str 스트링을 스트링 버퍼의 offset 위치에 삽입

6. replace(int start, int end, String str) : 스트링 버퍼 내의 start 위치의 문자부터 end가 지정하는 문자 앞의 서브 스트링을 str로 대체

7. reverse() : 스트링 버퍼 내의 문자들을 반대 순서로 변경

8. setLength(int newLength) : 스트링 버퍼 내 문자열 길이를 newLength로 재설정, 현재 길이보다 클 경우 널 문자로 채우며 작을 경우는 기존 문자열이 잘린다.

 

StringTokenizer 클래스

하나의 문자열을 여러 개의 문자열로 분리하기 위해 사용된다.

String query = "name=kitae&addr=seoul&age=21";
StringTokenizer st = new StringTokenizer(query, "&");
// name=kitae, addr=seoul, age=21 로 나뉨

1. countTokens() : 스트링 토크나이저가 분리한 토큰의 개수 리턴

2. hasMoreTokens() : 스트링 토크나이저에 다음 토큰이 있으면 true 리턴

3. hasToken() : 스트링 토크나이저에 들어 있는 다음 토큰 리턴

String query = "name=kitae&addr=seoul&age=21";
StringTokenizer st = new StringTokenizer(query, "&");

while(st.hashMoreTokens())
	System.out.println(st.nextToken());

 

자바에서의 형 변환

String 형을 숫자형(int, double, float, long, short)

String sNum = "1234";
int i1 = Integer.parseInt(sNum);
int i2 = Integer.valueOf(sNum);
double d1 = Double.parseDouble(sNum);
double d2 = Double.valueOf(sNum);
float f1 = Float.parseFloat(sNum);
float f2 = Float.valueOf(sNum);
long l1 = Long.parseLong(sNum);
long l2 = Long.valueOf(sNum);
short s1 = Short.parseShort(sNum);
short s2 = Short.valueOf(sNum);

숫자형(int, double, float, long, short)을 String 

int i = 1234;
String i1 = String.valueOf(i);
String i2 = Integer.toString(i);
double d = 1.23;
String d1 = String.valueOf(d);
String d2 = Double.toString(d);
float f = (float) 1.23;
String f1 = String.valueOf(f);
String f2 = Float.toString(f);
long l = 1234;
String l1 = String.valueOf(l);
String l2 = Long.toString(l);
short s = 1234;
String s1 = String.valueOf(s);
String s2 = Short.toString(s);

string을 char로 변경

char c[] = str.toCharArray

 

'BackEnd > JAVA 공부' 카테고리의 다른 글

스트림이란? (1)  (1) 2023.07.11
람다식이란?  (0) 2023.07.09
자바의 컬렉션 프레임워크(Map)  (1) 2023.01.10
자바의 컬렉션 프레임워크(Set)  (0) 2023.01.10
자바의 컬렉션 프레임워크(List)  (0) 2023.01.09
'BackEnd/JAVA 공부' 카테고리의 다른 글
  • 람다식이란?
  • 자바의 컬렉션 프레임워크(Map)
  • 자바의 컬렉션 프레임워크(Set)
  • 자바의 컬렉션 프레임워크(List)
인프라 감자
인프라 감자
  • 인프라 감자
    삶은 인프라
    인프라 감자
  • 전체
    오늘
    어제
    • 분류 전체보기 (243)
      • 클라우드&인프라 (28)
        • 인프라 공부 (4)
        • AWS 구조와 서비스 (18)
        • 클라우드 공부 (4)
        • Terraform (2)
      • AWS Cloud School (13)
        • project (5)
        • Linux, Network (6)
        • Docker (2)
      • BackEnd (162)
        • JAVA 공부 (15)
        • 알고리즘 공부 (71)
        • MySQL 문제 풀기 (8)
        • 스프링 핵심 원리 - 기본편 (18)
        • 스프링 MVC 1편 (4)
        • 자바 ORM 표준 JPA 프로그래밍 (21)
        • 실전! 스프링 부트와 JPA 활용1 (8)
        • 실전! 스프링 부트와 JPA 활용2 (5)
        • 스프링 데이터 JPA (8)
        • Querydsl (4)
      • 혼자하는 프로젝트 (32)
        • 배달의 민족 클론코딩 (7)
        • 나만의 프로젝트 (10)
        • 스프링 부트로 구현한 웹 (15)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Email
    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    정렬
    네트워크 기본 용어
    자바
    디팬스 게임
    유니온 파인드
    자동 배포
    이것이 자바다
    스프링 핵심 원리-기본편
    다이나믹 프로그래밍
    조합
    중첩 선언
    VPN
    백트래킹
    상속
    linux
    querydsl
    쿼드 압축
    dp
    완전탐색
    프로그래머스
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
인프라 감자
JAVA String 관련 함수
상단으로

티스토리툴바