> Java > Java베이스 > 본문

Java는 문자가 비어 있는지 확인합니다.

angryTom
풀어 주다: 2019-11-11 14:45:36
원래의
4589명이 탐색했습니다.

Java는 문자가 비어 있는지 확인합니다.

java는 문자가 비어 있는지 확인

다음은 다음과 같습니다. 요약 다음은 Java에서 문자가 비어 있는지 확인하는 네 가지 방법입니다. 이것이 도움이 되기를 바랍니다.

방법 1. 가장 널리 사용되는 방법으로 직관적이고 편리하지만 매우 비효율적입니다.

if(s == null || s.equals(""));
로그인 후 복사

방법 2 , 문자열 비교 길이, 고효율, 제가 아는 최고의 방법입니다:

if(s == null || s.length() == 0);
로그인 후 복사

Method 3. 방법은 Java SE 6.0부터 제공되기 시작했고, 효율성과 방법 둘은 거의 비슷합니다. 동일하지만 호환성을 위해 방법 2를 사용하는 것이 좋습니다.

if(s == null || s.isEmpty());
로그인 후 복사

방법 4는 더 직관적이고 간단하며 더 효율적입니다. . 매우 높으며 방법 2와 3만큼 효율적입니다.

if (s == null || s == "");
로그인 후 복사

참고: s == null이 필요합니다. (권장 튜토리얼: #🎜🎜 #java tutorial)

String 유형이 null인 경우 같음(String) 또는 길이() 및 기타를 수행합니다. 작업은 java.lang.NullPointerException.

그리고 s==null의 순서가 먼저 나타나야 합니다. 그렇지 않으면 java.lang.NullPointerException.

#🎜 🎜#다음 Java 코드: # 🎜🎜#

String str = null;
f(str.equals("") || str == null){//会抛出异常
    System.out.println("success");
}
로그인 후 복사

Supplement:

1 빈 문자열과 null의 차이점

1 ,

을 입력하세요.

null은 문자열이 아닌 객체의 값을 나타냅니다. 예를 들어, 객체에 대한 참조를 선언할 때 String a = null ;

""은 ​​빈 문자열을 나타내며, 이는 길이가 0임을 의미합니다. 예를 들어, 문자열 String str = "" ;

2, 메모리 할당

String str = null 은 문자열 객체에 대한 참조를 선언하는 것을 의미합니다. null, 즉, 메모리 공간을 가리키지 않았습니다.

String str = ""는 문자열 유형의 참조를 선언하는 것을 의미하며 해당 값은 ""빈 문자열입니다. 이 str 참조는 다음과 같습니다. 문자열의 메모리 공간을 비우려면

Java에서 변수와 참조 변수는 스택(stack)에 저장되는 반면 객체(new로 생성됨)는 힙(heap)에 저장됩니다. 🎜#

은 다음과 같습니다:

String str = new String("abc") ;
로그인 후 복사

ps: = 왼쪽이 스택(Stack)에 저장되고, 오른쪽이 힙(Heap)에 저장됩니다. .

3. 샘플 프로그램:

public class String_Demo01 {
    public static void main(String[] args) {        
        String str1 = new String() ;
        String str2 = null ;
        String str3 = "" ;
        System.out.println(str1==str2);                //内存地址的比较,返回false
        System.out.println(str1.equals(str2));         //值的比较,返回false
        System.out.println(str2==str3);                //内存地址的比较,返回false
        System.out.println(str3.equals(str2));         //值的比较,返回false
        System.out.println(str1==str3);                //内存地址的比较,返回false
        System.out.println(str1.equals(str3));         //值的比较,返回true
    }
}
로그인 후 복사

위 프로그램을 통해 다음과 같은 결론을 내릴 수 있습니다.

문자열 개체의 값은 null과 같고 메모리 주소가 같지 않습니다.

빈 문자열 개체의 값이 null과 같지 않고

new; String()은 문자열 객체를 생성합니다. 기본값은 ""입니다. (String형 멤버변수의 초기값은 null입니다.)

위 내용은 Java는 문자가 비어 있는지 확인합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿