변수란 ? 

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

 (RAM)을 의미

 하나의 연속된 저장공간

 저장공간을 1byte 단위로 나눈다.

 

변수의 선언 

1. 선언 이유 : 값을 저장할 공간 마련을 위해

2. 선언방법 : 변수타입 변수이름;

                      예시)    int age;

 

 

변수에 값 저장

1. 변수에 값 저장 :

           int age;            //정수타입 변수 age 선언      // age = ㅁ

           age = 99;         // age 변수에  99를 저장     // age = 99           

           한문장으로는 이렇게 ↓

               int age = 99;    // 변수 선언과 함께 값을 저장 

 

※ 변수의 초기화란 ? : 변수에 처음으로 값을 저장하는 것

 

예시) int x = 0;

         int y = 5;

한문장으로는 이렇게 ↓

          int x=0, y=5;


상수 ( constant )

: 한 번만 값을 저장 가능한 변수   ( 변경불가 )

 

 

리터럴

: 상수나 변수에 들어갈 값을 의미

 

 

리터럴의 접두사와 접미사

정수형

번호 타입 리터럴 접두사 접미사 예시
1 byte 정수형 0b : 2진수(jdk1.7↑)
0 : 8 진수
0x : 16진수
- 100
2 short 정수형 - 100
3 int 정수형 - 100
4 long 정수형 L 100L

 

 

실수형

번호 타입 리터럴 접두사 접미사 예시
1 float 실수형   F 3.14F
2 double 실수형   D (생략가능) 3.14
1e3 = 1000.0 ( 10^3)

 

 

문자형

번호 타입 리터럴 접두사 접미사 예시
1 char 문자형   - 'A'

 

 

논리형

번호 타입 리터럴 접두사 접미사 예시
1 boolean 논리형   - True or False

 

개행 ( Enter 효과 )  :  \n

 

 

변수와 리터럴의 타입 불일치

1. 변수 > 리터럴인 경우 = ok

( 값을 변수에 담을건데, 담는 그릇(변수)이  더 크니 괜츈)

      예시)

                 int i = 'A';           // int > char

                 long l = 123;      // long > int

                 doube d = 3.14f   // double > float

 

 

 

2. 변수 < 리터럴인 경우 = Error

                 int i = 30_000_000;    // int의 범위를 벗어남

                 long l = 3.14f     // long < float

                 float f = 3.14(d) // float < double

 

 

 

3. byte, short 변수에 int 리터럴 저장가능 ( 단, 변수(그릇) 보다 작은 한도내에서 ) 

                 byte b = 100;    // ok. byte( -128~127)

                 byte b= 128;    // Error  범위를 벗어남 

 


char타입 주의사항

  char ch = 'AB'     // 에러

  char ch = ''     //  에러

 

 

문자열결합 ( 문자열 + 모든타입 = 문자열)

String 은 자바에서 제공하는 클래스

 String  s1 = "A" + "B";   // "AB" 결과 (문자열결합)

 String s2 = "A" + 7;  //    7까지 문자열로 인식함. ( "7")

 

 


두 변수의 값을 교환

임시 변수 temp를 만들어, 옮겨담기 


변수 기본형(8개) = 실제값을 저장

1. 문자 : char

2. 숫자 :

          정수 : byte, short, int, long 

                      1   ,   2    ,   4,   8  byte.

          실수 : float, double

 

3. 논리 : boolean ( true or false )

 

변수 참조형 = 메모리주소를 저장

기본형을 제외한 나머지 ( String, System. 등... )

항상 4byte 또는 8byte

참조형변수 = 객체의 주소를저장


System.out.println()  단점  : 출력형식 지정불가

  1. 실수의 자리수 조절불가

  2. 10진수로만 출력됨 

 

 

 

System.out.printf() 사용

 : 지시자를 통하여 출력형식지정가능

 

 

printf()의 지시자 1

지시자 설명
%b boolean 형식
%d [정수] 10진수 형식 (decimal)
%o [정수] 8진수 형식 (octal)
%x or %X [정수] 16진수 형식 (hexa-decimal)
%f [실수] 부동 소수점 형식 (floating-point)
%e or %E [실수] 지수 표현식 형식 (exponent)
%g [실수] 간량한 형
%c 문자 형식 (character)
%s 문자열 형식 (string)

 

예시)                 \n은 개행

 

 

접두사를 붙여 출력하고 싶다면? ( #을 붙이기 )

 

printf 사용하여 자리수 정렬

 

 

 


Scanner 란?

: 화면으로 부터 데이터를 입력받는 기능을 제공하는 클래스

 

Scanner 사용하려면?

1. improt문 추가

2. Scanner객체의 생성

 ( System.in 은 화면입력을 받겠다  라는 의)

 

3.  Scanner 를 사용

 


정수형의 오버플로우란?

: 표현할수 있는 범위를 넘어섰을때 발생

 

 

예시) 카운터기  9999 (max값)

최대값 + 1           하면,      최소값     이 된다.         //9999 →  0000

최소값 - 1            하면,       최대값     이 된다.        //0000 →  9999

 

10진수,  2진수 


문자열 →  정수    : Intger.parseInt(    " 문자 " )

정수 → 문자열     : n + " "

 

 

문자열  →  문자     :     @.chatAt(인덱스위치번호)           

문자  →  숫자           :    'n' + '0'           

 

 

 


출처 : 남궁성의 정석코딩

https://www.youtube.com/@MasterNKS

+ Recent posts