一个方法不可以定义在另一个方法中

package com.web;

import java.util.Scanner;

public class Test19 {
    
    
    public static void main(String[] args) {
    
    
        printData();

    }
    public static void printData(){
    
    
        Scanner scanner = new Scanner(System.in);

        String firstName = scanner.next();
        String lastName = scanner.next();
        int age = scanner.nextInt();
        double height = scanner.nextDouble();
        double weight = scanner.nextDouble();

        String name = fullName(firstName,lastName);
       //一个方法不能定义在另一个方法中,但是可以调用
      // public static String fullName(String firstName,String lastName){
    
    
        //    return firstName+" "+lastName; 错误写法

        System.out.println("名前は"+name+"です");
        System.out.println("年齢は"+age+"歳です");
        System.out.println("身長は"+height+"mです");
        System.out.println("体重は"+weight+"kgです");

        if(age>=20){
    
    
            System.out.println("成年者です");
        }else{
    
    
            System.out.println("未成年者です");
        }
    }
    public static String fullName(String firstName,String lastName){
    
    
        return firstName+" "+lastName;
    }
}

两种写法的比较
在这里插入图片描述

package com.web;

import java.util.Scanner;

public class Test21 {
    
    
    public static void main(String[] args) {
    
    
        Scanner scanner = new Scanner(System.in);
        System.out.println("何人分の情報を入力しますか:");
        int count = scanner.nextInt();
        int i = 1;
        int maxAge = 0;
        int totalAge = 0;
        while (i <= count) {
    
    
            System.out.println(i + "人目");
            System.out.print("名前:");
            String firstName = scanner.next();
            System.out.print("名字:");
            String lastName = scanner.next();
            System.out.print("年齢:");
            int age = scanner.nextInt();
            if (age>maxAge){
    
    
                maxAge = age;
            }
            totalAge+=age;
            System.out.print("身長(m):");
            double height = scanner.nextDouble();
            System.out.print("体重(kg):");
            double weight = scanner.nextDouble();
            printData(firstName, lastName, age, height, weight);
            i++;
        }
        System.out.println("最高年齢は"+maxAge+"歳です");
        System.out.println("平均年齢は"+totalAge/count+"歳です");
    }


    public static void printData(String firstName, String lastName, int age, double height, double weight) {
    
    
        System.out.println("名前は" + fullName(firstName, lastName) + "です");
        System.out.println("年齢は" + age + "歳です");
        if (age >= 20) {
    
    
            System.out.println("成年者です");
        } else {
    
    
            System.out.println("未成年者です");
        }
        System.out.println("身長は" + height + "mです");
        System.out.println("体重は" + weight + "kgです");
        double bmi = bmi(height, weight);
        System.out.println("BMIは" + Math.round(bmi) + "です");
        if (isHealthy(bmi)) {
    
    
            System.out.println("健康です");
        } else {
    
    
            System.out.println("健康ではありません");
        }
    }

    public static String fullName(String firstName, String lastName) {
    
    
        return firstName + " " + lastName;
    }

    public static double bmi(double height, double weight) {
    
    
        return weight / height / height;
    }

    public static boolean isHealthy(double bmi) {
    
    
        return bmi >= 18.5 && bmi < 25.0;
    }

}

猜你喜欢

转载自blog.csdn.net/djydjy3333/article/details/121382213