Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 다형성
- int와 integer
- 리액트
- dart
- 삼항연산자
- git
- 네임드생성자
- js
- 콘솔게임
- 자바
- 생성자
- Middleware
- 추상클래스
- Spring
- Oracle
- Pug
- Sort()
- push함수
- qqOperater
- mybatis
- 자바스크립트
- 배열
- React
- java
- 깃허브
- Node.js
- DB
- 코딩테스트
- app.use
- 오류
Archives
- Today
- Total
평행코드
Iterator , 동등성비교(equals @Override) 본문
Iterator : 컬렉션에 저장된 요소를 접근하는데 사용되는 인터페이스
iterator() 메소드는 List와 Set 계열에서만 사용할 수 있다
* Map의 경우 Set 또는 List화 시켜서 iterator()를 사용해야 함
Set entry = fruits.entrySet(); // fruits의 데이터를 set화 시켜서 entry에 저장
Iterator it = entry.iterator(); // 저장된 데이터에 접근하는데 사용되는 인터페이스 Iterator로 데이터를 가져오기
가격이 20000원 이상인 과일만 key와 value출력
while(it.hasNext()) {
Map.Entry f = (Map.Entry)it.next();
Fruit fruit = (Fruit)f.getValue();
// value에서 가격을 가져와야하니까 (Fruit)로 형변환을 해줌
if(fruit.getPrice()>=20000) {
System.out.println(f.getKey() + " " + f.getValue());
}
}
@Override // 동등성비교의 기준잡기
public boolean equals(Object o) { // o는 들어온값 입력받은값
if(o instanceof Fruit) { // o가 Fruit기반으로 만들어진것인가?
Fruit f =(Fruit)o; // 참이면 o를 (Fruit)로 형변환
if(this.name.equals(f.name) // 기존의값과 입력받은값이 동일한지 검사
&&this.origin.equals(f.origin)
&&this.count==f.count
&&this.price==f.price) {
return true; // 모두 같으면 true
}
}
return false;
}
'Java' 카테고리의 다른 글
입출력(IO) 스트림 (0) | 2023.10.03 |
---|---|
자주쓰는 Exception (0) | 2023.09.21 |
다형성 추상클래스와 인터페이스 (0) | 2023.09.17 |
오버라이딩과 오버로딩 (0) | 2023.09.13 |
상속이란? 그리고 super (0) | 2023.09.12 |