2017-12-11 13 views
-2

이 방법을 사용하면 첫 번째 방법은 개인 BMI를 계산하는 것이고 두 번째는 정상적인 BMI를 가진 개인을 선택하는 것입니다.메소드를 호출 할 때 누락 된 인수

static double BMI(TreatedPerson tp) { 

    double wei = tp.weight; 
    double hei = (tp.height); 
    double heim = hei/100; 
    double bmindex = wei/(heim * heim); 

    return bmindex; 
} 



static void normalBMI(TreatedPerson tp,double bmindex) { 
    double valami = bmindex; 
    if (valami > 18.5 && valami < 24.99){ 
     System.out.println("Normális BMI érték"); 
    } 
} 

대신 구분의, 나는 방법 전화가 하나로 병합 할 때 내 문제는, 그들은 이런 방식으로 작동 :

static void outputTreatedPerson(ArrayList<TreatedPerson> treatedpeople) { 
     for (TreatedPerson tp : treatedpeople) { 
      System.out.println(tp); 
      normalBMI(tp); 
     } 
    } 

하지만이 두 가지 방법을 분리해서 때, 나는하지를 논쟁이 무엇인지 알아. 미리 도움을 주셔서 감사합니다! 처리 사람들의 루프에서

normalBMI 

답변

0

귀하의 호출은 BMI 매개 변수가 없습니다.

은 아마 당신은

public class TreatedPerson { 

    // your original class 
    private double bmiIndex; 

    // getter and setter methods for bmiIndex here 
} 

하고 다음 첫 번째 방법에서, BMI (TreatedPerson의 TP가) 당신이 그렇게

public static double BMI(TreatedPerson tp) { 

    double wei = tp.weight; 
    double hei = (tp.height); 
    double heim = hei/100; 
    double bmindex = wei/(heim * heim); 

    tp.setBMIndex(bmindex); 
} 

같이 무효가 할 수있는 TreatedPerson 객체에 BMI 구성원을 추가하는 것을 고려 할 수 당신의 두 번째 방법 (normalBMI)에서 당신은 이미 필요한 모든 정보를 가지고 있고 그 방법은 될 수 있습니다.

static void normalBMI(TreatedPerson tp) { 
    double valami = tp.getBMIndex(); 
    if (valami > 18.5 && valami < 24.99){ 
     System.out.println("Normális BMI érték"); 
    } 
}