String s4 = "aBcAbCabcABC";
System.out.println(s4.length());
System.out.println(s4.charAt(2));
System.out.println(s4.indexOf("abc")); //긴문자열에서 특정문자열 찾음
System.out.println(s4.indexOf("abc", 7)); // 시작위치 지정해줌, 못 찾으면 -1이나옴
System.out.println(s4.substring(3)); // 끝 지정안해주면 끝까지 나옴\
System.out.println(s4.substring(3,5)); // 3,4번까지 가져옴
String s5 = " ab cd ";
String s6 = "efg,hij,klm,nop,qrs";
String s7 = s5.concat(s6);
System.out.println(s7);
System.out.println("----"+s5.trim()+ "----"); // 공백 제거
System.out.println("----"+s5.replaceAll(" ","")+"----"); //빈스트링의 공백제거
String[] tokens = s6.split(","); // seperate 가 ,
for(String s : tokens) {
System.out.println(s);
}
String[] tokens2 = s6.split(" "); //스플릿못하면 원본리턴됨
for(String s : tokens2) {
System.out.println(s);
결과
12
c
6
-1
AbCabcABC
Ab
ab cd efg,hij,klm,nop,qrs
----ab cd----
----abcd----
efg
hij
klm
nop
qrs
efg,hij,klm,nop,qrs
8개의 기본 데이터형을 객체형식으로 다루기 위한 클래스들
- 자바 세상은 객체만 있기 때문에 객체를 대상으로 처리하는 경우가 많음
- 어떤 클래스는 객체만을 다루기 때문에 기본 데이터 형을 쓸 수 없다.
메소드로 값을 빼내야함
Integer j1 = 10;
//int m = j1.intValue() + 10 ; //객체 + 10 자동으로 언박싱됨
// Auto UnBoxing 기능이 있기때문에 밑에 처럼 작성하면됨
int m = j1 + 10 ;
캘린더 API
public static void main(String[] args) {
//getInstance : 팩토리메소드
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, 2021);
cal.set(Calendar.MONTH, 11);//12(month-1)
cal.set(Calendar.DATE, 25);
printDate(cal);
cal.set(1995, 05, 04);
cal.add(Calendar.DATE, 1000); //1000일 된 날
printDate(cal);
}
public static void printDate(Calendar cal) {
final String[] DAYS = {"일","월","화","수","목","금","토"};
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH);// 0~11 +1
int date = cal.get(Calendar.DATE);
int day = cal.get(Calendar.DAY_OF_WEEK); // 1(일)~7(토)
int hour = cal.get(Calendar.HOUR);
int minute = cal.get(Calendar.MINUTE);
int second = cal.get(Calendar.SECOND);
System.out.println(
(year)+"년 " +
(month+1) + "월 "+
date + "일 " +
DAYS[day-1] + "요일 " +
hour + "시 " +
minute + "분 " +
second +"초");
}