투케이2K

333. (java/자바) [유틸 파일] : stringNotNullMulti : String 문자열 데이터 다중 널 판단 실시 : true / false 본문

Java

333. (java/자바) [유틸 파일] : stringNotNullMulti : String 문자열 데이터 다중 널 판단 실시 : true / false

투케이2K 2023. 7. 1. 11:48
반응형

[개발 환경 설정]

개발 툴 : AndroidStudio

개발 언어 : Java

 

[소스 코드]

    // -----------------------------------------------------------------------------------------
    // TODO [SEARCH FAST] : [RETURN] stringNotNullMulti : String 문자열 데이터 다중 널 판단 실시 : true / false
    // -----------------------------------------------------------------------------------------
    public static Boolean stringNotNullMulti(String [] data){

        /**
         * // -----------------------------------------
         * [stringNotNullMulti 메소드 설명]
         * // -----------------------------------------
         * 1. String 문자열 데이터 다중 널 판단 실시
         * // -----------------------------------------
         * 2. 호출 방식 : C_Util.stringNotNullMulti(new String[] {"hello", ""});
         * // -----------------------------------------
         * 3. 리턴 데이터 : 문자열 데이터가 모두 널이 아닌 경우 true / 하나라도 널인 경우 false
         * // -----------------------------------------
         * */


        // [리턴 변수 선언]
        boolean returnData = false;
        String M_LOG = "";


        // [로직 처리 실시]
        try {
            if (data != null
                    && data.length>0){ // [배열이 널이 아닌 경우]

                boolean nullFlag = false; // [널 데이터 체크 플래그]
                
                for (int i=0; i<data.length; i++){

                    String value = String.valueOf(data[i]);

                    if (value != null
                            && value.length()>0
                            && value.trim().equals("") == false
                            && value.trim().equals("null") == false
                            && value.trim().equals("undefined") == false){ // [문자열 널 아님]
                    }
                    else { // [문자열 널 임 >> for 문 수행 종료]
                        nullFlag = true;
                        M_LOG = "String Is Null : Index : " + String.valueOf(i);
                        break;
                    }
                }

                if (nullFlag == false){ // [확인 된 널 데이터가 없는 경우]

                    M_LOG = "SUCCESS : Input Array Index String Not Null";

                    // [리턴 변수에 삽입]
                    returnData = true;
                    
                }

            }
            else {
                M_LOG = "Input Array Is Null";
            }
        }
        catch (Exception e){
            e.printStackTrace();
            M_LOG = "Exception : " + String.valueOf(e.getMessage());
        }


        // [로그 출력 실시]
        try {
            //*
            // ===============================================================
            S_Log._D_("String 문자열 데이터 다중 널 판단 실시", new String[]{
                    "INPUT :: " + String.valueOf(Arrays.toString(data)),
                    "M_LOG :: " + String.valueOf(M_LOG),
                    "RETURN :: " + String.valueOf(returnData)
            });
            // ===============================================================
            // */
        }
        catch (Exception e){}


        // [리턴 반환 실시]
        return returnData;
    }
 

[결과 출력]

 

D///===========//: ================================================
I/: [LOG :: CLASS PLACE :: com.example.javaproject.C_Util.stringNotNullMulti(C_Util.java:5618)]
I/: ----------------------------------------------------
I/: [LOG :: DESCRIPTION :: String 문자열 데이터 다중 널 판단 실시]
I/: ----------------------------------------------------
I/: [LOG :: INPUT :: [hello, ]]
I/: ----------------------------------------------------
I/: [LOG :: M_LOG :: String Is Null : Index : 1]
I/: ----------------------------------------------------
I/: [LOG :: RETURN :: false]
D///===========//: ================================================

 

반응형
Comments