티스토리 뷰
자주 사용하지만, 잘못된 습관으로 인해 NullPointException이 발생할 수 있는 equals 함수를 알아보자. 생각보다 많은 개발자들이 대수롭지 않게 잘못된 습관으로 코딩을 한다.
// 안좋은 예
if ("변수".equals("상수")) {
...
}
위의 경우 변수에 값이 null이 들어올 경우 NullPointException이 발생한다.
// 좋은 예
if ("상수".equals("변수")) {
...
}
위의 경우 equals함수에서 null에 대한 체크를 하기 때문에 NullPointExecption이 발생하지 않는다.
변수에 null이 들어오지 않는다고 확신하지 말고 코딩 습관을 방어적 코딩으로 습관을 하는 것이 좋지 않을까? 생각한다.
public class NullEquals {
public static void main(String[] args) {
String str = null;
if (null == str) {
System.out.println("null");
}
if (str == null) {
System.out.println("null-2");
}
if ("str".equals(str)) {
System.out.println("equals-1");
}
if (str.equals("str")) {
System.out.println("equals-2");
}
}
}
'프로그래밍 > Back end' 카테고리의 다른 글
[Back end] Java 주소 정보 가져오기 (0) | 2020.02.24 |
---|---|
[Back end] Spring IE 파일 업로드 getOriginalFile() (0) | 2020.02.20 |
[Back end] Error parsing HTTP request header 에러 (Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986) (0) | 2020.02.15 |
[Back end] Spring Boot 에러 핸들러 설정 (0) | 2020.02.15 |
[Back end] Interceptor API 여부 검증 (0) | 2020.02.12 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
링크
TAG
- React
- javascript
- 제주도 여행
- Linux 명령어
- sort algorithm
- 오라클
- Java
- 오라클 내장 함수
- 리액트
- 회고
- 개발환경
- Tomcat
- Collection
- 자바
- 제주도 3박4일 일정
- 리눅스 명령어
- effective java
- 리액트 16
- 이직
- 정렬 알고리즘
- SQL
- 성능분석
- Maven
- 자바스크립트
- 프로그래머
- 프로그래머스
- Eclipse
- spring
- 경력관리
- 소프트웨어공학
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함