Coded by Juny

문자열 타입 본문

Study/Java

문자열 타입

Juny_Choi 2023. 11. 12. 19:04

2023.11.10 - [Study/JAVA] - Java의 변수와 타입

 

Java의 변수와 타입

변수? 그게 뭔데 팍씨 컴퓨터 전공자라면 프로그래밍을 시작하면서 가장 처음 배우는 단어 중에 하나가 아닐 듯 싶다. 프로그래밍 세계에서는 데이터를 처리하기 위해 해당 데이터를 컴퓨터 어

dydwns9436.tistory.com

 

 

 

전 시간에 배운 문자타입이 문자열 타입 아니야? ㅡㅡ

데이터 타입 이름만 봐도 유추할 수 있을 것이다. 그렇다. 문자열은 여러 문자를 저장할 수 있는 데이터 타입이다. 문자열 데이터타입 선언은 String이라는 이름을 이용한다. 

String my_name = "Yongjun";

위와 같이 사용 가능하며 문자열 타입은 String을 이용하고 저장하는 값은 여러 문자를 넣어 줄 수 있다. 또한 감사하게도 공백도 하나의 문자로 취급하여 저장 가능하니 잘 활용해보자.

문자열 타입은 여러 문자를 넣는 만큼 각 문자마다 고유의 주소같은 게 존재하는데 이러한 특성을 이용해 Java에서 지원하는 각종 메서드를 통해 다양한 기능을 활용할 수 있으니 추후에 더 살펴보자.

 

문자열은 String을 다룰 수 있는 String 클래스 타입을 이용한다. 문자열을 위한 클래스로 분류되고 여기에서 String 관련 메서드들을 사용할 수 있다.

 

 

 

String 클래스에서 지원하는 메서드들은 뭐야?

우선 들어가기 전에 메서드라는 개념부터 익혀보자. Java에서 칭하는 메서드란 어떤 클래스 내부에 존재하는 특정 부분으로 어떠한 기능을 하도록 작성한 코드 묶음이다. 즉 이러한 코드 묶음을 통해 데이터를 입력받거나 특정 상황이 될 때 일련의 처리 과정을 통해 원하는 결과를 반환하는 기능을 의미한다. 

 

특정 메서드를 사용자가 직접 만들 수 도 있지만 특정 기능을 사용할 수 있도록 클래서에서 이미 정의되어있는 메서드를 사용할 수도 있다. 밑에서는 String 클래스에서 이미 정의되어 있는 String 처리 메서드들을 살펴보자.

 

1. length( )

해당 메서드는 문자열의 길이, 즉 철자의 개수를 리턴하는 메서드이다. 

String str = "StringTest";

System.out.println(str.length());

스트링 타입의 str 변수에 "StringTest"를 넣어주고 아래 출력코드에 length() 메서드를 사용하면 문자의 개수인 10이 출력된다.

 

2. charAt( )

해당 메서드는 문자열의 특정 인덱스에 해당하는 문자를 반환한다. 문자열의 길이보다 큰 인덱스 값이나 음수를 넣게된다면 오류가 발생하고 문자열의 첫번째 인덱스는 0이다.

String str = new String("Java");

System.out.println(str.charAt(0)); // 'J'
System.out.println(str.charAt(1)); // 'a'
System.out.println(str.charAt(2)); // 'v'
System.out.println(str.charAt(3)); // 'a'

charAt( ) 괄호 안에 추출한 문자의 인덱스를 적어 원하는 문자를 출력할 수 있다.

 

3. indexOf( )

해당 메서드는 문자열에서 특정 문자열을 찾기위한 메서드이다. charAt( )가 특정한 인덱스의 문자를 출력하는 거라면 indexOf( )는 특정 문자열이 위치한 인덱스를 반환한다. 

String str = new String("Oracle Java");

System.out.println(str.indexOf('o')); // 출력값 -> -1
System.out.println(str.indexOf('a')); // 출력값 -> 2
System.out.println(str.indexOf('p')); // 출력값 -> -1

해당 메서드는 문자의 대소문자를 구분하기 때문에 첫 번째 예시는 -1이 된다. 또한 해당 메서드는 여러 문자가 있을 시에는 처음 찾는 문자의 인덱스만 반환하기 때문에 2번 째 예시는 2가 된다. 마지막으로 p는 해당 문자열에 존재하지 않기 때문에 -1을 반환하게 된다.

 

4. toLowerCase( ) & toUpperCase( )

문자열에서는 문자의 대, 소문자의 구분이 있기 때문에 이러한 문자를 서로 바꿔주는 메서드가 있다. 메서드명으로 알 수 있듯이 toLowerCase( )는 대문자를 소문자로, toUpperCase( )는 소문자를 대문자로 바꿔주는 메서드이다.

String str = new String("Java");

System.out.println(str.toLowerCase()); // java
System.out.println(str.toUpperCase()); // JAVA

출력값을 보면 각각 대문자 소문자로 바꿔준 것을 알 수 있다

 

이 밖에도 String 클래스에서 지원하는 많은 메서드들이 존재하니 아래 표를 참고해보자.

'Study > Java' 카테고리의 다른 글

제어문  (1) 2023.11.22
콘솔 입출력  (0) 2023.11.17
연산자  (0) 2023.11.16
Java의 변수와 타입  (0) 2023.11.10
Java의 역사  (0) 2023.11.10