자바 문자열 String 이 비어 있 는 지 여 부 를 판단 합 니 다.

1.문자열 str 가 비어 있 지 않다 고 판단 하 는 방법 은 다음 과 같 습 니 다.
1、str == null;2、"".equals(str);3、str.length <= 0;4、str.isEmpty();주의:length 는 속성 입 니 다.일반 집합 대상 이 가지 고 있 는 속성 으로 집합 크기 를 얻 습 니 다.            예 를 들 어 배열.length 는 배열 의 길 이 를 얻 는 것 이다.          length()는 방법 입 니 다.일반 문자열 류 대상 은 이 방법 이 있 고 문자열 의 길 이 를 얻 을 수 있 습 니 다.            예 를 들 어 문자열.length();설명:  1.null 은 이 문자열 이 어떤 것 도 가리 키 지 않 는 다 는 것 을 표시 합 니 다.이 럴 때 사용 하 는 방법 이 있 으 면 빈 포인터 이상 이 발생 합 니 다.  2.''는 길이 가 0 인 문자열 을 가리 키 는데 이 때 호출 하 는 방법 이 안전 하 다 는 것 을 나타 낸다.  3.null 은 대상 이 아 닙 니 다.""대상 이기 때문에 null 은 공간 을 분배 하지 않 았 습 니 다.""공간 을 분 배 했 습 니 다.예 를 들 어:    String str1 = null; str 참조 가 비어 있 음    String str2 = ""; str 빈 문자열 참조    str 1 은 아직 실례 화 된 대상 이 아니 라 str 2 는 이미 실례 화 되 었 다.    대상 은 equals 로 비교 하고 null 은 등호 로 비교 합 니 다.    str1=null;다음 쓰기 오류:       if(str1.equals("")||str1==null){ }    올 바른 쓰 기 는 if(str1==null|str1.equals("){//이 므 로 문자열 이 비어 있 는 지 아 닌 지 를 판단 할 때 대상 인지 아 닌 지 를 판단 하고 빈 문자열 인지 아 닌 지 를 판단 합 니 다}  4.따라서 문자열 이 비어 있 는 지 여 부 를 판단 하려 면 먼저 null 이 아 닌 지 확인 한 다음 에 그의 길 이 를 판단 해 야 한다.     String str = xxx;     if(str != null && str.length() != 0) { }
2.다음은 자바 가 문자열 이 비어 있 는 지 여 부 를 판단 하 는 네 가지 방법 입 니 다.
네 가지 방법의 집행 효율 은 다음 과 같다.
JudgeString 1 소모 시간:625 msJudgeString 2 소모 시간:125 msJudgeString 3 소모 시간:234 msJudgeString 4 소모 시간:109 ms
 
  
/**
 * Created with IntelliJ IDEA.
 * User: Administrator
 * Date: 14-1-16
 * Time: 10:43
 *
 */
public class JudgeStringIsEmptyOrNot {
    public static void main(String[] args) {
        JudgeString1("w_basketboy", 10000);
        JudgeString2("w_basketboy", 10000);
        JudgeString3("w_basketboy", 10000);
        JudgeString4("w_basketboy", 10000);
    }

    /**
     * : , , , ;
     * : , , ;
     * : Java SE 6.0 , , , ;
     * : , , , 、 ;
     */
    public static void JudgeString1(String str, long num) {
        long startTiem = System.currentTimeMillis();
        for (int i = 0; i < num; i++) {
            for (int j = 0; j < num; j++) {
                if (str == null || "".equals(str)) {

                }
            }
        }
        long endTime = System.currentTimeMillis();
        System.out.println("function1 :" + (endTime - startTiem) + "ms");
    }

    public static void JudgeString2(String str, long num) {
        long startTiem = System.currentTimeMillis();
        for (int i = 0; i < num; i++) {
            for (int j = 0; j < num; j++) {
                if (str == null || str.length() <= 0) {

                }
            }
        }
        long endTime = System.currentTimeMillis();
        System.out.println("function4 :" + (endTime - startTiem) + "ms");
    }

    public static void JudgeString3(String str, long num) {
        long startTiem = System.currentTimeMillis();
        for (int i = 0; i < num; i++) {
            for (int j = 0; j < num; j++) {
                if (str == null || str.isEmpty()) {

                }
            }
        }
        long endTime = System.currentTimeMillis();
        System.out.println("function3 :" + (endTime - startTiem) + "ms");
    }

    public static void JudgeString4(String str, long num) {
        long startTiem = System.currentTimeMillis();
        for (int i = 0; i < num; i++) {
            for (int j = 0; j < num; j++) {
                if (str == null || str == "") {

                }
            }
        }
        long endTime = System.currentTimeMillis();
        System.out.println("function4 :" + (endTime - startTiem) + "ms");
    }
}

좋은 웹페이지 즐겨찾기