[JAVA] 배열

Coastby·2022년 9월 21일
0

LIKELION Back-End School

목록 보기
6/61

○ 배열 선언

  • 배열 선언은 메모리 할당
    • 배열 선언 시 메모리에는 배열 값의 첫번째 주소가 들어간다.
    • 배열 값들은 연속된 공간에 할당된다.

  • 배열 선언 방법
    • 첫 번째 방법

      int[] S = new int[10];
    • 두 번째 방법

      int[] scores = {65, 74, 23, 75, 68, 96, 88, 98, 54};

○ 반복문 & 배열 연습

  • 1) 1000개 배열 만들고 1부터 1000까지 넣기 2) 배열 안의 값들 합구하기
    • foreach + ctrl + space : foreach 구문 자동 완성
//1) 배열 생성
int[] arr = new int[1000];

//1~1000까지 넣기		
for(int i=0; i < arr.length; i++) {
	arr[i] = i+1;
}

//2) 배열 값들 합 구하기
int sum = 0;
for (int num : arr) {
	sum += num;
}

//출력
System.out.println(sum);

//result
500500
  • 배열 랜덤 수 10개 넣고 최대값 구하기
    • 1~100 랜덤 수 : int num = (int) (Math.random()*100) + 1; (1을 더해줘야 한다. 안 더하면 0~99로 나온다)
    • 배열 arr 값을 전부 보고싶을 때 Arrays.*toString*(arr)
int[] arr = new int[10];
		
for (int i = 0; i < arr.length; i++) {
	int num = (int) (Math.random()*100) + 1;
	arr[i] = num;
}
System.out.println(Arrays.toString(arr));

int max = 0;
for (int num : arr) {
	
	max = (num > max) ? num : max;
	
}
System.out.println(max);
  • 로또 번호 뽑기 : 1부터 45까지 숫자 중 6개 번호 (단, 중복없이)

    • 1~45 사이 난수 생성 및 배열에 입력

    • 중복 제거하기

      int[] arrLotto = new int[6];
      
      for (int i = 0; i < arrLotto.lenghth; i++) {
      
      	arrLotto[i] = (int) (Math.random() * 45) + 1;
      
      	for (int j=0; j < i; j++) {
      		if (arrLotto[i] == arrLotto[j])
      			i--;
      	}
      
      }
profile
훈이야 화이팅

0개의 댓글