=> x
>= 이렇게 쓴다
-
문자와 문자열은 다르다
-
byte(파일입출력)
-
-자바는 =(등호)를 기준으로 왼쪽과 오른쪽은 동일해야한다.
강제타입변화 주의해서 써야한다.
-
프로젝트생성
byte : -128 ~127범위
nan과 infinity
Infinity(무한대) :
.왼쪽의 피연산자(값)가 정수이고 오른쪽의 피연산자(값)이 0일 경우에 나눗셈을 하면,
ArithmeticException 예외가 발생 됨
그러나 왼쪽의 피연산자(값)가 정수 또는 실수이고 오른쪽의 피연산자(값)이
0.0일 경우에 나눗셈을 하면, 예외가 발생되지 않고 결과가 Infinity가 됨
NaN(Not a Number)
.왼쪽의 피연산자(값)가 정수이고 오른쪽의 피연산자(값)이 0일 경우에 나머지 연산을 하면,
ArithmeticException 예외가 발생 됨
그러나 왼쪽의 피연산자(값)가 정수 또는 실수이고 오른쪽의 피연산자(값)이
0.0일 경우에 나머지 연산을 하면, 예외가 발생되지 않고 결과가 Nan이 됨
-문제는 Infinity , NaN 상태에서 계속해서 연산을 수행하면 어떤 연산을 하더라도 결과는 계속해서 Infinity와 NaN이 됨
1)해결 방법
-Infinity 또는 NaN인지 확인하고 처리
-Double.isInfinity(값) : 값이 infinity면 true, 아니면 false
-Double.isNaN(값 : 값이 NaN이면 true, 아니면 false
클래스 영역 스택 지역변수 힙(객체)
클래스 주소 값
메소드
▣ ==과 equals
1. == : 왼쪽과 오른쪽이 같다.
스택에 있는 변수에 담긴 값이 같은지 비교
int a=3, b=7;
boolean result = (a==b)
a != b
String n = “홍가”;
String n1 = new String(“홍가”);
n==n1 => 스택에 있는 변수에 저장된 주소가 같은가 비교
n.equals(n1) => 변수가 가리키고 있는 내용이 같은가 비교
2. 문자열을 비교
문자1.equals(문자2) : 문자열1과 문자열2의 내용이 같은지 비교
test : Ex1(day05/bookExam)
================================
▣제어문
위에서 아래로 가는 이 프로그래밍의 흐름을 유일하게 제어할수 있는게 이 제어문
-조건문 : 조건식에 따라 다른 실행문을 실행하기 위해 사용
if, if~else, if ~ else if … else, switch
-반복문 : 반복적인 작업
for, while, do ~while…
-break, continue
1.조건문
1)if문
if(조건){
-조건: 참(true)과 거짓(false)를 구분할 수 있는 것이면 무엇이든 가능
true
false
num >= 30
name.equals(“홍길동”)
조건의 결과가 참일 때 실행할 문장드들
}
—---------------------------------------------------------------
if(조건)
{ <<<<<<<<<올려서 써라
조건의 결과가 참일 때 실행할 문장들
}
—---------------------------------------------------------------
if(조건){
조건의 결과가 참일 때 실행할 문장들
}else{
조건의 결과가 거짓일 때 실행할 문장들
}
★
// -b란 b * (-1) 이다 // byte 연산은 byte => int이다.
★괄호의 중요성
// var3 = 3.5, var2 = 2; 일떄
//(int)var3 * var2 = 6
//(int)(var3 * var2) = 7 //괄호의 중요성
★
//double area = ((lengthTop+lengthBottom)*height/2.0); = 값 : 52.5
//double area = ((lengthTop+lengthBottom)*height/2); = 값 : 52.0
★두개의차이
//System.out.println(7/0); //ArithmeticException: / by zero
//System.out.println(7/0.0); //Infinity(무한대)
★괄호의 중요성
//double var4 = (var1 * var1) * (Double.parseDouble(var2 + "." + var3)); //정상
//double var4 = (var1 * var1) * Double.parseDouble(var2 + "." + var3); //비정상 - 괄호안하면 곱하기를 앞에서만 한다.
—-------------------
숙
-책/요약정리
'1. JAVA > 3). 자바_개념' 카테고리의 다른 글
자바_개념_Day_07 (0) | 2024.01.09 |
---|---|
자바_개념_Day_06 (0) | 2024.01.08 |
자바_개념_Day_04 (1) | 2024.01.05 |
자바_개념_Day_03 (1) | 2024.01.05 |
자바_개념_Day_02 (2) | 2024.01.05 |