Notice
Recent Posts
Recent Comments
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Archives
Today
Total
관리 메뉴

충분히 쌓여가는

문자열 본문

Java

문자열

빌드이너프 2023. 1. 31. 15:30

문자열 생성

String welcome;
  • String 형 참조변수인 welcome를 선언하지만, 실제로 어떤 String 객체도 존재하지 않음
  • welcome는 어떤 String 객체도 가리키지 않음

 

welcome = "환영합니다";
  • String 객체를 생성하는 것은 다른 객체들과는 다름
  • 자바는 큰따옴표("")안에 있는 문자열을 만날 때 자동적으로 문자열 객체를 만듬
  • '환영합니다'라는 값을 갖는 문자열 객체를 만들고 welcome이 생성된 문자열 객체를 가리키게 함

 

String welcome = "환영합니다";
  • 위 두 문장을 한 문으로 합칠 수 있음

 

String welcome = new String("환영합니다");
  • 표준 객체에서는 new 라는 연산자 사용하고 생성자 메소드를 호출하여 객체를 생성

문자열 결합

  • 문자열 결합(concatenation)을 위해 연산자 +를 사용함
  • + 연산자: 피 연산자가 숫자일 때는 숫자들의 합 구함
  • + 연산자: 피 연산자가 문자열들일 때는 문자열들을 결합시킴

 

String str = "자바" + "프로그래머";
  • "자바"와 "프로그래머" 문자열을 결합하여 새로운 문자열을 생성하고 새로 생성된 문자열은 "자바프로그래머"가 됨

 

"평창" + 2018
  • 문자열과 숫자를 더할 경우: 숫자 2018이 문자열로 변환되고, 문자열 결합이 이루어져 "평창2018"이 됨

문자열 관련 메소드들

length() 문자열의 크기(문자열 내에 있는 문자들의 수)를 반환
charAt(int index) 문자열 내에 (index + 1) 번째 위치에 있는 문자 반환
substring(int Startindex) 문자열 내에 (Startindex + 1) 번째 위치에 있는 문자부터 끝 문자까지의 부분 문자열을 반환
substring(int Startindex, int Endindex) 문자열 내에 (Startindex + 1)번째 위치에 있는 문자부터 Endindex 번째 위치에 있는 문자까지의 부분 문자열 반환
indexOf(String aString) 문자열 내에 aString이라는 문자열이 나오는 첫 번째 지수를 반환

문자열 처리하는 간단한 프로그램

public class ChangeString {
    public static void main(String[] args) {
        // str은 주어진 문자열을 가리킴
        String str = "자바 프로그래밍은 어렵다!";

        // 주어진 문자열을 출력함
        System.out.println("주어진 문자열:" + str);

        // 주어진 문자열의 길이 출력
        System.out.println("주어진 문자열의 길이: " + str.length());

        //주어진 문자열내에서 '어렵다'가 나오는 첫 번째 지수를 찾음
        int position = str.indexOf("어렵다!");

        // 찾은 지수 출력
        System.out.println("\'어렵다\'라는 단어는 지수 " + position + "에서 시작함");

        // 주어진 문자열내의 '어렵다'를 '쉽다'로 바꿈
        str = str.substring(0, position) + "쉽다!";

        // 바뀐 문자열 출력
        System.out.println("바뀐 문자열:" + str);
    }
}

 

'Java' 카테고리의 다른 글

Math 클래스  (0) 2023.01.31
Random 클래스  (0) 2023.01.31
클래스와 객체  (0) 2023.01.31
System.in / 구분문자(delimiter)  (0) 2023.01.30
데이터 변환  (0) 2023.01.25