[Java기초]String, StringMethod, StringBuilder

2023. 9. 1. 17:24·Java/Java기초

String

-String은 변수타입이 클래스 자료형이다.

-따라서 클래스에 정의된 여러 메소드를 사용할 수 있다.

indexOf, lastIndexOf
String address = "부산 금정구 부곡동"; //인덱스 0부터 시작
int index = address.indexOf("부"); //int로 반환
int index2 = address.lastIndexOf("부"); //문자열 끝부터 탐색
System.out.println(index); 
System.out.println(index2);

<결과창>

substring
String subAddress = address.substring(0, 3); //3전까지 출력(공백포함)
System.out.println(subAddress);		
String subAddress2 = address.substring(3, 5);
System.out.println(subAddress2);

<결과창>

replace, replaceAll
String address = "부산 서구 부민동";

String replaceAddress = address.replace(' ', '-'); // 그냥replace는 문자를 바꾸는것
System.out.println(replaceAddress);

String replaceAlladdress = address.replaceAll("부민동", "연산동"); //replaceAll은 문자열을 바꾸는것
System.out.println(replaceAlladdress);

<결과창>

StringBuilder

  • String은 한번 생성되면 할당된 메모리 공간이 불변함. 따라서 +를 하면  기존문자열에 새로운 문자열이 붙는게 아니고 새로운 String객체를 만들고 새 객체에 문자열을 저장하고 그것을 참조하도록 함.

         -> 따라서 문자열이 연산이 많으면 성능저하 발생

  • 이를 보완한 것이 StringBuilder
  • StringBuilder는 변경가능한 문자열을 만들어주기 때문에 문자열연산이 많은 경우 사용하기 적합함!

'Java > Java기초' 카테고리의 다른 글

[Java기초]연산자(증감연산자, 논리연산자,관계연산자, 복합대입연산자)  (0) 2023.09.01
[Java기초]상수란?(feat.카멜표기법, 스네이크표기법)  (0) 2023.09.01
[JAVA기초]변수의 형변환  (0) 2023.09.01
'Java/Java기초' 카테고리의 다른 글
  • [Java기초]연산자(증감연산자, 논리연산자,관계연산자, 복합대입연산자)
  • [Java기초]상수란?(feat.카멜표기법, 스네이크표기법)
  • [JAVA기초]변수의 형변환
잔망수빈
잔망수빈
  • 잔망수빈
    수고스러운 오늘이, 빈틈없는 내일을 만든다
    잔망수빈
  • 전체
    오늘
    어제
    • 분류 전체보기 (51)
      • C (0)
      • Java (6)
        • Java기초 (4)
      • CodingTest (20)
        • sql (0)
        • Programmers (13)
        • Baekjoon (7)
      • 리눅스 (4)
        • 리눅스 실습 (4)
      • English speaking (1)
        • 대화 예제 (1)
      • 자격증 준비 (2)
        • 리눅스마스터 2급 (1)
        • 네트워크 관리사 2급 (1)
        • 정보처리기사 실기 (0)
      • CS공부 (1)
        • 클라우드 (1)
      • 네트워크 (11)
        • 네트워크 이론 (7)
        • Cisco 장비 실습 (4)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

    SWITCH
    스위치
    구현
    IT인프라
    비트연산
    프로그래머스 lv1
    네트워크프로토콜
    인프라엔지니어
    투포인터
    리눅스실습
    네트워크장비
    실버5
    문자열
    Java
    정렬
    완전탐색
    Cisco
    네트워크관리사
    icmp
    TCP/IP
    네트워크이론
    리눅스
    프로그래머스 LV2
    시스코스위치
    IOS
    네트워크
    JAVA기초
    백준
    누적합
    네트워크기초
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
잔망수빈
[Java기초]String, StringMethod, StringBuilder
상단으로

티스토리툴바