///////
Search

16_Object 클래스_장서현

String 클래스

String 클래스는 문자열을 구성하는 문자들을 내부에 저장한다.
String 객체도 결국은 문자들의 배열이다.
//char와 String은 반드시 구분 char ch = 'a'; String str = "abcdef";
Java
복사

String 클래스 메서드

String 객체

String 객체 생성의 2가지 방법

1.
리터럴: 많이 사용되는 방법
2.
객체 생성: 원칙
public static void main(String[] args) { String s1 = "java"; //리터럴 String s2 = "java"; String s3 = new String("java"); //객체 생성 String s4 = new String("java"); if (s1 == s2) { System.out.println("같습니다."); //주소값이 같다.(같은 문자열 상수 풀에 올라가기 때문) } else { System.out.println("다릅니다."); } if (s3 == s4) { System.out.println("같습니다."); } else { System.out.println("다릅니다."); //주소값이 다르다. } }
Java
복사

String 객체 - 문자열 비교하기 equals()

문자열 비교는 꼭❗️❗️❗️ equals() 메서드 사용하기 (’==’ 사용 )
public static void main(String[] args) { String s3 = new String("java"); //객체 생성 String s4 = new String("java"); if (s3 == s4) { System.out.println("같습니다."); } else { System.out.println("다릅니다."); //주소값이 다르다. } if (s3.equals(s4)) { System.out.println("같습니다."); //문자열 비교 결과 출력: 같다. } else { System.out.println("다릅니다."); } }
Java
복사

String 객체 - 문자 추출 charAt()

public static void main(String[] args) { String subject = "자바 프로그래밍"; char charValue = subject.charAt(3); System.out.println(charValue); //'프' 출력 }
Java
복사
public static void main(String[] args) { Scanner sc = new Scanner(System.in); char ch = sc.next().charAt(0); System.out.println(ch); //입력한 문자열의 0번 인덱스의 값 출력 }
Java
복사

String 객체 - 문자열 안에서 단어 찾기 indexOf()

public static void main(String[] args) { String str = "the cat is on the table"; int index = str.indexOf("is"); System.out.println(index); //"is"의 시작 위치인 8 출력 }
Java
복사
만약 없는 문자열을 indexOf()에 넣게 되면 -1이 출력된다.

String 객체 - 문자열 길이 length()

public static void main(String[] args) { String str = "the cat is on the table"; System.out.println(str.length()); //빈 공간 포함 23 출력 }
Java
복사
배열 속 문자열의 길이를 합하여 리턴하는 메서드 예제

String 객체 - 공백 잘라내기 trim()

public static void main(String[] args) { String trimStr = " I Love you "; System.out.println(trimStr); System.out.println(trimStr.length()); //앞, 뒤의 빈 공간 포함 12 출력 System.out.println(trimStr.trim()); System.out.println(trimStr.trim().length()); //10 출력 }
Java
복사

String 객체 - 문자열을 단어로 분리 split()

public static void main(String[] args) { String[] tokens = "I am a boy".split(" "); //공백을 기준으로 분리한다. for (String t : tokens) { System.out.println(t); } }
Java
복사
public static void main(String[] args) { String[] tokens = "100, 200, 300".split(", "); //", "을 기준으로 분리한다. for (String t : tokens) { System.out.println(t); } }
Java
복사

String 객체 - 기본 타입값을 문자열로 전환 valueOf()

public static void main(String[] args) { int num = 100; String str = String.valueOf(num); //int 타입 100을 "100"으로 전환 System.out.println(str); str = String.valueOf(10.0); //double 타입 10.0을 "10.0"으로 전환 System.out.println(str); str = String.valueOf(false); //boolean 타입 false 를 "false"로 전환 System.out.println(str); }
Java
복사
cf: int 타입으로 전환
public static void main(String[] args) { String str2 = "100"; int num2 = Integer.parseInt(str2); //String 타입 "100"을 100으로 전환 System.out.println(num2); }
Java
복사

예제

1.
Scanner를 이용하여 한 라인을 읽고, 공백으로 분리된 어절이 몇 개 들어 있는지 "그만"을 입력할 때까지 반복하는 프로그램을 작성하라. [Hint] Scanner.nextLine()을 이용하면 빈칸을 포함하여 한 번에 한 줄을 읽을 수 있다.
>> I love Java. 어절 개수는 3 >> 자바는 객체 지향 언어로서 매우 좋은 언어이다. 어절 개수는 7 >> 그만 종료합니다...
Plain Text
복사
code