String 활용하여 전화번호부로 부산사는 고객수 찾기
package ex04;
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
""";
int count = 0;
// 부산에 사는 고객은 몇명인가요? 051에서
// 1. split(,)로 String[] splitNums[]로 옮기기
String[] splitNums = nums.split(",");
System.out.println(splitNums[0]);
System.out.println(splitNums[1]);
System.out.println(splitNums[2]);
System.out.println(splitNums[3]);
System.out.println(splitNums[4]);
System.out.println(splitNums[5]);
System.out.println(splitNums[6]);
// 1-1 공백 없애기
splitNums[0] = splitNums[0].trim();
splitNums[1] = splitNums[1].trim();
splitNums[2] = splitNums[2].trim();
splitNums[3] = splitNums[3].trim();
splitNums[4] = splitNums[4].trim();
splitNums[5] = splitNums[5].trim();
splitNums[6] = splitNums[6].trim();
// 2-1 splitNums[] for문 돌면서 indexOf(")") 위치 찾기
System.out.println(splitNums[0].indexOf(")"));
System.out.println(splitNums[1].indexOf(")"));
System.out.println(splitNums[2].indexOf(")"));
System.out.println(splitNums[3].indexOf(")"));
System.out.println(splitNums[4].indexOf(")"));
System.out.println(splitNums[5].indexOf(")"));
System.out.println(splitNums[6].indexOf(")"));
// 2-2 substring으로 지역번호 추출
System.out.println(splitNums[0].substring(0, splitNums[0].indexOf(")")));
System.out.println(splitNums[1].substring(0, splitNums[1].indexOf(")")));
System.out.println(splitNums[2].substring(0, splitNums[2].indexOf(")")));
System.out.println(splitNums[3].substring(0, splitNums[3].indexOf(")")));
System.out.println(splitNums[4].substring(0, splitNums[4].indexOf(")")));
System.out.println(splitNums[5].substring(0, splitNums[5].indexOf(")")));
System.out.println(splitNums[6].substring(0, splitNums[6].indexOf(")")));
// 2-3지역번호만 newNums[]로 옮기기
String[] newNums = splitNums[0].substring(0, splitNums[0].indexOf(")")).split(",");
String[] newNums1 = splitNums[1].substring(0, splitNums[1].indexOf(")")).split(",");
String[] newNums2 = splitNums[2].substring(0, splitNums[2].indexOf(")")).split(",");
String[] newNums3 = splitNums[3].substring(0, splitNums[3].indexOf(")")).split(",");
String[] newNums4 = splitNums[4].substring(0, splitNums[4].indexOf(")")).split(",");
String[] newNums5 = splitNums[5].substring(0, splitNums[5].indexOf(")")).split(",");
String[] newNums6 = splitNums[6].substring(0, splitNums[6].indexOf(")")).split(",");
System.out.println("newNums= " + newNums[0]);
System.out.println("newNums= " + newNums1[0]);
System.out.println("newNums= " + newNums2[0]);
System.out.println("newNums= " + newNums3[0]);
System.out.println("newNums= " + newNums4[0]);
System.out.println("newNums= " + newNums5[0]);
System.out.println("newNums= " + newNums6[0]);
// 3-1 newNums[] for문 돌면서 051 지역번호를 equals로 확인
System.out.println("equals = " + "051".equals(newNums[0]));
System.out.println("equals = " + "051".equals(newNums1[0]));
System.out.println("equals = " + "051".equals(newNums2[0]));
System.out.println("equals = " + "051".equals(newNums3[0]));
System.out.println("equals = " + "051".equals(newNums4[0]));
System.out.println("equals = " + "051".equals(newNums5[0]));
System.out.println("equals = " + "051".equals(newNums6[0]));
// 3-1다른방법 contains로 확인하여
System.out.println("contains = " + (newNums[0].contains("051")));
System.out.println("contains = " + (newNums1[0].contains("051")));
System.out.println("contains = " + (newNums2[0].contains("051")));
System.out.println("contains = " + (newNums3[0].contains("051")));
System.out.println("contains = " + (newNums4[0].contains("051")));
System.out.println("contains = " + (newNums5[0].contains("051")));
System.out.println("contains = " + (newNums6[0].contains("051")));
//3-3 고객수를 int count변수에 누적
if (newNums[0].contains("051")) {
count++;
}
if (newNums1[0].contains("051")) {
count++;
}
if (newNums2[0].contains("051")) {
count++;
}
if (newNums3[0].contains("051")) {
count++;
}
if (newNums4[0].contains("051")) {
count++;
}
if (newNums5[0].contains("051")) {
count++;
}
if (newNums6[0].contains("051")) {
count++;
}
// 4. count 변수 출력
System.out.println("부산에 사는 고객은 " + count + "명입니다");
System.out.println(count);
}
}
package ex04;
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
""";
int count = 0;
// 부산에 사는 고객은 몇명인가요? 051에서
// 1. split(,)로 String[] splitNums[]로 옮기기
String[] splitNums = nums.split(",");
for (int i = 0; i < splitNums.length; i++) {
// 1-1 공백 없애기
splitNums[i] = splitNums[i].trim();
System.out.println(splitNums[i]);
// 2-1 splitNums[] for문 돌면서 indexOf(")") 위치 찾기
System.out.println(splitNums[i].indexOf(")"));
// 2-2 substring으로 지역번호 추출
System.out.println(splitNums[i].substring(0, splitNums[i].indexOf(")")));
// 2-3지역번호만 newNums[]로 옮기기
String[] newNums = splitNums[i].substring(0, splitNums[i].indexOf(")")).split(",");
System.out.println("newNums= " + newNums[0]);
// 3-1 newNums[] for문 돌면서 051 지역번호를 equals로 확인
System.out.println("equals = " + "051".equals(newNums[0]));
// 3-1 다른방법 contains로 확인하여
System.out.println("contains = " + (newNums[0].contains("051")));
//3-3 고객수를 int count변수에 누적
if (newNums[0].contains("051")) {
count++;
}
}
// 4. count 변수 출력
System.out.println("부산에 사는 고객은 " + count + "명입니다");
}
}
Share article