배열
배열이란
•
연관된 데이터들을 하나에 변수에 관리하기 위한 자료형이다
배열을 사용하는 이유
•
하나의 변수에 관련된 데이터들을 묶어서 관리하기가 쉽다
•
각 배열에는 다음번호의 배열의 주소들이 들어있기때문에 검색이 빠르다
•
변수를 많이 선언할 필요가 없어 코드작성이 깔끔해진다
배열 선언 방법
자료형[] 변수명 = new 자료형[배열의 크기];
int[] arr = new int[3];
자료형[] 변수명 = {데이터1, 데이터2, 데이터3 …..};
int[] arr2 = {1, 2, 3, 4};
Java
복사
배열은 a[0]부터 시작한다 그러므로 만약 크기가 10인 배열 a를 선언하면
a[0], a[1], a[2], a[3] ….. a[9]가 되게 된다
배열 관련 함수
•
array.length : 배열의 길이를 구해준다
•
for each문 : for문보다 간단하게 배열을 순회할 수 있다
for((데이터의 자료형) [변수명] : {배열명})
•
Arrays.toString(배열) : 배열을 문자열의 형태로 반환해 준다
•
Arrays.sort(배열) : 배열을 오름차순으로 정렬해준다
2차원 배열
1차원이었던 배열을 2차원으로 확장한 배열이다
선언 방법
자료형[][] 변수명 = new 자료형[행의 개수][열의 개수]
int[][] arr = new int[3][4]
Java
복사
쉽게 아파트라고 생각해보자
첫번째 대괄호는 층수이고, 두번째 대괄호는 호수이다
즉 arr[0][3]은 0층 3호실이다. 또 arr[2][4]는 2층 4호실이라고 생각하자
Math.random
이름처럼 랜덤으로 0.0이상 1.0미만 사이의 double형 값을 반환한다
이 점을 이용해 원하는 범위의 수를 랜덤으로 뽑는게 가능하다
•
1~100사이의 수
int rNum = (int)(Math.random() * 100) + 1
Java
복사
•
로또번호 수
int lotto = (int)(Math.random() * 45) + 1
Java
복사
여기서 앞에 int로 형변환을 하는 이유는
random함수가 double형이기 때문에 int형으로 강제 형변환을 시켜줘야한다
또 뒤에 1을 붙이는 이유는 random함수가 0.0부터 시작해서
0이 나올수 있기때문에 1을 더해주는 것이다.