본문 바로가기
개발 공부 Today I Learned

[국비 8일차 TIL] JAVA 기초 변수, 타입, 조건문, 반복문

by 개발자신입 2023. 11. 30.
반응형

JAVA 기초

- JDK란?

JAVA DEVELOPMENT KIT, 자바 애플리케이션을 개발하기 위한 도구들을 포함하는 패키지

 

- JRE란?

Java Runtime Environment, 자바 애플리케이션을 실행하기 위한 환경을 제공

 

- JVM란?

자바 가상 머신(Java Virtual Machine)의 약자

 

- 컴파일한다는 것의 의미는?  

프로그래밍 언어로 작성된 소스 코드를 기계어 또는 바이트코드로 변환하는 과정 JAVAC

 

- JAVAC로 컴파일 한 class파일 = 바이트코드 파일

 ㅇ

- 자바의 바이트코드가 운영체제에 독립적으로 실행될 수 있는 이유?

Java의 중간 단계 컴파일과 Java 가상 머신(JVM)의 역할 때문.

 

- 자바를 설치할 때 경로(path)를 설정하는 이유?

컴퓨터가 자바 실행 파일들을 어디에서든 찾을 수 있도록 하기 위함

 

- .dll 확장자 (Dynamic Link Library)

 

- LTS (Long-term Support)


 

[변수 variable]

- 변수의 유효 범위 = Scope 중괄호 안의 변수를 중괄호 밖에서 사용 불가

 

- 변수 이름 작성 규칙

  • 첫 번째 글자는 문자이거나 '$', '_'이어야 하고, 숫자로는 시작 불가
  • 영어 대소문자를 구분 (필수!)
  • 첫 문자는 영어 소문자로 시작, 다른 단어가 붙을 경우 붙는 단어의 첫 문자를 대문자로.
  • 문자 수의 제한은 없음
  • 자바 예약어는 사용 불가

 

- 변수 이름 작성 시에는 변수가 어떤 값을 저장하고 있는지 쉽게 알 수 있도록 의미 있는 이름을 지어주는 것이 좋음

한글보다는 영어로.

 

- 로컬 변수 (local variable) : 메소드 블록 내에서 선언된 변수

 

[기본 타입]

 - 정수 : byte(1), short(2), int(4), long(8)

- 실수 : float(4), double(8)

- 논리 : boolean (true, false)

 

- byte (-128 ~ 127)

- char (2byte)

- String 타입 문자열 : 큰 따옴표(")로 감싼 문자들

- 이스케이프 문자 : 역 슬래시(\)

  • \t       탭만큼 띄움
  • \n     줄 바꿈
  • \"      "출력
  • \\      \출력

 

[타입 변환]

 - 자동 타입 변환

자동으로 타입 변환이 일어나는 것

- byte < short < int < long < float < double

 

- 강제 타입 변환

큰 허용 범위 타입을 작은 허용 범위 타입으로 강제로 나눠서 저장

 

- 문자열을 기본 타입으로 강제 전환

 

- 문자열을 정수 int 타입으로 변환

  • String -> int    =   int value = Integer.parseInt(str);

 

- 문자열을 실수 double 타입으로 전환

  • String -> double    =    double value = Double.parseDouble(str);

 

[변수와 시스템 입출력] (IO : Input Output)

- 아스키코드 ASCII (American Standard Code) -> 유니코드

 

- 기본 타입의 값이 동일한지 비교할 때 == 사용

- 문자열(String)이 동일한지 비교할 때 equals() 사용

 

- Scanner scanner = new Scanner(System.in);

 

[연산자]

 - 삼항 연산자 (?:)         

  • (조건식) ? A : B;
  •  조건이 true면 A 산출, false면 B 산출

 

[조건문 if]

 - if

조건식이 true가 되면 중괄호 내부를 실행.

 

- if-else

조건식이 true if문의 블록 실행, 조건식이 false else블록 실행

System.out.println("점수를 입력하세요 : ");                 

Scanner scanner = new Scanner(System.in);                      

int score = scanner.nextInt();                  
if(score > 80) {
System.out.println("합격 축하드려요");
} else {
System.out.println("아쉽지만 탈락입니당");
}

 

 

- 로또 번호 뽑기

int num = (int) (Math.random() * 45) + 1 ;

 

- Math.random() : 0 1 사이의 수

 

[조건문 switch]

 - switch

case를 실행. case 끝에는 break;를 넣어줘야 함.

 

 

int number = (int) (Math.random() * 6) + 1;                   

Scanner scanner = new Scanner(System.in);

switch(number) {
case 1:
System.out.println("1입니다.");
break;

case 2:
System.out.println("2입니다.");
break;

case 3:
System.out.println("3입니다.");
break;

case 4:
System.out.println("4입니다.");
break;

case 5:
System.out.println("5입니다.");
break;

case 6:
System.out.println("6입니다.");
break;
}

 

[반복문 for]

 

- for

반복 횟수를 알고 있을 때 주로 사용

 

int sum = 0;

for (int i=1; i <= 100;, i++){
    sum = sum + i;
}

System.out.println("1~100의 합 : " + sum);

 

 

 [반복문  중첩 for]

 

for (int m=2; m<=9; m++) {
System.out.println("*** " + m +"단 ***");
	for (int n=1; n<=9; n++) {
	System.out.println(m + " x " + n + " = " + (m*n));
}

 

 

 - while

조건에 따라 반복할 때 사용

 

 

 

반응형

댓글