Dev.J

[JAVA] 문제 4-3 Interface / 인터페이스를 이용하여 가장 키 큰 사람 의 이름을 반환 본문

Solved

[JAVA] 문제 4-3 Interface / 인터페이스를 이용하여 가장 키 큰 사람 의 이름을 반환

JJ____ 2021. 9. 6. 19:37

 Person은 Comparable 인터페이스를 구현하고 이 인터페이스를 이용하여 가장 키 큰 사람 의 이름을 반환하는 메소드 getMaximum(Person[] array)를 구현하는 프로그램을 완성하세요.

 

Person 클래스

class Person implements Comparable<Object> {
String name;
double height;

 

public Person(String name, double height){ //생성자 정의
this.name = name;
this.height = height;
}

 

static void toString(Person o) {

System.out.print("[제일 키 큰 사람]\n이름 : " + o.name + ", height : " + o.height);

}

 

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public double getHeight() {
return height;
}

public void setHeight(double height) {
this.height = height;
}

 

public int compareTo(Object obj) {
Person o = (Person) obj;
if(height > o.height) {
return 1;
}
else if(height < o.height) {
return -1;
}
else return 0;
}
}

 

PersonTest 클래스

import java.util.*;

public class Assignment4_1__2 {

  public static void main(String[] args)  {
    Scanner sc = new Scanner(System.in);

  Person[] array;
  array = new Person[3];
    array[0] = new Person("김길동", 190);
    array[1] = new Person("이길동", 180);
    array[2] = new Person("박길동", 170);
    
    Person.toString(getMax(array));
}


public static Person getMax(Person [] array) {
    Arrays.sort(array);
    return array[2];
  }
}

 

 

-------------

 

이 문제를 푼지 불과 2개월도 안되었는데 그 당시에는 부정확하고 확실히 구현하지 못했던 코드를 확실히 해결할 수 있었다. (메서드 오타, 배열 오개념 등)

그동안의 공부가 헛되지않았다는 증거라고 생각한다.

끝까지 화이팅이다!😎

728x90