Advertisement
Guest User

Untitled

a guest
Feb 18th, 2020
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.65 KB | None | 0 0
  1. package no.hiof.sadaqmd.oblig3;
  2.  
  3.  
  4.  
  5. import java.util.ArrayList;
  6.  
  7. public class PlanetSystem {
  8. private String name;
  9. private Star centerStar;
  10. private ArrayList<Planet> planets = new ArrayList<Planet>();
  11.  
  12. public PlanetSystem(String name, Star centerStar) {
  13. this.name = name;
  14. this.centerStar = centerStar;
  15. }
  16.  
  17. public void addPlanet(Planet planet) {
  18. planets.add(planet);
  19. }
  20.  
  21. public ArrayList<Planet> getPlanets() {
  22. return new ArrayList<>(planets);
  23. }
  24.  
  25. public Planet getSmallestPlanet() {
  26. if (planets.size() == 0)
  27. return null;
  28.  
  29. Planet smallestPlanet = planets.get(0);
  30.  
  31. for (Planet currentPlanet : planets) {
  32. if (currentPlanet.getRadius() < smallestPlanet.getRadius()) {
  33. smallestPlanet = currentPlanet;
  34. }
  35. else if (currentPlanet.getRadius() == smallestPlanet.getRadius()) {
  36. if (currentPlanet.getMass() < smallestPlanet.getMass())
  37. smallestPlanet = currentPlanet;
  38. }
  39. }
  40.  
  41. return smallestPlanet;
  42. }
  43.  
  44. public Planet getLargestPlanet() {
  45. if (planets.size() == 0)
  46. return null;
  47.  
  48. Planet largestPlanet = planets.get(0);
  49.  
  50. for (Planet currentPlanet : planets) {
  51. if (currentPlanet.getRadius() > largestPlanet.getRadius()) {
  52. largestPlanet = currentPlanet;
  53. }
  54. else if (currentPlanet.getRadius() == largestPlanet.getRadius()) {
  55. if (currentPlanet.getMass() > largestPlanet.getMass())
  56. largestPlanet = currentPlanet;
  57. }
  58. }
  59.  
  60. return largestPlanet;
  61. }
  62.  
  63. public String getName() {
  64. return name;
  65. }
  66.  
  67. public void setName(String name) {
  68. this.name = name;
  69. }
  70.  
  71. public Star getCenterStar() {
  72. return centerStar;
  73. }
  74.  
  75. public void setCenterStar(Star centerStar) {
  76. this.centerStar = centerStar;
  77. }
  78.  
  79. public Planet getPlanetByName(String planetsName) {
  80. Planet byName = new Planet();
  81. for (Planet planet: planets) {
  82. if (planet.getName().equals(planetsName)){
  83. byName = new Planet(planet.getName(), planet.getMass(), planet.getRadius(), planet.getSemiMajorAxis(), planet.getEccentricity(), planet.getOrbitalPeriod(), planet.getCentralCelestialBody());
  84. }
  85.  
  86. }
  87. return byName;
  88. }
  89.  
  90. @Override
  91. public String toString() {
  92. return String.format("%s has %d planets that revolve around the star %s", name, planets.size(), centerStar.getName());
  93. }
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement