[JAVA]배열

Hyeok·2022년 12월 8일
0

JAVA

목록 보기
10/10
post-thumbnail

🔎오늘의 목표

  1. 배열이란?
  2. 배열의 인덱스 and 길이
  3. 배열의 활용

1.🔎배열이란?

배열이란 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것을 배열(Array)라고한다. 많은 양의 데이터를 저장하기 위해, 그 데이터의 숫자만큼 변수를 선언해야 한다면 매우 복잡하기 때문에 그것을 손쉽게 다룰려면
배열을 사용하면 된다.

1-1

배열에서 중요한 점은 '같은 타입'이여야 한다. 서로 다른 타입의 변수들로 구성된 배열은 만들 수 없다.

  • int score1 , int score2 , int socre3 ....... ; 있다고 가정해보자

항상 이렇게 하나씩 입력할 수 없기 때문에 같은 타입의 배열을 선언하면된다.
선언방법은 생각보다 간단하다.

타입[ ] 변수이름; ex> int[ ] score; && String[ ] name;

이런식으로 선언하면된다. 1-1에서 사용한 예시로 말하면

int[ ] score = new int[5]라고 가정했을 때
socre[0]~score[4] 까지 저장공간이 생긴다.
score[1]~[5]가 아님을 주의하자! 인덱스 번호는 0부터 시작한다.

2.🔎배열의 인덱스 and 길이(length)

앞에서 설명했지만 인덱스와 길이(length)에 대해 좀 더 알아보자
인덱스(index)는 배열의 요소마다 붙여진 일련번호로 각 요소를 구별하는데 사용된다 쉽게 생각하면 저장공간이라고 생각하면 된다.

2-1

  • 자바에서는 '배열이름.length'를 통해서 배열의 길이에 대한 정보를 얻을 수 있다. 아래의 코드를 잘 봐보자!

	int[] socre = new int[6];
    for (int i = 0; i<5; i++){
    	System.out.println(score[i]); // 에러 발생  배열의 길이가 다르기 때문에
        
    > int[] score = new int[6];
    for(int i=0; i<score.length; i++){ // 이러면 조건식 변경을 안해도 된다.
    	System.out.println(socre[i]);
    
    
    
    > 출력 
    0
   	0
    0
    0
    0
    0 
    // 값이 따로 지정된게 없기때문에 0이 6번 출력된다.

3.🔎배열의 활용(1)

  • 총합과 평균

	//배열을 이용하여 총합과 평균을 구하는 식을 만들어보자
   
   class Ex5 {
   	 public static void main(Sting[] args) {
	
    int sum = 0;
    float average = 0f;
    
    int[] score = {100,70,90,100,80};
    
    for(int i =0; i<score.length; i++) {
    
 		sum += score[i];
    }
    
    average = sum / (float)score.length;
    
    System.out.println("총합: " + sum );
 	System.out.println("평균: " + average);
    
    // 결과 
    총합:440
    평균:88.0
    
    // 이런식으로 배열을 이용하여 총합과 평균을 구하는 코드를 작성할 수 있다.
    
    }
    
  }

3.배열의 활용(2)

  • 최대값과 최솟값


class Ex5_2 { 
	public static void main(String[] args) {
	
    int[] score = {100, 20, 30 ,40 ,50, 66, 99, 95};
    
    int max = score[0];
    int min = score[0];
    
    
    for(int i= 1; i<score.length; i++){
    	if(score[i] > max) {
        	max = score[i];
       } else if(score[i] < min) {
      		min = score[i];
      }
      
   }
   
   System.out.println("최대값:" +max);
   System.out.println("최소값:" +min);
   
   
   }
}

	// 결과 
    최대값:100 
    최소값:20
profile
안녕하세요.

0개의 댓글

관련 채용 정보