開發者學堂課程【Java 進階程式設計:數字大小比較】學習筆記,與課程緊密聯系,讓使用者快速學習知識。
課程位址:
https://developer.aliyun.com/learning/course/20/detail/349數字大小比較
編寫 Java 程式,輸入 3 個整數,并求出 3 個整數的最大值和最小值。
如果要想進行數字的輸入處理,那麼應該保證輸入錯誤的時候可以重新輸入,為了可以達到重新使用的設計,應該準備一個單獨的輸入資料類。
1、定義一個輸入工具類
打開如圖,建立一個程式類:
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
2、定義資料的輸入處理
輸入以下代碼
package cnmldn.demo.service;
public interface INumberService
/**
*輸入資料并且傳回輸入資料的最大值與最小值
*@param count 表示要輸入資料的個數
*@return 包含有兩個内容,第一個是最大值,第二個是最小值
*/
public int[] stat(int count);
3、定義接口的實作子類
輸入代碼
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、定義工廠類擷取接口對象
輸入以下代碼:
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]);
執行代碼得