java 輸入一個(gè)數(shù)字組成的數(shù)組(輸出該數(shù)組的最大值和最小值)
一、需求分析:
1、輸入一個(gè)數(shù)組-----------------------------------------》程序要接收一組輸入的數(shù)組,沒有明確這組數(shù)組有多大
2、一個(gè)數(shù)字組成的數(shù)組--------------------------------》接收到的數(shù)組只能是數(shù)字
3、輸出接收到數(shù)組的最大值和最小值--------------》得到最大和最小值
二、技術(shù)難點(diǎn)
1、怎么從用戶輸入獲取到一個(gè)數(shù)字?jǐn)?shù)組?
可以用BufferedReader類:從字符輸入流中讀取文本,緩沖各個(gè)字符,從而實(shí)現(xiàn)字符、數(shù)組和行的高效讀取。
2、怎么得到最大最小值?
這個(gè)好辦最簡(jiǎn)單就是遍歷數(shù)組嘛
代碼實(shí)現(xiàn):
package com.itheima;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
/**
* 6、 輸入一個(gè)數(shù)字組成的數(shù)組,輸出該數(shù)組的最大值和最小值
*
* @author 281167413@qq.com
*/
public class Test6 {
public static void main(String[] args) throws IOException {
System.out.println("請(qǐng)輸入一組數(shù)字:");
// 創(chuàng)建輸入流對(duì)象
BufferedReader reader = new BufferedReader(new InputStreamReader(
System.in));
// 讀取一行信息
String input = reader.readLine();
// 以空格為分隔符,轉(zhuǎn)換成數(shù)組
String[] numbers = input.split(" ");
int[] values = new int[numbers.length];
for (int j = 0; j < numbers.length; j++) {
values[j] = Integer.parseInt(numbers[j]);
}
numbers = null; // 回收numbers數(shù)組的資源
// 獲取接收到的數(shù)組里面的最大、最小數(shù)值
// 獲取最大值和獲取最小值分別寫成了兩個(gè)函數(shù)的話,就等于是多遍歷了一遍這個(gè)數(shù)組,效率降低了,可擴(kuò)展性增強(qiáng)了
System.out.printf("MAX:%d, MIN:%d\n", getMax(values), getMin(values));
}
public static int getMax(int[] values) {
int tmp = Integer.MIN_VALUE;
if (null != values) {
tmp = values[0];
for (int i = 0; i < values.length; i++) {
if (tmp < values[i]) {
tmp = values[i];
}
}
}
return tmp;
}
public static int getMin(int[] values) {
int tmp = Integer.MIN_VALUE;
if (null != values) {
tmp = values[0];
for (int i = 0; i < values.length; i++) {
if (tmp > values[i]) {
tmp = values[i];
}
}
}
return tmp;
}
}
相關(guān)文章
Java response響應(yīng)體和文件下載實(shí)現(xiàn)原理
這篇文章主要介紹了Java response響應(yīng)體和文件下載實(shí)現(xiàn)原理,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05
MyBatisPlus使用@TableField注解處理默認(rèn)填充時(shí)間的問題
這篇文章主要介紹了MyBatisPlus使用@TableField注解處理默認(rèn)填充時(shí)間的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01
Java設(shè)計(jì)模式之單一職責(zé)原則精解
設(shè)計(jì)模式(Design pattern)代表了最佳的實(shí)踐,通常被有經(jīng)驗(yàn)的面向?qū)ο蟮能浖_發(fā)人員所采用。設(shè)計(jì)模式是軟件開發(fā)人員在軟件開發(fā)過程中面臨的一般問題的解決方案。本篇介紹設(shè)計(jì)模式七大原則之一的單一職責(zé)原則2022-02-02
Java日志框架打印應(yīng)用程序日志代碼的執(zhí)行情況分析
在配置INFO日志級(jí)別時(shí),日志器(logger)中debug級(jí)的日志代碼仍會(huì)被執(zhí)行,只是是否輸出取決于配置的日志級(jí)別,本文基于Java 1.8、SLF4J 1.7.25和Log4j 2.20.0進(jìn)行實(shí)驗(yàn),詳述了日志框架處理日志代碼的機(jī)制,感興趣的朋友一起看看吧2024-10-10
Mybatis 動(dòng)態(tài)sql的編寫與開啟二級(jí)緩存
二級(jí)緩存是Mapper級(jí)別的緩存,多個(gè)SqlSession去操作同一個(gè)Mapper中的SQL語句,則這些SqlSession可以共享二級(jí)緩存,即二級(jí)緩存是跨SqlSession的,這篇文章主要介紹了Mybatis 動(dòng)態(tài)sql的編寫|開啟二級(jí)緩存,需要的朋友可以參考下2023-02-02
java中replaceAll替換圓括號(hào)實(shí)例代碼
正則表達(dá)式的保留字符主要有:圓括號(hào)、方括號(hào)、花括號(hào)、豎線、橫線、點(diǎn)號(hào)、加號(hào)、星號(hào)、反斜桿等等,下面這篇文章主要給大家介紹了關(guān)于java中replaceAll替換圓括號(hào)的相關(guān)資料,需要的朋友可以參考下2022-10-10
SpringBoot內(nèi)嵌tomcat處理有特殊字符轉(zhuǎn)義的問題
這篇文章主要介紹了SpringBoot內(nèi)嵌tomcat處理有特殊字符轉(zhuǎn)義的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06
SpringBoot @CompentScan excludeFilters配置無效的解決方案
這篇文章主要介紹了SpringBoot @CompentScan excludeFilters配置無效的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11

