///////
Search
📒

이소영_220921

상수와 형변환 (Casting)

상수의 표기법

앞에 키워드 final이 붙음
상수명은 반드시 모두 대문자로 이루어지며, 스네이크 표기법을 사용
표기법
final 자료형 변수명 =;
Java
복사

리터럴의 개념

int num = 10;
Java
복사
위의 코드에서 num은 변수명, 10은 리터럴
10도 하나의 상수이지만, 별도로 변수를 생성하지 않아도 int형 메모리에 저장이 됨
글자 그대로 의미가 있고 변하지 않는 데이터
상수라는 표현으로 대신 해도 좋음

형변환 (Casting)

형변환이란?

컴퓨터가 이해할 수 있도록 연산시 데이터 타입을 맞추어야 함
컴퓨터는 이진수만 이해하기 때문
두 피연산자의 자료형이 동일해야 연산이 가능
두 피연산자의 자료형이 다른 경우 두 개의 자료형 중 하나의 자료형으로 자동으로 맞추어 연산을 진행 형변환

형변환의 유형

자동 형변환
명시적(강제) 형변환
반복문

while과 do while의 차이

while문은 조건식을 만족하지 못하면 한 번도 실행되지 않을 수 있음
do while문은 무조건 한 번은 실행됨 (한 번 실행 후 조건문 체크)

20220921 과제

숫자를 입력받아 트리 모양으로 별 찍기 (1 3 5 7 9…)
mini project 숫자 추측 게임 프로그래밍
(1~100사이의 숫자를 랜덤으로 정한 후, 10번 시도 내에 숫자를 맞추면 “축하합니다.” 아니면
“실패했습니다.” 출력)
배열

로또 프로그램

내가 작성한 코드
import java.util.Arrays; public class Lotto { public static void main(String[] args) { int[] lotto = new int[6]; boolean[] check = new boolean[46]; // 1~45까지 체크 (0인덱스는 이용X) for (int i = 0; i < lotto.length; i++) { int num = (int) (Math.random() * 45) + 1; if (!check[num]) { // 이전에 나오지 않은 수라면 lotto[i] = num; // 로또 번호 배열에 담기 check[num] = true; // 이미 나온 숫자임을 체크 } } // 로또 번호 배열 출력 System.out.println(Arrays.toString(lotto)); } }
Java
복사
강사님이 작성해주신 코드 (권장)
import java.util.Arrays; public class Lotto { public static void main(String[] args) { int[] arrLotto = new int[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
복사