커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
1주차 숙제 float → int 형변환
Java 문법 종합반 v0
1주차
북마크
이*비
댓글
2
추천
0
조회수
32
조회수
32
답변 완료

별점을 float 타입으로 입력하면 int 타입으로 변환해서 출력하라는 부분인데요.

처음에 Scanner로 입력된 값을 float 타입이 아닌 Float 래퍼클래스 변수로 받았습니다.

그렇게 했더니 입력 값이 integer 타입으로 형변환 되지 않았습니다.


*다시 문제의 부분은 float 타입으로 고쳐 문제를 해결했습니다!*

//레시피 별점 입력
System.out.println("레시피의 별점을 매겨주세요.");
Scanner sc2 = new Scanner(System.in); // Scanner 객체도 결국 변수명. 서로 구분해주어야 함.
float input2 = sc2.nextFloat(); // float 값을 받을 때는 nextFloat
int inputChange = (int)input2; //형 변환
System.out.println(inputChange+"점");


다만 궁금한 점 2가지가 있습니다.


  1. 아래처럼 Float 래퍼클래스 변수를 사용하면 float 타입으로 값이 정상 출력되는데, 이유가 무엇인가요?
  2. 왜 Float 래퍼클래스로 입력 값을 받았을 때, int 타입으로 형변환이 불가능한가요?



작성한 코드 및 에러 메세지

//레시피 별점 입력
System.out.println("레시피의 별점을 매겨주세요.");
Scanner sc2 = new Scanner(System.in); // Scanner 객체도 결국 변수명. 서로 구분해주어야 함.
Float input2 = sc2.nextFloat(); // float 값을 받을 때는 nextFloat
System.out.println(input2+"점");




취소
 공유
취소
댓글 0
댓글 알림
나의얼굴