数字大小比较|学习笔记

简介: 快速学习数字大小比较

开发者学堂课程【Java 高级编程数字大小比较】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/20/detail/349


数字大小比较


编写 Java 程序,输入 3 个整数,并求出 3 个整数的最大值和最小值。

如果要想进行数字的输入处理,那么应该保证输入错误的时候可以重新输入,为了可以达到重新使用的设计,应该准备一个单独的输入数据类。

 

1、定义一个输入工具类

打开如图,新建一个程序类:image.pngimage.pngimage.png

package cn.mldn.demo.util;

import java.util.Scanner;

public class Inpututil {

private Inpututil(){}

private static final

/**

*实现键盘接收数字的操作

*@param prompt 提示信息

*@return 一个可以使用的数字

package cn.mldn.demo.util;

import java.util.Scanner;

public class Inpututil {

private Inpututil(){}

private static final

/**

*实现键盘接收数字的操作

*@param prompt 提示信息

*@return 一个可以使用的数字

/*

public static int getInt(string.Prompt){

I int num =θ

BufferedReader buf = new BUfferedReader(new InputstreamReader(system.in));

boolean flag = true ;

while (flag){

Scanner input = new Scanner(System.in) ;

System.out.print(prompt);//打印提示信息

string str = null;

try { str = buf.readLine();

if (str.matches("\ld+")){

num = Integer.parseInt(str);

flag = false ; }

else

System.out.println("输入的内容不是数字!");

}

}catch (IOException e){

System.out.println("输入的内容不是数字!");

return num

图片4.png


2、定义数据的输入处理

图片5.png

图片6.png图片7.png图片8.png图片9.png

输入以下代码

package cnmldn.demo.service;

public interface INumberService

/**

*输入数据并且返回输入数据的最大值与最小值

*@param count 表示要输入数据的个数

*@return 包含有两个内容,第一个是最大值,第二个是最小值

*/

public int[] stat(int count);


3、定义接口的实现子类

图片10.png图片11.png

输入代码

package .cn.mldn.demo.service.impl;

import cn.mldn.demo.service.INumberService;{

import cn.mldn.demo.util.Inpututil;

public class NumberServiceImpl implements INumberService {

@Override

public int[] stat(int count) {

int result []= new int[2];//定义返回的结果

int data []= new int [count」;//开辟一个数组

for (int x= ∅ ;x< data.length ;x ++){// 数字的循环输入

data[x]= Inpututil.getInt("清输入第**+”(×奇 1)+*个数字。”);

result[θ]= data[θ]; //最大值

result[θ]= data[θ]; //最小值

for (int x = θ ;x < data.length ;x ++){

if (data[x]> result[eθ]){

result[θ]= data[x];

if (data[x]< result[1]){

result[1]= data[x」;

return result ;


4、定义工厂类获取接口对象

图片12.png图片13.png

输入以下代码:

import cn.mldn.demo.service.INumberService;

import cn.mldn.demo.service.impl.NumbenServiceImpl;

public class Factory {

private Factory(){}

public static INumberService getInstance(){

return new NumberServiceImpl();


5.编写测试程序类

package cn.mldn.demo;

import cn.mldn.demo.factory.Factory;

import cn.mldn.demo.service.INumberService;

public class IOCaseDemo {

public static void main(String[] args){

INumberService numberService = Factory.getInstance();

int result []= numberService.stat(5);

System.out.print1n("最大值。”+ result[e]+"、最小值。”+ result[1]);

图片14.png

执行代码得

图片15.png图片16.png图片17.png

相关文章
|
5月前
|
算法 前端开发
619. 只出现一次的最大数字
619. 只出现一次的最大数字
51 0
|
3月前
|
容器
只出现一次的数字
只出现一次的数字
21 0
|
5月前
|
存储 算法 C++
c++数字
c++数字
26 1
|
4月前
|
人工智能 安全 算法
数字文盲
在数字时代,避免边缘化的关键是正视挑战、持续学习数字技能、关注伦理安全和推广数字素养教育。从基础操作到数据分析,提升数字素养能帮助我们适应变革,同时保护隐私和安全,确保在科技发展中不落伍,共建包容的数字社会。
|
5月前
|
存储 C++ 容器
Acwing.75 和为S的两个数字
Acwing.75 和为S的两个数字
137. 只出现一次的数字 II
137. 只出现一次的数字 II
48 0
|
编解码 人工智能 自然语言处理
SIGGRAPH2023|DreamFace:一句话生成 3D 数字人?
SIGGRAPH2023|DreamFace:一句话生成 3D 数字人?
174 0