1. String이란?
String은 문자열을 저장할 수 있는 타입으로 기본 타입이 아닌 클래스 타입으로 참조 변수이다.
String은 쌍따옴표("") 안에 작성한 문자들을 문자열로 저장한다.
※ char로 선언한 "가"와 String으로 선언한 "가"는 서로 타입이 다르다.
2. String의 선언
String 변수를 선언하는 방법은 아래와 같다.
String 변수명;
그리고 String 변수에 문자열을 저장하려면 큰 따옴표로 감싼 문자열을 대입하면 된다.
변수명 = "문자열";
또한 선언과 동시에 문자열을 저장할 수도 있다.
String 변수명 = "문자열";
아래는 String에 문자열 Apple을 저장한 예시이다.
String fruits = "Apple";
3. String의 활용
(1) .lenght() : 해당 문자열의 길이를 리턴해주는 메소드
System.out.println(fruits.length());
Apple은 알파벳 5개로 이뤄져 있기 때문에 위의 값은 5로 출력된다.
(2) .charAt(인덱스 번호) : 배열, 문자열에서 몇 번째에 해당하는 숫자를 의미한다.
fruits에 새로운 값을 대입하여 보자.
fruits = "Apple, Banana, Cherry";
.charAt(인덱스 번호)은 해당 문자열에서 인덱스 번호에 해당하는 문자를 리턴한다. 그런데 인덱스 번호는 0부터 시작하므로 인덱스 0은 첫 번째에 들어가있는 값을 의미한다. 결국 Apple은 인덱스 0, Banana는 인덱스 1, Cherry는 인덱스 2다.
System.out.println(fruits.charAt(0));
위의 코드는 fruits의 0번째 인덱스인 "A"를 가져온다.
(3) .indexOf(문자) : 괄호 안에 있는 문자를 찾아 몇 번째 인덱스인지 출력해주고 해당 문자가 없다면 "-1"을 리턴한다.
System.out.println(fruits.indexOf("B"));
위의 코드는 "B"의 인덱스 번호인 7을 출력한다.
System.out.println(fruits.indexOf("O"));
위의 코드는 "-1"을 리턴한다. 이처럼 특정 문자가 존재하는지 확인할 때도 활용할 수 있다.
(4) .substring(시작 인덱스, 끝 인덱스) : 해당 문자열을 시작 인덱스에서 끝 인덱스 전까지 표시한다. 끝 인덱스가 문자열의 마지막인데 그것까지 포함하고 싶다면 +1을 한다.
System.out.println(fruits.substring(0, 5));
위의 코드는 인덱스 0부터 5까지이므로 "Apple"을 출력한다.
System.out.println(fruits.substring(7));
위의 코드처럼 괄호 안에 시작 인덱스만 넣는다면? 해당 문자열을 시작 인덱스부터 문자열 끝까지 표현해준다. 결국 위의 코드는 Banana, Cherry를 출력한다.
(5) .replace(교체하고 싶은 문자열, 새롭게 넣을 문자열) : 전체 문자열에서 교체하고 싶은 문자를 찾아 세롭게 넣을 문자열로 교체해준다.
System.out.println(fruits.replace("Cherry", "Coconut"));
위의 코드는 "Apple, Banana, Coconut"로 출력된다. 하지만 바로 다음에
System.out.println(fruits);
위의 코드를 실행해서 확인해보면 선언한 원본은 그대로 유지되어 "Apple, Banana, Cherry"로 출력된다. 변수에 값을 새롭게 대입하지는 않았기 때문이다.
(6) .trim() : 해당 문자열의 양쪽 끝에 존재하는 공백 문자만 제거해 준다.
String world = " The New World ";
System.out.println(world.trim());
trim은 양쪽 끝에 존제하는 공백 문자만 제거해주기 때문에 위의 코드는 "The New World"로 출력된다. 만약 모든 공백을 제거하고 싶다면 (5)에서 배웠던 replace를 이용한다.
System.out.println(world.replace(" ", ""));
위의 코드는 모든 공백을 제거해버렸기 때문에 "TheNewWorld"로 출력된다.
(7) .toUpperCase() : 해당 문자열에 존재하는 알파벳을 전부 "대문자"로 변경
.toLowerCase() : 해당 문자열에 존재하는 알파벳을 전부 "소문자"로 변경
System.out.println(fruits.toUpperCase());
System.out.println(fruits.toLowerCase());
위의 코드는 각각 "APPLE, BANANA, CHERRY", "apple, banana, cherry"로 출력된다. 회원가입이나 로그인 시 ID 입력같이 모두 소문자로 임력해야 하는 경우에 많이 사용되고, substring()와 함께 사용하여 특정 문자만 대문자 또는 소문자로 만들고 싶을 때 사용한다.
(8) .concat(문자열) : 해당 문자열 뒤에 괄호 안에 있는 문자열을 붙인다
System.out.println(fruits.concat(", Durian"));
위의 코드는 "Apple, Banana, Cherry, Durian"로 출력된다. 하지만 "+"를 사용해도 똑같이 실행된다.
System.out.println(fruits + ", Durian");
위의 코드는 concat한 코드와 똑같은 값을 출력한다.
'JAVA' 카테고리의 다른 글
JAVA - 클래스의 구성 (0) | 2022.07.15 |
---|---|
JAVA - 클래스와 객체 (0) | 2022.06.20 |
JAVA - 기초 프로젝트 : 간단한 콘솔 게임 "이승탈출 넘버원" (0) | 2022.06.08 |
JAVA - 조건문(if문, switch문) (0) | 2022.06.08 |
JAVA - 삼항연산자 (0) | 2022.06.08 |
댓글