본문 바로가기
개발관련

자바 꽉자바! : (3)배열의 예시와 연습

by 수바니 2023. 11. 24.

오늘은 배열의 예시에 대해서 공부해볼거에요 !

오늘은 예시를 공부해볼게요!

배열에 더 가까워지고 싶다면 이전의 게시글을 참고해주세요!!

 

예시1. 배열을 만들어 1~10까지 값 대입하기 

public void practice1() {
		// 배열 선언
		int[] arr = new int[10];
		
		// 값 대입
		for(int i=0; i<arr.length; i++) {
			arr[i] = i+1;
		}
		// 배열 출력
		for(int i =0; i<arr.length; i++) {
			System.out.print(arr[i] + " " );
		}

	}

콘솔창 확인

아주 기본적인 예시부터 차근차근 해볼게요 !

배열을 선언해주고 그 인덱스에 맞게 값을 대입해줘요!

그리고 배열을 출력하려면 for문을 돌려야겠죠 ? 

 

예시2. 배열을 선언하여 1~10까지 역순으로 값 대입하기

public void practice2() {
		// 배열선언
		int[] arr = new int[10];
	
		// 값 대입(역순)
		for(int i=0; i<arr.length; i++) {
			arr[i] = 10-i;
			System.out.print(arr[i] + " "); // 배열 출력(똑바로)
		}
		
	}

콘솔창 확인

이번엔 역순으로 값을 대입하고 출력해보았어요 !

여기까지 매우 쉽죠 ??

 

예시3. 정수를 입력받아 배열 생성하기

public void practice3() {
		Scanner sc = new Scanner(System.in);
		System.out.print("양의정수 : ");
		int num = sc.nextInt();
		int[] arr = new int[num];
	
		
		for(int i=0; i<arr.length; i++) {
			arr[i] = i+1  ;
			System.out.print(arr[i] + " ");
		}
	}

콘솔창 확인

1. 양의정수를 입력받는다.

입력받기 => Scanner 활용

2. 입력받은 정수는 배열의 크기가 된다.

3. for문은 배열에 값을 대입시켜줌 그리고 출력하여 확인하기

arr[0] = 0 +1 ;

arr[1] = 1 + 1;

arr[2] = 2 + 1;

따라서 배열은

arr[i] = 1 2 3

 

예시4. 해당과일일때만 출력하기

public void practice4() {

		String[] fruits = {"사과", "귤","포도", "복숭아", "참외"};
		for(int i=0; i<fruits.length; i++) {
			if(fruits[i].equals("귤")){
				System.out.println(fruits[i]);
			}
			
		}

1. 배열을 생성하고 값을 대입하였다.

2. 따라서  fruits의 배열에는 사과 귤 포도 복숭아 참외 값이 들어있음.

3. fruits[i].equals("귤")

 fruits의 배열중에 귤이라는게 있으면

출력해라!!

fruits[i] == " 귤 " XXXXX

안된다. equals() 메소드를 반드시 사용해야한다.

== 는 비교를 의한 연산자

 equals() 메소드는 객체끼리 내용 비교이다.

 

예시4_1. 찾는 과일을 입력받고, 그 과일에 해당하는 인덱스 값을 출력해보자.

public void practice4_1() {
		
		Scanner sc = new Scanner(System.in);
		System.out.print("찾으시는 과일을 말해주세요 : ");
		String fruit = sc.nextLine();
		String[] fruits = {"사과", "귤","포도", "복숭아", "참외"};
		
		int index = -1; // 초기화
		
		for(int i=0; i<fruits.length; i++) {
			if(fruits[i].equals(fruit)) {
				index = i;
			}
		}
		if(index != -1 ) {
			System.out.println("찾으시는 과일 " + fruit + "의 인덱스 번호는 " + index + " 입니다.");
		} else {
			System.out.println("찾으시는 과일 " + fruit + "은 없습니다.");
		}
		
		}

배열에 있는것을 입력하였을때의 콘솔창

 

배열에 해당하지 않는 값을 넣었을때의 콘솔창

.

예시5. 문자열을 입력받고 찾으려고하는 문자를 입력한후 해당 인덱스 값 을 출력해보자.

public void practice5() {
      Scanner sc = new Scanner(System.in);

      System.out.print("문자열 : ");
      String str = sc.nextLine();

      char[] str1 = new char[str.length()];

      for (int i = 0; i < str1.length; i++) {
         str1[i] = str.charAt(i);
      }

      System.out.print("문자 : ");
      char ch = sc.nextLine().charAt(0);

      int count = 0;
      System.out.print(str + "에 " + ch + "가 존재하는 위치(인덱스) : "); // 분리해야함.
      for (int i = 0; i < str1.length; i++) {
         if(str1[i] == ch) {
            System.out.print(i + " ");
            count++;
         }
      }
      System.out.println();
      System.out.println(ch + " 개수 : " + count);
      /*
      for (int i = 0; i < str1.length; i++) {
         if (ch == str1[i]) {
            System.out.println(str + "에 " + ch + "가 존재하는 위치(인덱스) : " + i + " ");
            count++;
         }
      }
      */
      sc.close();
   }

 

콘솔창