[궁금한점]
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 |