JAVA 문자열 배열 다시 질문드려요..ㅠ

조회수 665회

package com.javalec.ex;

import java.io.StreamCorruptedException; import java.util.Scanner; import java.util.Stack;

public class ArrayEx { public static void main(String[] args) {

    String[] name = {"윤아", "태연", "서현", "유리", "티파니"};
    int[] height = new int[5];
    int total = 0;
    int max = 0;
    int maxindex = 0;
    int min = 0;
    int minindex = 0;
    String[] height1 = new String[5];

    Scanner scanner = new Scanner(System.in);
    for (int i = 0; i < height.length; i++) {
        System.out.print(name[i] + "님의 키를 입력 하세요. : ");
        height[i] = scanner.nextInt();
        total += height[i];
    }
    System.out.println("사람들의 평균 신장은 " + (total/name.length) + "입니다.");

    for (int i = 0; i < height.length; i++) {
        if(height[i] > max) {
            max = height[i];
            maxindex = i;
        }
    }
    for (int i = 0; i < height.length; i++) {
        if(height[i] == max) {
            height1[i] = name[i];
        }
    }
    for (int i = 0; i < height1.length; i++) {
        System.out.println("가장 큰 사람은 " + height1[i] + "입니다.");
    }

    min = max;
    for (int i = 0; i < height.length; i++) {
        if(height[i] < min) {
            min = height[i];
            minindex = i;
        }
    }
    System.out.println("가장 작은 사람은 " + name[minindex] + "입니다.");


}

}

이걸 실행해 보면..

윤아님의 키를 입력 하세요. : 170

태연님의 키를 입력 하세요. : 180

서현님의 키를 입력 하세요. : 180

유리님의 키를 입력 하세요. : 160

티파니님의 키를 입력 하세요. : 175

사람들의 평균 신장은 173입니다.

가장 큰 사람은 null입니다. ←

가장 큰 사람은 태연입니다.

가장 큰 사람은 서현입니다.

가장 큰 사람은 null입니다.

가장 큰 사람은 null입니다.

가장 작은 사람은 유리입니다.

질문)

문자열 배열 height1의 크기가 5로 정해져있어서 중복이 아닌 사람들은 null값으로 나옵니다..

이렇게 말고 중복되더라도 태연과, 서현만, 나온다던가

3명의 키가 중복되면 3명만 나오도록 하려면 어떻게

해야 될까요..?

  • (•́ ✖ •̀)
    알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)