[Java] 46. String 관련 함수

백하림's avatar
Feb 12, 2025
[Java] 46. String 관련 함수
package ex08; // String 관련 함수 다 사용해보기 public class Str01 { public static void main(String[] args) { // 1. 문자열의 길이 (할아버지 12자만 보내세요.) String s1 = "abcd"; System.out.println("s1 length : " + s1.length()); // 2. 특정 index의 문자 확인하기 String s2 = "abcd"; System.out.println("s2 charAt(2) : " + s2.charAt(2)); // 3. 문자열 비교 System.out.println("abcd".equals("abcd")); // 문자열은 equals로 비교 // 4. 문자열 추출 String s3 = "abcd"; System.out.println(s3.substring(0, 1)); // 첫번째 인덱스가 0이 맞는지, end 인덱스가 마지막이 맞는지 // 5. 문자열 검색 String s4 = "abcd"; System.out.println(s4.indexOf("c")); // 인덱스 출력 // 6. 문자열 포함 여부 String s5 = "abcd"; System.out.println(s5.contains("k")); // 있으면 true 없으면 false // 7. 문자열 대소문자 변경 String s6 = "Abcd"; System.out.println(s6.toUpperCase()); // 전부 대문자로 변경 System.out.println(s6.toLowerCase()); // 전부 소문자로 변경 // 8. 문자열 치환 (replace, replaceAll) int age = 10; String s7 = "내 나이는 $age고 난 내 나이 $age가 좋아 !".replace("$age", age + ""); System.out.println(s7); // 9. 앞뒤 공백 제거(trim) String s8 = "abcd "; System.out.println(s8.trim()); // 10. 문자열 분리 (split) String s9 = "ab:cd:ef"; String[] r9 = s9.split(":"); System.out.println(r9[0]); System.out.println(r9[1]); System.out.println(r9[2]); } }
notion image
package ex08; public class Str02 { public static void main(String[] args) { String nums = """ 031)533-2112, 02)223-2234, 02)293-4444, 051)398-3434, 02)498-3434, 051)398-3434, 043)3222-3434, """; // 부산에 사는 고객은 몇 명인가요 ? // 1. split(,)으로 String[] 옮기기 String[] splitNums = nums.split(",\n"); // 콤마(,)와 엔터를 기준으로 나누어 배열에 저장 for (int i = 0; i < splitNums.length; i++) { // 배열의 길이만큼 반복 System.out.println(splitNums[i]); } // 2. splitNums[] for문 돌면서 indexOf(")") 위치 찾고, substring으로 지역번호 추출해서 지역번호만 newNums[]로 옮기기 String[] newNums = new String[splitNums.length]; // 지역 번호 저장할 배열 생성 for (int i = 0; i < splitNums.length; i++) { // 배열 길이만큼 반복 int a = splitNums[i].indexOf(")"); // 지역번호의 ) 인덱스 값을 저장할 변수 생성 // System.out.println(a); String b = splitNums[i].substring(0, a); // )위치 찾아서 자르기 //System.out.println(b); newNums[i] = b; // for문 돌면서 ) 이전까지 값 저장하기 //System.out.println(newNums[i]); } // 3. newNums[] for문 돌면서 051 지역번호를 equals로 확인 or contains로 확인하여 고객수를 int count변수에 누적 int count = 0; // 051이 맞는지 확인하는 count 변수 for (int i = 0; i < newNums.length; i++) { // 배열의 길이만큼 반복 if (newNums[i].equals("051")) { // .equals를 사용하여 051이 맞다면 count를 1증가, 아니면 다시 for문으로 돌아가서 반복 count++; } } // 4. count 출력 System.out.println(count); } }
notion image
Share article

harimmon