중급과정/HighJava
[Java] 행성의 면적 구하기 (Enum)
whalerice
2023. 11. 30. 09:03
문제) 태양계 행성을 나타내는 enum Planet을 이용하여 구하시오.
(단, enum 객체 생성시 반지름을 이용하도록 정의하시오.)
예) 행성의 반지름(KM):
수성(2439),
금성(6052),
지구(6371),
성(3390),
목성(69911),
토성(58232),
천왕성(25362),
해왕성(24622)
public class Homework04_EnumPlanet {
public enum Planet {
수성(2439), 금성(6052), 지구(6371), 화성(3390), 목성(69911),
토성(58232), 천왕성(25362), 해왕성(24622);
private Integer data;
private Planet(Integer data) {
this.data = data;
}
public Integer getData() {
return data;
}
public void setData(Integer data) {
this.data = data;
}
}
public static void main(String[] args) {
// 면적구하기
//%.2f=> 소수점 이하 2자리
Planet[] enumArr = Planet.values();
for (Planet p : enumArr) {
System.out.printf("%s의 면적 : %.2f km²%n", p.name(),
4 * Math.PI * p.getData() * p.getData());
}
}
}