String s = "I like Java and Python and C.";
문자열 길이
length()
System.out.println(s.length()); //29
대소문자 변환
System.out.println(s.toUpperCase()); //대문자
System.out.println(s.toLowerCase()); //소문자
포함 관계
contains()
System.out.println(s.conta![](https://velog.velcdn.com/images/spdhsrnvl123/post/a0c4dd0d-b432-4db2-86f6-a85111d121fe/image.png)
ins("Java")); // 포함된다면 true, 포함되지 않는다면 false
System.out.println(s.contains("C#")); // 포함되지 않는다면 false
위치정보
기본 indexOf()
System.out.println(s.indexOf("Java")); // 위치 정보 7
System.out.println(s.indexOf("C#")); // 포함되지 않는다면 -1
System.out.println(s.indexOf("and")); // 처음 일치하는 위치 정보(12)
문자열 끝에서 부터 시작 lastIndexOf()
System.out.println(s.lastIndexOf("and");
시작 및 끝 일치 여부 판단
시작 startsWith()
끝 endsWith()
System.out.println(s.startsWith("I like");
// 이 문자열로 시작하면 true (아니면 false)
System.out.println(s.endWith("."));
// 이 문자열로 끝나면 true (아니면 false)
String s = "I like Java and Python and C.";
문자열 변환
replace()
전부 적용됨
System.out.println(s.replace("and",","));
//"and"를 ","로 변환
원하는 부분 문자열 추출
substring(시작인덱스, 끝인덱스)
주의❗️
원본 변수에 변환 결과가 반영되는 것은 아니다.
System.out.println(s.substring(7));
//인덱스 기준 7부터 시작(이전 내용은 삭제)
System.out.println(s.substring(indexOf("Java"), s.indexOf(".")));
공백 제거
trim()
s = " I love Java. "
System.out.println(s);
System.out.println(s.trim); //앞 뒤 공백 제거
문자열 결합
concat()
String s1 = "Java";
String s2 = "python";
System.out.println(s1 + s2); //Javapython
System.out.println(s1 + "," + s2);//Java,python
System.out.println(s1.concat(",").concat(s2)); //Java, python
문자열 비교
String s1 = "Java";
String s2 = "Python";
동등
equals()
System.out.println(s1.equals(s2)); //문자열 내용이 같으면 true, 다른면 false
System.out.println(s1.equals("Java")); //true
대소문자 구분 없이 문자열 내용이 같은지 여부 체크
System.out.println(s2.equalsIgnoreCase("python"));
변수선언 new와 기본 예약어 비교 차이
// 문자열 비교 심화
s1 = "1234"; //벽에 붙은 메모지의 비밀번호 정보 (참조)
s2 = "1234";
System.out.println(s1.equals(s2)); //true (내용)
System.out.println(s1 == s2); //true (참조)
//자바에서 문자열 선언하는 다른 방식 new
//s1과 s2는 참조하는 값이 다르다.
s1 = new String("1234");
s2 = new String("1234");
System.out.println(s1.equals(s2)); // true
System.out.println(s1 == s2); // false
특수 문자
// \n \t \ \" \'
\n : 줄바꿈
\t : 탭
\ : 역슬래시
\" : 큰따옴표
\' : 작은따옴표