[JAVA] String 메소드 1 - charAt(), length(), isEmpty(), concat(), contain(), trim(), toCharArray()
안녕하세요. 이번 글은 String 문자열과 관련된 메소드입니다.
해당 주제는 총 3번에 나눠서 업로드하겠습니다.
- charAt()
package classes;
public class Example {
public static void main(String[] args) {
String value = "티스토리 블로그";
System.out.println("value의 0번째 값 : " + value.charAt(0));
System.out.println("value의 1번째 값 : " + value.charAt(1));
System.out.println("value의 2번째 값 : " + value.charAt(2));
System.out.println("value의 3번째 값 : " + value.charAt(3));
System.out.println("value의 4번째 값 : " + value.charAt(4));
System.out.println("value의 5번째 값 : " + value.charAt(5));
System.out.println("value의 6번째 값 : " + value.charAt(6));
System.out.println("value의 7번째 값 : " + value.charAt(7));
//System.out.println("value의 7번째 값 : " + value.charAt(8)); //StringIndexOutOfBoundsException
}
}
charAt(int index)는 반환형이 char이며 문자열 내 위치값에 위치한 한 글자를 반환해주는 메소드이다.
괄호 안 매개변수인 index는 int형으로서 문자열 내 위치를 입력하는 구간인데 n번째 값을 반환한다는 의미이다.
소스코드와 같이 charAt(0)으로 메소드를 사용하면 해당 문자열의 0번째 값인 '티'를 추출해낸다. 하지만 범위 밖의 위치값을 입력하면 범위를 초과했다는 예외처리 문구가 나오면서 정상 출력이 되지 않는 모습을 확인할 수 있다.
추가로 띄어쓰기도 하나의 문자인 점과 이 또한 따로 출력할 수 있다는 점도 확인 가능하다.
- length()
public class Example {
public static void main(String[] args) {
String value = "티스토리 블로그";
System.out.println(value.length());
for (int i = 0; i < value.length(); i++) {
System.out.print(value.charAt(i) + " ");
}
System.out.println();
}
}
length()는 문자열의 길이를 반환해주는 메서드이다. 이 때 띄어쓰기 또한 문자열에 포함된다.
해당 그림에서 볼 수 있듯이 value라는 String 문자열의 길이는 0부터 7까지 총 8개인 점을 확인할 수 있다.
또한 이를 활용해서 for문을 통해 처음부터 문자열의 길이까지 반복하는 방식으로 charAt()을 끝까지 출력할 수 있다.
해당 for문의 출력결과는 티 스 토 리 블 로 그 이다.
- isEmpty() & concat()
package classes;
public class Example {
public static void main(String[] args) {
String value = "티스토리 블로그";
System.out.println(value.isEmpty()); // result : false
System.out.println(value.concat("입니다.")); // result : 티스토리 블로그입니다.
}
}
- isEmpty() : 반환형은 boolean이며 해당 문자열이 빈값이면 true, 아니면 false를 반환해주는 메서드
- concat(String str) : 반환형은 String이며 문자열 뒤에 추가로 문자열을 붙여서 하나의 문자열로 합치는 메소드
- contains() & trim()
package classes;
public class Example {
public static void main(String[] args) {
String value = "티스토리 블로그";
System.out.println(value.contains("블")); // true
System.out.println(value.contains("지")); // false
String value02 = " 티스토리 블로그";
System.out.println(value02); // result : " 티스토리 블로그"
System.out.println(value02.trim()); // result : "티스토리 블로그"
}
}
- contains(String str) : 문자열에 매개변수의 값이 포함되어 있는지에 대한 여부를 출력해주는 메소드 (boolean 반환)
- trim() : 문자열의 맨 앞과 뒤의 공백을 제거해주는 메소드
- toCharArray()
package classes;
public class Example {
public static void main(String[] args) {
String value = "티스토리 블로그";
char str2arr[] = value.toCharArray();
for (int i = 0; i < str2arr.length; i++) {
System.out.print(str2arr[i] + " "); // result : "티 스 토 리 블 로 그 "
}
System.out.println();
}
}
- toCharArray() : 해당 문자열을 하나하나 분리해서 char형의 배열에 대입해주는 메소드
str2arr[] 이라는 배열에 value 문자열 내 한 글자 당 배열 내 한 공간에 대입해주는 것과 배열의 길이를 바탕으로 배열 내 데이터를 정상적으로 출력할 수 있음을 확인 가능하다.
다음 글은 같은 주제에 대해 이어서 작성하겠습니다.