본문 바로가기

학원 일기/학원-JAVA

학원 Java과정 3일차

[궁금한점]

byte b3 = b1 + b2;  <<  int로 계산된다 때문에 (byte)(b1 + b2);로 해줘야 byte타입으로 계산된다 

[해결]

int형보다 낮은타입의 연산은 int로 자동 형변환되어 계산된다

또한 int보다 높은경우 높은타입으로 형변한되어 계산된다 ex) float+int => float + float

 

[bit 반전 연산자]

-비트 반전 "~"  > ex) ~1010 >> 0101됨 (별로 쓸일없을거같음)

 

[논리연산자]

|| => or 

&& => and  반환값은 true/false

l => or (bit에 사용)

&=> and (bit에 사용)  ex) 0000 111 일때 << or이면 1111 111 / and면 0000 000     

 

 

[문제]

내답은 9 , 5 , true /  "2" / A  / B /  B / C

 

정답은 13/5/false / 2 / 66 / B / B / C

 

오답원인 << 1번 -- y의값을 생각안했음 , 오른쪽의 값을 +=로 대입하는건데 +=을 1을더한다고 생각했다

             << 3번 ture의값에 !를 연산해서 flase로 나와야하는데 true라고 적었다

             << 4번 int타입으로 나옴 (char가 2byte이고 char가 int로 계산되는 형태는 자동형변환이 이뤄지는것같다)

             << 5번 +1을 ++ 후위연산자 개념으로 잘못생각함, int타입이 나왔다

 

느낀점

-차분히 풀어야한다

- char + 숫자에서는 char가 ascii코드 형태의 정수로 변환하는것같다

 

[Math]

함수를 가지고 있는 객체

ex) Math.random() => 0.0~0.1 사이의 값을 무작위로 생성한다.

 

[궁금한점]

생성숫자중 중간값의 분포도가 높다는 말을들었다. 사실인지 아닌지 검증은 하지못했다

 

[배열생성]

 - int[] a; => 초기화없이 선언만 한형태

 - int[] a = new int[5]; =>초기화,배열의 크기할당을 동시에 한다

 - int[] a = {1,2,3,4,5}; => 초기화,배열의크기할당,값 지정을 동시에한다

배열의 순서는 0번째 부터이다.

-배열을 초기화하지 않을경우 기본값은 0 , 0.0 , null 이다

'학원 일기 > 학원-JAVA' 카테고리의 다른 글

학원 Java 5일차 수정사항없음  (0) 2021.02.19
학원 Java 4일차  (0) 2021.02.18
학원 java 이외의 부가적인공부  (0) 2021.02.17
학원 Java과정 2일차  (0) 2021.02.16
학원 Java과정 1일차  (0) 2021.02.15