하나씩 비교해가며 원하는 값을 찾아내는 방법을 말한다
예제로 쉽게 알아 보자
1~10중에 5개의 정수를 저장
그 중 2를 찾아내어 있다면 "찾았다", 2의 위치를 출력
import java.util.Random;
public class Test06 {
public static void main(String[] args) {
Random rand=new Random();
int [] datas=new int [5];
for(int i=0;i<datas.length;i++) {
datas[i]=rand.nextInt(10)+1;
}
for(int data:datas) {
System.out.println(data+ " ");
}
System.out.println();
int key=2;//우리가 찾을 정수
int keyIndex=-1;//우리가 찾을 정수가 존재하는 위치.index
//검색시 초기화값은 "대상의 범위가 아닌값" 으로 해야합니다
for(int i=0;i<datas.length;i++) {
if(key==datas[i]) {
keyIndex=i;
System.out.println("찾았다!");
break;//찾았으면 즉시 종료
}
}
//System.out.println("찾는 값 "+key+"는 ["+keyIndex+"]에 있습니다");
//조건 없이 사용하면 안되는 이유(오류이유) :
//keyIndex 존재하지 않을수도 있기 떄문이다(초기화가 안되어있다)
if(keyIndex>=0) {
System.out.println("찾는 값 "+key+"는 ["+keyIndex+"]에 있습니다");
}
else {
System.out.println(key+"은 없습니다..");
}
}
}
'JAVA > 개념정리' 카테고리의 다른 글
삽입정렬 - 디버깅표 (1) | 2023.11.28 |
---|---|
버블 정렬 (0) | 2023.11.27 |
Class(객체 생성) (0) | 2023.11.23 |
배열 (0) | 2023.11.23 |
중첩 반복문 (1) | 2023.11.22 |