국비교육 1주일차 java 복습 1 (String 객체에 대한 멤버 메서드)
String 객체에 대한 멤버 메서드
String str3 = "Have a Nice Day";
String str4=" Happy Day ";
System.out.println("공백포함 str3의 길이: "+str3.length()); // 15
System.out.println("공백포함 str4의 길이: "+str4.length()); // 15
System.out.println("앞뒤공백제거 str4의 길이: "+str4.trim().length()); // 9
System.out.println("*"+str4+"*"); // * Happy Day *
System.out.println("*"+str4.trim()+"*"); // *Happy Day*
*.length() : 문자열의 길이 구하기
*.trim() :문자열 앞뒤 공백제거
*.trim().length() : 문자열 앞뒤 공백제거한 후 길이 구하기
String str3="Have a Nice Day";
System.out.println("str3에서 0번문자: "+str3.charAt(0)); // H
System.out.println("str3에서 7번문자: "+str3.charAt(7)); // N
System.out.println("str3에서 H의 인덱스: "+str3.indexOf('H')); // 0
System.out.println("str3에서 N의 인덱스: "+str3.indexOf('N')); // 7
System.out.println("str3에서 Have출력: " + str3.substring(0, 4)); // Have 0~3추출
System.out.println("str3에서 Nice출력: " + str3.substring(7, 11)); // Nice 7~10추출
System.out.println("str3에서 Nice부터 출력 : " + str3.substring(7)); // Nice Day
*.charAt(인덱스번호)
*.indexOf('찾을문자')
*.substring(처음 인덱스,끝 인덱스)
인덱스에 숫자 하나만 있으면 숫자부터 끝까지 출력
String str1 = "apple";
String str2 = "Apple";
System.out.println("문자열비교: " + str1.equals(str2)); // false
System.out.println("문자열비교: " + str1.equalsIgnoreCase(str2)); // true
System.out.println(str1.compareTo(str2)); // 97-62= 32 => 앞에것이 더 크다
System.out.println(str1.compareTo(str1)); // 0
System.out.println("computer".compareTo("command")); // 3 => 앞에가 다 똑같으면 p와 m을 비교
System.out.println("hello".compareTo("hello")); // 0
System.out.println("apple".compareTo("banana")); // 97-98 = -1 => 뒤의것이 더 크다
System.out.println("kiwi".compareTo("orange")); // -4
System.out.println("김".compareTo("홍")); // -10253 김<홍 오름차순
System.out.println("홍".compareTo("차")); // 2597 홍>차 내림차순
A.eqauls(B)
A.equalsIgnoreCase(B)
A.compareTo(B)
A와 B가 같은 경우 0
A와 B보다 작은 경우 -값(알파벳 차이만큼 음수)
A와 B보다 큰 경우 +값(알파벳 차이만큼 양수)
compareTo() 함수는 비교대상 문자열의 각 문자들을 첫번째자리 부터 하나씩 비교하다가 가장 먼저 만나는 상이한 문자들의 ASCII코드 값 차이를 반환하고 끝낸다.
String str3 = "Have a Nice Day";
// str3가 ***로 시작하면 true
System.out.println("시작문자 검사: "+str3.startsWith("Have")); // true
System.out.println("시작문자 검사: "+str3.startsWith("have")); // false
// str3가 ***로 끝나면 true
System.out.println("끝문자 검사: " +str3.endsWith("Day")); // true
System.out.println("끝문자 검사: " +str3.endsWith("day")); // false
시작,끝문자 검사 / 대소문자 구분
*.startsWith("시작문자열")
*.endsWith("끝문자열")
String str5 ="red,blue,green,yellow,pink,white";
System.out.println("str5를 ,로 분리하여 배열화하여 출력하기");
String[] arr =str5.split(",");
System.out.println(",로 구분된 색상 개수: "+arr.length); // 6
for(String color:arr)
System.out.println(color);
red
blue
green
yellow
pink
white
=========
String[] ** = *.split("구분문자")
String str3 = "Have a Nice Day";
System.out.println("str의 소문자 출력: "+str3.toLowerCase()); // have a nice day
System.out.println("str의 대문자 출력: "+str3.toUpperCase()); // HAVE A NICE DAY
*.toLowerCase() : 전부 소문자로
*.toUpperCase() : 전부 대문자로
String a1 = String.valueOf(100); // int-->String
String b1 = String.valueOf(12.345); // double-->String
System.out.println(a1+b1); // 10012.345
String a2 = 100+ ""; // int-->String
String b2 = 23.5+ ""; // double-->String
System.out.println(a2+b2); // 10023.5
int a3 = Integer.valueOf("1234"); // String==>int
int b3 = Integer.parseInt("1234"); // String==>int
System.out.println(a3+b3); // 2468
Stirng * = String.valueOf(숫자) : 숫자를 String으로
String * = 숫자+""; : 숫자를 String으로
int * = Integer.valueOf("문자열(숫자형태)") // String을 int로 참조자료형/객체화된 자료형인 Integer를 반환
int * = Integer.parseInt("문자열(숫자형태)") // String을 int로 기본자료형인 int형을 반환