자바로 문제를 풀거나 프로그래밍을 할때 소수점을 다루고 표현해야할때가 있다. 그때마다 헷갈릴때가 한번 정리해보았다.
int a = 14, int b = 3;
double result = (double) a / b;
System.out.println("소수점 전부 보이기: " + result);

그냥 a나 b중에 하나를 double형으로 변환해주면 해당 값 타입은 double이 된다.
int a = 14, int b = 3;
double result = (double) a / b;
System.out.printf("소수 셋째 자리까지 나타내기(반올림) 1 : %.3f \n", result);
System.out.println("소수 셋째 자리까지 나타내기(반올림) 2 : "+String.format("%.3f", result));

- "%.3f"를 넣고 (,)뒤에 실수형을 넣는다.
- String.format(표현하고 싶은 포멧 , 해당 인자);
int a = 14, int b = 3;
double result = (double) a / b;
int tmp = (int) (result * 1000); // 4666
result = tmp / 1000.; // 4.666
System.out.println("소수 셋째 자리까지 나타내기(반올림 X) : " + result);

또한 내림에 관해 찾아보니 Math.floor()라는 실수를 내림해주는 함수가 있었다. 이것으로도 위 내용을 구현할 수 있을 것 같다. 그리고 올림,내림등 다양한 함수가 있어 공부해보았다.
System.out.println(Math.round(4.666)); // 반올림 -> 5
System.out.println(Math.ceil(4.666)); // 올림 -> 5.0
System.out.println(Math.floor(4.666)); // 내림 -> 4.0

Math.round()함수는 return 타입이 long(정수형)이라서 정수형으로 return한다.