728x90

 

 

5. 변수의 교환하기

int x = 10, y = 20;  // x,y 각각 초기화 상태

 

x y값을 서로 바꾸고 싶다면?

a=b

b=c

c=a 논리와 같은것

 

 

 

 

 

<practice>

728x90
반응형
728x90

8.문자와 문자열

 

하나의 문자는 홑따옴표로 감싸줘야함. 캐릭터 타입의 변수에 저장할 있음

  • 홑따옴표 안에 두개 이상의 문자를 넣을 경우 에러

 

char ch = 'A';

char ch = 'AB';  // error

 

 

String s = "ABC";

  • 문자가 연속적으로 이어져 있는 것을, 문자열 or 문자열 리터럴이라고 부름
  • 문자열을 저장하려면 변수타입이 String이어야함
  • String 원래 자바에서 제공하는 class. 문자열을 다룰 사용
  • 문자열 class 워낙 자주 쓰이기에,  얘만 기본형 변수에 값을 저장하는 것과 같은 표현을 허용함

 

 

 

※ 문자열 출력별 차이

String s1 = "AB";

String s2 = new String("AB");

  • 위의 문장의 거의 같고 보통 위에 문장 사용
  • 차이는 9장에서

String s = "A";  // 문자 하나. ok

String s = "";   // 문자열. ok

char ch = '';    // 문자열. error

 

String s1 = "A" + "B"  // 결과값 "AB" : 문자열 하나로 결합하라는

  • "" + 7 "" + "7"   "7" : (숫자를 문자열로 캐스팅한 )
  • 문자열은 문자열하고만 결합이 가능해서 숫자7 문자열로 바꾸고 결합한
  • 숫자에 문자열을 결합하면 문자열 숫자가 되는
  • 연산 진행 순서는

ex) ""+7+7 "7"+7 "7"+"7" "77"

ex) 7+7+"" 14+"" "14"+"" "14"

 

문자열 + any type 문자열

any type + 문자열 문자열

 

728x90
반응형
728x90


728x90
반응형

'small steps > 운동 - 체력이 국력' 카테고리의 다른 글

21.12.23 운동기록  (0) 2021.12.24
21.12.22 운동기록  (0) 2021.12.22
21.12.20 운동기록  (0) 2021.12.21
21.12.18 운동기록  (0) 2021.12.19
21.12.18 운동기록  (0) 2021.12.18
728x90


728x90
반응형

'small steps > 운동 - 체력이 국력' 카테고리의 다른 글

21.12.22 운동기록  (0) 2021.12.22
21.12.21 운동기록  (0) 2021.12.21
21.12.18 운동기록  (0) 2021.12.19
21.12.18 운동기록  (0) 2021.12.18
21.12.16 운동기록  (0) 2021.12.17
728x90

 

6.리터럴의 타입과 접두사,접미사

접두사,접미사는 대소문자 구분x

파란줄의 접미사 정수형 long 실수형 float 신경쓰면 된다

 

 

정수형에서 byte,short int 같이 묶여져 따로 접미사를 쓰지 않고 long 접미사L 붙여주면 되고,

실수형에서 보통 double d 생략되고 float f 접미사 쓰는게 관례

 

 

 

boolean 타입 : true 또는 false 저장가능

        boolean power = true;

char 타입 : 하나의 문자만 저장가능

        char ch = 'A';         // 하나의 문자는 홑따옴표 ' '

String 타입 : 여러 문자 저장가능

        String str = "ABC";  // 여러 문자는 큰따옴표 " "

 

 

'\n' : 바꿈 문자. 하나의 문자. ' ' 되어있는걸 봐도 있음

 

byte 타입 : 접미사가 없기에 int타입을 사용. , 접미사 x

        대신 byte타입 범위 안에 저장할 있는 값이여야함

        범위 : -128~127 ( 범위 벗어나면 에러)

        byte b = 127;   // literal 127(127 자체) 타입은 int

 

int 타입 : 앞에 접두사를 붙여서 진수를 나타낼 있음

        0b 접두사로 붙으면 2진수 0b0101        

        한계값이 20억까지만 사용가능. 이후의 값은  long처리해야함

        int i = 100;        // 10진수

        int oct = 0100;   // 8진수

        int hex = 0x100; // 16진수

 

long 타입 : int 한계값이 넘어서는 20 이후부터 써야하는 정수타입

        long타입 접미사L 안붙여도 괜찮지만, int 한계값을 넘는 20억부터는 접미사L 필수

        long 1 = 10_000_000_000L;   // 0 10개라 100

        long 1 = 1 100;  // ok

 

float 타입 : 실수. 접미사 필수

        float f = 3.14f;

 

double 타입 : 실수. 접미사 d 생략가능

        double d = 3.14d;   // ok

        double d = 3.14;     // ok

 

          10.  10.0 : 10.0에서 소수점 뒷자리0 생략된 의미. 접미사 없으니 double타입

          .10  0.10 : 0.10에서 0 생략된 의미. 접미사 없으니 double타입

          10f  10.0f : 10f 10.0f 같은 의미

          le3  1000.0 : 실수형. 접미사 없으니 double 타입

                        기호 e 10 n제곱을 의미. 값이 1000이지만 기호e 실수형에서 쓰임

 

 

 

 

 

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

1)범위가 '변수 > 리터럴' 경우, ok

           (그릇)    (물건)

 

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

      long 1 = 1 123;   // long > int

      double d = 3.14f; // double > float

 

2)범위가 '변수 < 리터럴' 경우, 에러

      int i = 30_0000_0000;    // int 범위(20) 벗어남. error

      long 1 = 1 3.14f ;         // long < float : 실수형이 정수보다 넓다. error

                 (롱타입 8byte, 플로트타입 4byte)

      float f = 3.14;              // float < double 더블이 플로트보다 크다. error

 

3)byte, short 변수에 int리터럴 저장가능

      byte b = 100;     // ok (, byte 범위-127~127 사이에 속해야함

      byte b = 128;    // error

 

 

 

해보기

 

 

 

728x90
반응형

+ Recent posts