Java/Java

Java 1 (기초, 변수, 연산자,)

code2772 2022. 10. 3. 00:12
728x90
반응형

1. JVM(자바 가상 머신)

- 여러 운영체제에서 동일한 실행 결과가 나오도록 설계

소스코드 -> 컴파일러 -> Byte code -> 실행 // source(코드), out(결과)

//sout; 출력메소드

//메인메소드 : 시작하는 시작점 프로그램에서 메인 메소든는 1개만 존재

// 별도의 프로그램이라고 생각하면 메인 메소드도 여러개 존재할 수 있다.

2. 자바의 소스코드

- 파일명과 class명은 동일해야 함

- 대소문자가 명확히 구별해야 함

- 문장의 끝은 ;(세미콜론)을 붙여야 함

3. 문장의 출력

- System.out.println() : 한 줄에 값을 출력한 후, \n을 붙이지 않아도 알아서 줄 바꿈이 됨

- System.out.print() : 한 줄에 값을 출력후, \n에 의해서 다음줄에 값을 출력함

4. 주석문

 

- // : // 부터 라인 끝까지 주석으로 처리

- /* 내용 */ : /*와 */ 사이에 있는 모든 범위를 주석으로 처리

- /** */ : 자바클래스나 인터페이스, 생성자, 메서드등을 설명할 때 사용

//cpu : 컴퓨터의 뇌 , 그래픽카드, RAM : 메모리, 임시 기억장치(휘발성)

5. 변수(Variable)

- 하나의 값을 저장할 수 있는 메모리 공간

- 변수를 선언하는 방법

데이터타입 변수이름;

int a;

- 데이터 타입(기본) -> stack에 들어간다.

정수 : byte(1Byte,8Bit, -128 ~ 127), short(2Byte, -32768 ~ 32767)

, int(4Byte, 약 -21억 ~ 21억), long(8Byte) -> 은행프로그램과 같이 많으 수를 사용하는 경우 사용

실수 : float(4Byte, 소숫점 6자리까지라고 생각), double(8Byte) -> double이 더 많이 사용

문자 : char(2Byte)

논리 : boolean(1Byte -> true, false) -> Java에서는 참(1) 거짓(0)을 판단하는 논리형 예약어(키워드)이다.

// String : String은 자료 타입이 아닌 개발자가 선언한 Class이다.

// 5가지 영역 : Method, Heap, Stack, pc register , Native Method Stack

- 변수 이름 작성 방법

1. 첫 글자는 문자 또는 "$", "_"를 사용해야 한다.

apple. $apple, _apple

2. 첫 글자를 숫자로 시작할 수 없음

1apple(x) -> 정수로 인식하기 때문이다. 왼쪽에서 오른쪽으로 읽는데 기계가 숫자를 인식하여 정수로 판단

3. 대소문자를 구별

apple 변수와 Apple는 서로 다르다.

4. 문자수의 길이 제한은 없다.

abcdefghij~~ = 10;

5. 예약어는 사용할 수 없음

true, false, if, while, for...

6. 첫 글자는 소문자로 시작, 다른 단어가 붙을 경우 첫 글자는 대문자로 함(권장)

myscore(비권장) -> myScore(권장) / 다른 개발자가 변수를 더 쉽게알기 위해 (약속)

- 변수의 초기화

int a;

a= 10;//변수에 처음 값을 넣는것을 초기화라고 한다.

- 변수의 선언 및 초기화

데이터타입 변수이름 = 값;

int a = 10;

- 변수의 재대입

변수이름 = 값;

int a = 10;

system.out.println(a) // 10 -> a는 메모리 주소이다.

a = 5; -> 우측에 있는 5 를 a에 대입한다, 같다고 생각하지 말자

system.out.println(a) // 5

// ctrl alt l - 줄 정렬

// file -> refector -> rename

// Ctrl + Shift + F12 : 편집기(Editor) 영역을 최대로 크기로 토글

// Ctrl + Shift + U : 대/소문자 변경

6. 연산자(Operator)

- 프로그램에서 데이터를 처리하여 결과를 산출

- 연산에 사용되는 표시나 기호

- 산술 연산자

(+,-,*,/,%)

- 비교 연산자(결과는 boolean)

(<,>,<=,>=,==,!=) -> = 은 항상 오른쪽, = 대입 , == 같다

- 증감 연산자

변수의 값을 1증가 시키거나 1감소 시키는 연산자

++변수 : 다른 연산을 수행하기 전에 값을 1증가시킴(--)

변수++ : 다른 연산을 먼저 수행한 후 값을 1증가시킴(--)

int a = 1;

++a// a = 2

System.out.println(a) // 2

int a = 1;

a++// a = 2

System.out.println(a) // 2

int x = 1;

int result = ++x; // result ,x =2

int x = 1;

int result = x++; // result = 1 ,x =2

- 대입 연산자

값을 변수에 저장해주는 연산자

=, +=, -=, *=, /=, %=

int num = 10;

num += 1; -> num = num + 1; -> 10 + 1 = 11 = num

- 논리 연산자

&&(AND)모두 1이어야한다, ||(OR)하나라도 1, ^(헷-XOR)서로 달라야한다., !

AND 연산

boolean && boolean

A && B R

1 1 1

0 1 0

1 0 0

0 0 0

OR 연산

예) 주민등록번호 성별 -> 1또는 3또는 5또는 7또는 9는 남자

boolean || boolean

A || B R

1 1 1

1 0 1

0 1 1

0 0 0

XOR 연산

boolean ^ boolean

A ^ B R

1 1 0

1 0 1

0 1 1

0 0 0

! 연산

!boolean -> !1 -> 0

- 비트 연산자

&, |, ^, <<, >>

// 비트 우선순위 (<<) -> (>>) -> (&) -> (^) -> (|)

28 << 2

1 1 1 0 0

1 1 1 0 0 0 0

64 32 16 8 4 2 1 -> 112

28 >> 2

1 1 1 0 0

1 1 1

4 2 1 -> 7

- 삼항 연산자

3개의 피연산자를 필요로하는 연산자이며, 앞의 조건식에 따라 :(콜론) 앞뒤의 연산자가 선택

조건식 ? 값1 : 값2

(결과 boolean)

emo = 10 > 5 ? 😊 : ❤; -> 결과 😊

// window + . (동시에) 이모티콘

// ctrl + alt + insert

과제.

성적 프로그램

1. 3과목 이상의 변수를 만들어 값을 저장

kor = 80 ~~~~

2. 위 점수를 변수에 저장하고 총점과 평균, 합격 여부를 구함

(단, 합격 여부는 평균을 기준으로 60점 이상은 합격, 60점 미만은 불합격으로 함)

3. 합격 여부는 삼항 연산자를 활용

반응형