일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 자바 백준 팩토리얼 개수
- 백준 1504 java
- java 1238
- javav 1676
- 전략 패턴이란
- java 팩토리얼 개수
- Spring ipfs
- 익명 객체 @transactional
- java 1509
- 안정해시
- rabbitmq 싱글톤
- 백준 특정한 최단 경로
- nodejs rabbitmq
- 백준 연결요소 자바
- mongodb lookup
- Java Call By Refernce
- kotiln const
- java 파티
- spring mongoTemplate switch
- 자바 1676
- go
- spring mongodb switch
- 백준 2252 줄세우기
- ipfs singletone
- ipfs bean
- spring mongodb
- kotiln const val
- kotiln functional interface
- spring mongoTemplate
- java 백준 1509
Archives
- Today
- Total
공부 흔적남기기
java ArrayList.contains 헷갈리는 부분 본문
728x90
반응형
ArrayList의 contains는 자주 사용하는 문법인데 헷갈리는게 있어서 정리하려고한다
String string = "abc"; //리터럴 방식
arrayList.add(string);
String string2 = "abc"; //리터럴 방식
String string3 = "abc"; //리터럴 방식
System.out.println(string ==string2);
System.out.println(string ==string3);
System.out.println(string2 ==string3);
System.out.println(string.equals(string2));
System.out.println(arrayList.contains(string2));
System.out.println(arrayList.contains("abc"));
/*
true
true
true
true
true
true
*/
리터럴 방식으로 했을 떄는 모두 같은 주소를 가르켜 모두 다 같은 값
ArrayList<String> arrayList = new ArrayList<>();
String string = new String("abc");
arrayList.add(string);
String string2 = new String("abc");
String string3 = new String("abc");
System.out.println(string ==string2);
System.out.println(string ==string3);
System.out.println(string2 ==string3);
System.out.println(string.equals(string2));
System.out.println(arrayList.contains(string2));
System.out.println(arrayList.contains(string3));
System.out.println(arrayList.contains("abc"));
/*
false
false
false
true
true
true
true
*/
서로다른 개체이므로 false 지만
ArrayList.contains()에서는 객체로 비교하는 것이 아니라 값으로 비교하는 것을 알 수 있다!
cf). HashMap의 containsKey나 다른 contain들도 값을 기준으로 여부를 확인하는 것 같다!
728x90
반응형
'프로그래밍 언어 > Java' 카테고리의 다른 글
JAVA 자바 프로세스와 쓰레드 (0) | 2023.05.16 |
---|---|
JAVA 자바 기본적인 배경지식 (0) | 2023.05.09 |
java string 문자열 뒤집기 reverse하기 (0) | 2022.01.15 |
java string.replace (0) | 2022.01.15 |
java string.split의 기능 (0) | 2022.01.15 |