• Homework(9)

    2021. 7. 1.

    by. 와트

    ※문제. static메소드 작성

    1. 전달한 문자열을 모두 대문자로 바꾸는 static 메소드
    2. 문자열(1)에서 전달받은 인덱스(2)의 문자를 전달받은 문자(3)로 변경하는 static 메소드
    3. 전달한 문자열에서 영문자의 개수를 리턴하는 static 메소드
    4. 전달한 문자열값을 하나로 합쳐서 리턴하는 static 메소드

    더보기
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    public class StaticMethod {
     
        public static String toUpper(String str) {
            String result = str.toUpperCase();
            return result;
        }
        
        
        public static String setChar(String str, int num, char ch) {
            char[] arr = new char[str.length()];
            String result = "";
            for(int i = 0; i < arr.length; i++) {
                if(num == i) 
                    arr[num] = ch;
                else
                    arr[i] = str.charAt(i);
                result += arr[i];
            }
            return result;
        }
        
        public static int getAlphabetLength(String str) {
            if(str == null)
                return 0;
            
            int cnt = 0;
            char[] arr = new char[str.length()];
            for(int i = 0; i < arr.length; i++) {
                if((arr[i] >= 'a' && arr[i] <= 'z'|| (arr[i] >='A' && arr[i] <='Z'))
                    cnt++;
            }
            return cnt;
        }
        
        public static String concat(String str1, String str2) {
            String result = str1 + str2;
            return result;
        }
    cs

    2번 문제의 경우 substring메소드를 가지고도 풀 수 있다.

    1
    2
    3
    4
    5
    6
        public static String setChar(String str, int index, char ch) {
            String strBefore = str.substring(0, index);
            String strAfter = str.substring(index + 1);
            
            return strBefore + ch + strAfter;
        }
    cs

    하나의 문제도 정말 다양한 풀이가 가능하다.

     

    더보기
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
        public static String setChar(String str, int index, char ch){
            char[] arr = str.toCharArray();
            arr[index] = ch;
            return new String(arr); 
        }
        
        public static int getAlphabetLength(String s){
            int cnt = 0;
            for(int i = 0; i < s.length(); i++) {
                char ch = s.charAt(i);
                if(Character.isUpperCase(ch) || Character.isLowerCase(ch))
                    cnt++;
            }
            return cnt; 
        }
    cs

    2번이랑 3번이 내가 한 방법이랑 달라서 가져와 봤다.

    자바는 진짜 찾기만 하면 웬만한 메소드는 다 있는 듯...

    알고 있는 걸로 잘 푸는 것도 중요하지만 계속 구글링을 습관화해야겠다.

     

    '혼자 있는 방 > Java' 카테고리의 다른 글

    필기_Test(2)  (0) 2021.07.05
    Homework(10)  (0) 2021.07.02
    Homework(8)  (0) 2021.06.30
    Test(1)  (0) 2021.06.28
    Homework(7)  (0) 2021.06.25

    댓글

Designed by Nana