前尘远 2021-10-10 10:50 采纳率: 90.9%
浏览 40
已结题

类和方法这方面不是很会,能帮我看看吗

IntReceiver类可以接受指定范围内的整数值,具有下面2个属性:

最小的可接受值

最大的可接受值

并具有一个构造方法和一个普通方法:

   构造方法public IntReceiver(int min, int max):接收两个整数作为参数,分别用于设定最小和最大可接受值。

方法public int getValue(sc),功能是读取键盘输入的一个整数。如果读取的值不在允许范围内,则显示提示字符串,并重新要求用户输入一个新值,重复以上步骤直到输入了一个可接受的值。最后返回读取到的整数。参数sc是一个Scanner类对象。

要求编程实现IntReceiver类,使给定的Test类能正常运行,并实现指定的输出内容。

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

    IntReceiver ir;

    int value;


    Scanner sc = new Scanner(System.in);

    //input the min value;

    int min = sc.nextInt();


    //input the max value;

    int max = sc.nextInt();



    ir = new IntReceiver(min, max);

    value = ir.getValue(sc);

    System.out.println("The value is: "+value);

}

}
【输入形式】先输入接收整数的范围,在输入接收的整数,如果不在范围中给出提示,在范围中显示输入数据
【输出形式】错误提示,显示输入数据
【样例输入】

12 122

1 134 34

【样例输出】

Invalid value

Invalid value

The value is: 34


import java.util.Scanner;
public class baer {
    static public void main(String args[]){
        IntReceiver ir;

        int value;


        Scanner sc = new Scanner(System.in);

        //input the min value;

        int min = sc.nextInt();


        //input the max value;

        int max = sc.nextInt();



        ir = new IntReceiver(min, max);

        value = ir.getValue(sc);

        System.out.println("The value is: "+value);
    }
}


 class IntReceiver {
     private int min;
     private int max;

     public IntReceiver(int min, int max) {
         this.min = min;
         this.max = max;
     }

     public String getValue(Scanner sc) {
         while (true) {
             int value = sc.nextInt();
             if (value < min || value > max) {
                 System.out.println("Invalid value");
             } else {
                 System.out.println("The value is: " + value);
                 break;
             }
         }
     }
 }

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 10月18日
    • 创建了问题 10月10日

    悬赏问题

    • ¥15 Opencv(C++)异常
    • ¥15 VScode上配置C语言环境
    • ¥15 汇编语言没有主程序吗?
    • ¥15 这个函数为什么会爆内存
    • ¥15 无法装系统,grub成了顽固拦路虎
    • ¥15 springboot aop 应用启动异常
    • ¥15 matlab有关债券凸性久期的代码
    • ¥15 lvgl v8.2定时器提前到来
    • ¥15 qtcp 发送数据时偶尔会遇到发送数据失败?用的MSVC编译器(标签-qt|关键词-tcp)
    • ¥15 cam_lidar_calibration报错