백준문제 4344번을 진행하면서 출력을 소숫자리까지 해야하기 때문에 double 배열을 사용하였는데
알고리즘은 문제 없는 것 같은데 0.000%로 출력이 되어 확인을 해보니
평균을 넘는 학생 수인 count와 student가 int형 변수였고, 이에 double형 배열에 값이 들어가지 않은 것이다.
수정 이후엔 올바르게 출력 되었으며 반올림 및 소숫자리 출력을 위해 String.format("형식", 변수) 를 사용하였다.
string 변수에 String.format("%.3f", rate[i]) 를 넣어준 후
그대로 sout으로 %를 달아 출력해주면 된다.
번외로 입력받은 수를 거꾸로 돌린 뒤 출력하는 문제가 있었는데, 여기서도 요즘 자주 애용하는
toCharArray를 사용해줬는데, char에 저장된 'char'형 숫자를 ((int) charA[i]) 식으로 출력하려니
아스키코드 숫자만 출력하여 추가로 48을 빼서 형변환을 해야 숫자가 char에서 int로 올바르게 바뀌는 걸 확인했다.
주의할 것.
double과 int 간 형변환시 반드시 치환문장 붙여줄 것.
char형 숫자 int로 변환 시 48을 반드시 빼줄 것.
'LANGUAGES, METHODLOGY' 카테고리의 다른 글
[Java] 유용하게 사용 가능한 Collections - Map (0) | 2017.11.13 |
---|---|
[JAVA] split과 regex를 활용해 문자열 뽀개기 (0) | 2017.10.27 |
[JAVA] ArrayList를 복사하고 정렬하고 싶을 때. (0) | 2017.10.12 |
[JAVA] 문장을 글자별로 추출하고 싶을 때, String 배열을 char 배열로 바꿔보자 (0) | 2017.09.21 |
[inteliJ] import한 git 프로젝트에서 branch 이동하기 (0) | 2017.06.09 |