«nullpointerexception» 태그된 질문

객체가 필요한 경우 응용 프로그램이 null을 사용하려고 할 때 throw되는 Java 예외입니다.

9
자연스럽게 NullPointerException을 발생시키지 않고 명시 적으로 던지는 이유는 무엇입니까?
JDK 소스 코드를 읽을 때 작성자가 매개 변수가 null 인 경우 매개 변수를 확인한 다음 새 NullPointerException ()을 수동으로 throw하는 것이 일반적입니다. 왜 그렇게합니까? 메소드를 호출 할 때 새로운 NullPointerException ()이 발생하기 때문에 그렇게 할 필요가 없다고 생각합니다. (예를 들어 HashMap의 소스 코드는 다음과 같습니다.) public V computeIfPresent(K key, BiFunction<? …

6
Java8에서 람다를 사용하여 null이 아닌 경우에만 값 필터링
라고하는 객체 목록이 있습니다 car. Java 8을 사용하여 일부 매개 변수를 기준 으로이 목록을 필터링하고 싶습니다.하지만 매개 변수가 null이면 throw NullPointerException됩니다. null 값을 필터링하는 방법은 무엇입니까? 현재 코드는 다음과 같습니다 requiredCars = cars.stream().filter(c -> c.getName().startsWith("M")); 이 발생 NullPointerException하는 경우 getName()반환 null.

9
@Nullable 및 @Nonnull 주석을보다 효과적으로 사용하는 방법은 무엇입니까?
나는 그것을 볼 수 있습니다 @Nullable및 @Nonnull주석 수 예방에 도움이 될 NullPointerException들하지만 그들은 아주 멀리 전파되지 않습니다. 이러한 주석의 효과는 한 수준의 간접적 인 후에 완전히 사라 지므로 몇 가지만 추가하면 아주 많이 전파되지 않습니다. 이러한 주석이 제대로 적용되지 않기 때문에로 표시된 값 @Nonnull이 널이 아니라고 가정 하여 널 검사를 …


4
String.valueOf (null)이 NullPointerException을 발생시키는 이유는 무엇입니까?
설명서에 따르면이 메서드 String.valueOf(Object obj)는 다음을 반환합니다. 인수가이면 null문자열과 "null"; 그렇지 않으면의 값 obj.toString()이 반환됩니다. 그러나 이것을 시도 할 때 어떻게됩니까? System.out.println("String.valueOf(null) = " + String.valueOf(null)); 대신 NPE를 던지나요? (믿지 않으면 직접 시도하십시오!) 스레드 "main"의 예외 java.lang.NullPointerException java.lang.String. (알 수없는 소스) java.lang.String.valueOf (알 수없는 소스) 어떻게 이런 일이 일어나고 있습니까? …

19
Null 체크 체인 대 NullPointerException 잡기
웹 서비스는 거대한 XML을 반환하고 그에 대한 깊이 중첩 된 필드에 액세스해야합니다. 예를 들면 : return wsObject.getFoo().getBar().getBaz().getInt() 문제는 즉 getFoo(), getBar(),getBaz() 가) 모두 반환 될 수null . 그러나 null모든 경우에 확인하면 코드가 매우 장황 해지고 읽기 어려워집니다. 또한 일부 필드의 수표를 놓칠 수 있습니다. if (wsObject.getFoo() == null) return -1; …


5
Boolean.valueOf ()는 때때로 NullPointerException을 생성합니다.
이 코드가 있습니다. package tests; import java.util.Hashtable; public class Tests { public static void main(String[] args) { Hashtable<String, Boolean> modifiedItems = new Hashtable<String, Boolean>(); System.out.println("TEST 1"); System.out.println(modifiedItems.get("item1")); // Prints null System.out.println("TEST 2"); System.out.println(modifiedItems.get("item1") == null); // Prints true System.out.println("TEST 3"); System.out.println(Boolean.valueOf(null)); // Prints false System.out.println("TEST 4"); System.out.println(Boolean.valueOf(modifiedItems.get("item1"))); // Produces NullPointerException …

13
onCreate ()에서 뷰에 액세스하는 NullPointerException
StackOverflow에 자주 게시되는 문제에 대한 표준 질문입니다. 튜토리얼을 따르고 있습니다. 마법사를 사용하여 새 활동을 만들었습니다. 내가 얻을 NullPointerException에 메서드를 호출 할 때 View얻을의 findViewById()내 활동을 onCreate(). 활동 onCreate(): @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); View something = findViewById(R.id.something); something.setOnClickListener(new View.OnClickListener() { ... }); // NPE HERE if (savedInstanceState …


11
Eclipse / Android :“프로젝트에서 'Android Pre Compiler'빌더 실행 오류…”
Android 프로젝트에서 몇 달 동안 작업하지 않은 작업을 시도하려고 시도했지만 Eclipse 프로젝트를 빌드하려고 할 때마다 다음과 같은 대화 상자가 표시됩니다. 'Building workspace' has encountered a problem Errors occurred during the build. Errors running builder 'Android Pre Compiler' on project 'XXX' java.lang.NullPointerException Android 프로젝트 빌드 대상 4.0.3 (API 레벨 15)이있는 Mac에서 …

2
Double.parseDouble (null) 및 Integer.parseInt (null)에서 다른 예외가 발생하는 이유는 무엇입니까?
Double.parseDouble (null) 및 Integer.parseInt (null)에서 다른 예외가 발생하는 이유는 무엇입니까? 이것은 역사적 사고입니까, 의도적입니까? 문서에는에 대한 두 가지 유형의 예외 Double.parseDouble(...)와 하나에 대한 예외가 명시되어 Integer.parseInt()있지만 일관성이없는 것 같습니다. Integer.parseInt(null); // throws java.lang.NumberFormatException: null 하나 Double.parseDouble(null); // throws java.lang.NullPointerException

7
NullPointerException이 발생하지 않는 이유는 무엇입니까?
다음 코드에 대한 명확한 설명 : StringBuilder sample = new StringBuilder(); StringBuilder referToSample = sample; referToSample.append("B"); System.out.println(sample); B증명 sample과 referToSample객체가 동일한 메모리 참조를 참조하도록 인쇄됩니다 . StringBuilder sample = new StringBuilder(); StringBuilder referToSample = sample; sample.append("A"); referToSample.append("B"); System.out.println(referToSample); 이것은 AB또한 동일한 것을 증명하는 인쇄됩니다 . StringBuilder sample = new StringBuilder(); …

4
Android : 조각에 데이터 (추가) 전달
저는 Android 프로그래밍이 처음이고 Parcelable의 ArrayList를 조각에 전달하는 동안 문제가 있습니다. 이것은 feedlist 가 parcelable Music 의 ArrayList 인 시작된 (잘 작동하는!) Activity입니다 . Intent in = new Intent(context, ListMusicsActivity.class); in.putExtra("arrayMusic", feedList); activity.startActivity(in); 조각 활동 onCreate () 메서드 : @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activitymusiclist); if(savedInstanceState != null) …


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.