자체임상실험
Inform Restaurant
자체임상실험
전체 방문자
오늘
어제
  • 분류 전체보기 (89)
    • IT정보와 지식 TABLE (1)
      • IT정보 및 꿀팁 (0)
      • Windows (1)
      • Linux (0)
    • Linux TABLE (0)
      • 취약점 점검 스크립트 (0)
    • Developer TABLE (33)
      • Java (33)
      • Java Algorithm (0)
    • DataBase TABLE (1)
      • SQLD-P (1)
    • Cloud TALBE (0)
      • AWS (0)
    • Security TABLE (1)
      • 비박스(bee-box) 취약점 점검 (1)
      • 보안기사 (0)
    • Writer TABLE (42)
      • 기사필사 (42)
      • 서평 (0)
    • Growth TABLE (10)
      • 국민취업지원제도 (4)
      • 국비학원 (6)
    • Life TABLE (0)
      • 자서전 (0)

블로그 메뉴

  • 홈

공지사항

인기 글

태그

  • 디엠제트
  • 반복문
  • if
  • 배열
  • 한겨레
  • 조건문
  • 동아일보
  • for
  • 국민취업지원제도
  • 경향신문
  • 방사능
  • 지하공간
  • while
  • array
  • 2차원배열
  • 초장기 주택담보대출
  • 국비학원
  • 문자열비교
  • @
  • do while
  • Arrays
  • KH정보교육원
  • 조용한 고용
  • Switch
  • 천자칼럼
  • 논설위원필사
  • Java
  • 배열복사
  • 해양오염수
  • 논설위원

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
자체임상실험

Inform Restaurant

Developer TABLE/Java

산술 연산자, 반올림(Math.round()) 메소드

2021. 8. 25. 16:52

산술 연산자

+, -, *, /, %

  • 연산 전 피연산자의 타입을 일치 시킨다.(가장 큰 타입으로 일치)
  • int형 끼리 나누기했을 경우 소수점 이하는 절사(e.g. 30 / 12 = 2)
  • int형 보다 작은 타입은 int형으로 변환(e.g. byte, short, char)
  • % 나머지 연산자는 나누는 피연자가 0이 아닌 정수만 허용(부호 무시)

정수의 사칙연산

public void method() {
	int nData1 = 30;
	int nData2 = 12;
	
	System.out.printf("%d + %d = %d\n", nData1, nData2, nData1 + nData2);
	System.out.printf("%d - %d = %d\n", nData1, nData2, nData1 - nData2);
	System.out.printf("%d * %d = %d\n", nData1, nData2, nData1 * nData2);
	System.out.printf("%d / %d = %d\n", nData1, nData2, nData1 / nData2);
	System.out.printf("%d %% %d = %d\n", nData1, nData2, nData1 % nData2);
}

결과값

30 + 12 = 42
30 - 12 = 18
30 * 12 = 360
30 / 12 = 2
30 % 12 = 6

실수의 사칙연산

  • %.2f: 소수 2번째 자리 까지 출력
public void method() {		
	double dData1 = 14.2;
	double dData2 = 8.7;
	
	System.out.printf("%.2f + %.2f = %.2f\n", dData1, dData2, (dData1 + dData2));
	System.out.printf("%.2f - %.2f = %.2f\n", dData1, dData2, (dData1 - dData2));
	System.out.printf("%.2f * %.2f = %.2f\n", dData1, dData2, (dData1 * dData2));
	System.out.printf("%.2f / %.2f = %.2f\n", dData1, dData2, (dData1 / dData2));
	System.out.printf("%.2f %% %.2f = %.2f\n", dData1, dData2, (dData1 % dData2));
}

결과값

14.20 + 8.70 = 22.90
14.20 - 8.70 = 5.50
14.20 * 8.70 = 123.54
14.20 / 8.70 = 1.63
14.20 % 8.70 = 5.50

예외사항

  • 무한대검사: Double.isInfinite()
  • NaN(Not a Number) 검사: Double.isNaN()
public void method() {
//	System.out.println(5 / 0);	// ArithmeticException
	System.out.println(5 / 0.0);	// Infinity(무한대)
	System.out.println(5 % 0.0);	// NaN(Not a Number)
	System.out.println((5 / 0.0) + 2);	// Infinity(무한대)
	System.out.println((5 % 0.0) + 2);	// NaN(Not a Number)
	System.out.println(Double.isInfinite(5 / 0.0));	// 무한대인지 검사(true, false)
	System.out.println(Double.isNaN(5 % 0.0)); // NaN인지 검사(true, false)
}

결과값

Infinity
NaN
Infinity
NaN
true
true

반올림 Math.round() 메소드

  • 실수를 소수점 첫 째자리에서 반올림한 정수를 반환
public void method3() {
	double dPi = 3.141592;
	long lResult = Math.round(dPi);	// 소수점 첫 째자리 반올림
	double dRound_Pi = Math.round(dPi * 10000) / 10000.0;	// 소수점 반올림
		
	System.out.println(lResult);	
	System.out.println(dRound_Pi);	
	System.out.println((int)(dPi * 10000) / 10000.0);	// 소수점 버림
}

결과값

3
3.1416
3.1415
저작자표시 비영리 (새창열림)

'Developer TABLE > Java' 카테고리의 다른 글

단항 연산자  (0) 2021.08.25
연산자(Operator)  (0) 2021.08.25
출력 메소드(Print Method)  (0) 2021.08.23
    'Developer TABLE/Java' 카테고리의 다른 글
    • 비교 연산자(관계 연산자), 문자열비교 equals(), equalsIgnoreCase()
    • 단항 연산자
    • 연산자(Operator)
    • 출력 메소드(Print Method)
    자체임상실험
    자체임상실험
    생활에 유용한 정보와 일상을 담은 휴식처, Sobremesa 입니다.

    티스토리툴바