随笔都是学习笔记
随笔仅供参考,为避免笔记中可能出现的错误误导他人,请勿转载。
posts - 398,comments - 0,views - 13万

要求:

输入指定个数的数字,然后比较大小并输出最大值和最小值。

实现:

复制代码
import java.util.Scanner;
interface INumberCase{  // 设置一个接口处理数字
    public double[] caseNumber(int count);  // count是输入数字的个数
}
class NumberCaseImpl implements INumberCase{
    @Override
    public double[] caseNumber(int count) {
        double [] res = new double[2];    // 返回的结果是最大值和最小值两个数字
        double [] data = new double[count]; // 创建一个接收数字的数组
        for (int i = 0; i < data.length; i++) { // 信息的循环输入
            data[i] = InputNum.inputNum("请输入第【" + (i+1) + "】个数字:");
        }
        res[0] = data[0];   // 最大值
        res[1] = data[0];   // 最小值
        for (int x = 0; x < data.length; x++) {
            if (data[x] > res[0]){
                    res[0] = data[x];
            }
            if (data[x] < res[1]){
                res[1] = data[x];
            }
        }
        return res;
    }
}
class InputNum{ // 输入数字类

    public InputNum() {
    }
    public static double inputNum(String msg){  // 传入提示信息
        double num = 0;
        boolean flag = true;
        while (flag){
            Scanner input = new Scanner(System.in);
            System.out.print(msg);
            if (input.hasNextDouble()){ // 如果是数字
                flag =false;
                num = input.nextDouble();  // 返回数字
            }else {
                System.out.println("输入错误!请输入数字!!");
            }
        }
        return num;
    }
}
class Factory{  // 工厂类获取接口对象
    private Factory(){}
    public static INumberCase getInstance(){
        return new NumberCaseImpl();    // 返回对象
    }
}
public class MAIN {
    public static void main(String[] args) {
        INumberCase numberCase = Factory.getInstance();
        double[] res = numberCase.caseNumber(3);
        System.out.println("最大值:" + res[0] + "最小值:" + res[1]);
    }
}
复制代码

 

 

 

 

posted on   时间完全不够用啊  阅读(569)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示