您好,登錄后才能下訂單哦!
一、需求分析:
1、輸入一個數組-----------------------------------------》程序要接收一組輸入的數組,沒有明確這組數組有多大
2、一個數字組成的數組--------------------------------》接收到的數組只能是數字
3、輸出接收到數組的最大值和最小值--------------》得到最大和最小值
二、技術難點
1、怎么從用戶輸入獲取到一個數字數組?
可以用BufferedReader類:從字符輸入流中讀取文本,緩沖各個字符,從而實現字符、數組和行的高效讀取。
2、怎么得到最大最小值?
這個好辦最簡單就是遍歷數組嘛
代碼實現:
package com.itheima; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; /** * 6、 輸入一個數字組成的數組,輸出該數組的最大值和最小值 * * @author 281167413@qq.com */ public class Test6 { public static void main(String[] args) throws IOException { System.out.println("請輸入一組數字:"); // 創建輸入流對象 BufferedReader reader = new BufferedReader(new InputStreamReader( System.in)); // 讀取一行信息 String input = reader.readLine(); // 以空格為分隔符,轉換成數組 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數組的資源 // 獲取接收到的數組里面的最大、最小數值 // 獲取最大值和獲取最小值分別寫成了兩個函數的話,就等于是多遍歷了一遍這個數組,效率降低了,可擴展性增強了 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; } }
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。