상수와 형변환 (Casting) _송진우
상수
‘final’ 선언 , 변수에 값을 딱 한번만 할당 할 수 있는 것
•
상수 예제
class Constants{
public static void main(String[] args) {
final int MAX_SIZE = 100;
final char CONST_CHAR = '상'; // final 선언을 통해 CONST_CHAR에 값 할당
final int CONST_ASSIGNED; // 선언 후 할당 X
CONST_ASSIGNED = 12; // 할당하지 않았던 상수의 값 할당
System.out.println("상수1 : " + MAX_SIZE);
System.out.println("상수2 : " + CONST_CHAR);
System.out.println("상수3 : " + CONST_ASSIGNED);
Java
복사
◦
final 선언 후, 할당하지 않은 값은 추후에 할당 가능 (1번만)
리터널의 개념
변수에 넣는 변하지 않는 데이터 & 상수라는 표현 대신 사용 가능
•
예시
Int num = 10
Java
복사
◦
num : 변수
◦
10 : 리터널
형변환(Casting)
•
컴퓨터 연산 시, Data type을 맞춰야 됨
◦
연산 진행 시, 피 연산자들의 자료형이 일치해야 한다.
▪
피 연산자란?
연산의 대상을 말한다. (+, -, x, /, % 는 연산자)
◦
Int + Long : Long 으로 형변환
자동 형변환
•
자료형의 크기가 큰 방향으로 자동으로 형변환
•
정수보다는 실수형으로 변환된다. (소수점 보전)
byte < short < int < long < float < double
명시적(강제) 형변환
•
개발자가 강제로 형변환 시키는 것
•
예시
double pi = 3.1415;
int wholeNumber = (int)pi; // pi가 double로 선언 됐지만 int형으로 강제 형변환
Java
복사
연산자_주찬민
반복문(성현식)
while 문
Do while 문
for 문
continue & break
배열(Array)_장진선
배열
•
동일한 자료형의 데이터를 연속된 공간에 저장하기 위한 자료구조.
배열 선언 방법
1. 자료형[] 변수명 = new 자료형[배열 크기];
예) int[] array = new int[100];
2. 자료형[] 변수 = {데이터1, 데이터2, …};
예) int[] array = {10, 20, 30, …}
사용 이유
- 변수의 선언을 줄여줌.
- 반복문과 함께 사용하여 과정을 간단하게 처리 가능.
문제
크기가 1000인 배열을 만들고 값을 넣어 배열 전체 합을 구하시오.
int[] arr = new int[1000]; // 배열크기 1000
// 각 방마다 값 넣기
for(int i = 1; i <= 1000; i++) {
arr[i] = i;
}
int sum = 0; // 전체 합 0으로 초기화
// 반복문 통해 전체 합하기
for(int n : arr) {
sum += n;
}
System.out.println(sum);
Java
복사
크기가 10인 배열에 랜덤으로 정수를 넣고 최댓값을 구하시오.
int[] array = new int[10]; // 배열크기 10
int max=0; // 최대값 초기화
// 배열의 길이만큼 반복
for(int i=0; i<array.length; i++) {
array[i]=(int)(Math.random()*100) +1; // 랜덤함수 사용
// 최댓값 비교
for(int num : array) {
if(num > max)
max = num;
}
System.out.println("최대: " + max);
Java
복사
1부터 45까지의 숫자를 크기가 6인 배열에 랜덤으로 넣어 출력하시오. (단, 중복x)
int[] arrLotto = new int[6]; // 배열크기 6
// 배열의 길이만큼 반복
for(int i=0; i<arrLotto.length; i++) {
arrLotto[i] = (int)((Math.random()*45) +1); // 랜덤함수사용
// 중복값 제거
for(int j=0; j<i; j++) {
if(arrLotto[i] == arrLotto[j]) {
i--;
}
}
}
System.out.println(Arrays.toString(arrLotto));
Java
복사
수업 Tip 
과제
Mini Project: 숫자 추측 게임 & 별 출력
찬민 풀이
현식 풀이
현석 풀이
진우 풀이
상희 풀이
진선 풀이