아래 편집기에서는 Java의 null이 무엇인지, null을 사용할 때 주의해야 할 사항에 대해 간략하게 설명합니다. 편집자님이 꽤 좋다고 생각하셔서 지금 공유하고 모두에게 참고용으로 드리고자 합니다. 편집기를 따라 살펴보겠습니다
1. null은 객체도 아니고 유형도 아니며 단지 특별한 값일 뿐입니다. 어떤 참조 유형에도 할당할 수 있으며, null을 어떤 유형으로든 변환할 수도 있습니다. 예:
Integer i=null; Float f=null; String s=null;
그러나 int, float, double 등과 같은 기본 유형에는 null을 할당할 수 없습니다.
int k=null ----------컴파일러는 오류를 보고합니다할 수 없습니다. null에서 int로 변환
2.null은 public, static, final과 같은 키워드입니다. 대소문자를 구분합니다. Null 또는 NULL로 쓸 수 없습니다. 그렇지 않으면 컴파일러에서 오류를 보고합니다
3. Java unboxing이 기본 데이터 유형을 생성할 때 null 값을 포함하는 래퍼 클래스는 null 포인터 예외를 발생시킵니다.
예:
Integer i=null;
int k=i;-------------Throw java . lang.NullPointerException
4. 컬렉션이나 배열을 탐색할 때 null 판단을 추가해야 합니다. 그렇지 않으면 컬렉션이나 배열에 null이 포함되어 있으면 예외가 발생합니다
5. 문자열이 같은지 확인할 때 상수 문자열을 같음 왼쪽에 배치하여 널 포인터 예외를 방지하세요
예:
String[] arr1={"abc","123",null,"sky"}; for (String s1 : arr1) { boolean flag=s1.equals("sky"); }
------------값이 =null인 경우, null 포인터 예외를 발생시키려면 s1.equals("sky")를 "sky".equals(s1)로 변경하여 예외 발생을 방지하세요
6. 빈 문자열과 null
유형의 차이점
null은 문자열이 아닌 객체의 값을 나타냅니다. 예를 들어, 객체에 대한 참조를 선언할 때 String a = null ;
""은 빈 문자열을 나타내며 길이가 0임을 의미합니다. 예를 들어, 문자열 String str = "" ;
Memory Allocation
String str = null 을 선언한다는 것은 문자열 개체에 대한 참조를 선언하지만 null을 가리킨다는 의미입니다. 즉, 메모리 공간을 가리키지 않는다는 의미입니다.
String str = ""; 값이 "" 빈 문자열인 문자열 유형의 참조를 선언하는 것을 의미합니다. 이 str 참조는 빈 문자열의 메모리 공간을 가리킵니다. Java에서는 변수와 참조 변수가 스택에 저장됩니다. (스택) 및 객체(새로 생성됨)는 힙에 저장됩니다.위 내용은 Java에서 null의 의미와 사용 시 주의할 점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!