java中隨便定義一個數組時,需要先排序之后,然后輸出最大最小值,可以使用sort類進行排序,實例如下:
創新互聯從2013年成立,是專業互聯網技術服務公司,擁有項目成都網站設計、成都網站制作網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元嘉魚做網站,已為上家服務,為嘉魚各地企業和個人服務,聯系電話:028-86922220
public class ArrDemo{ public static void main(String[] args){ new ArrDemo().getPrint(); } private int[] getPrint(){ java.util.Scanner sc = new java.util.Scanner(System.in); try{ System.out.println("請輸入數組的個數。"); int[] arr = new int[sc.nextInt()]; for(int i = 0; i arr.length; i++){ System.out.println("請輸入第"+(i+1)+"個數。"); arr[i] = sc.nextInt(); } getArr(arr); }catch(Exception e){ System.err.println("對不起,您輸入的不是數字。"); } } private void getArr(int[] arr){ int sum = 0; java.util.Arrays.sort(arr); for(int i = 0;i arr.length; i++){ sum += arr[i]; } System.out.println("最大值是:"+arr[arr.length-1]); System.out.println("最小值是:"+arr[0]); System.out.println("和是:"+sum); }}
實現思路就是循環判斷找到最大值和最小值,保存起來和其他的值進行比較。代碼如下:
public class TestJava4_3
{
public static void main(String args[])
{
int i,min,max;
int A[]={74,48,30,17,62}; // 聲明整數數組A,并賦初值
min=max=A[0];
System.out.print("數組A的元素包括:");
int j =0;
int n =0 ;
for(i=0;iA.length;i++)
{
System.out.print(A[i]+" ");
if(A[i]max) // 判斷最大值
j =i;
max=A[i];
if(A[i]min) // 判斷最小值
min=A[i];
n =i
}
System.out.println("\n數組的最大值是:"+max+".數組的位置是:"+(j+1)); // 輸出最大值和最大值的位置
System.out.println("數組的最小值是:"+min+".數組的位置是:"+(n+1)); // 輸出最小值
}
}
import?java.util.Arrays;
import?java.util.Collection;
import?java.util.HashMap;
import?java.util.Map;
import?java.util.Set;
public?class?MinMapDemo?{
public?static?void?main(String[]?args)?{
MapInteger,?Integer?map?=?new?HashMapInteger,?Integer();
map.put(1,?8);
map.put(3,?12);
map.put(5,?53);
map.put(123,?33);
map.put(42,?11);
map.put(44,?42);
map.put(15,?3);
System.out.println(getMinKey(map));
System.out.println(getMinValue(map));
}
/**
*?求MapK,V中Key(鍵)的最小值
*?@param?map
*?@return
*/
public?static?Object?getMinKey(MapInteger,?Integer?map)?{
if?(map?==?null)?return?null;
SetInteger?set?=?map.keySet();
Object[]?obj?=?set.toArray();
Arrays.sort(obj);
return?obj[0];
}
/**
*?求MapK,V中Value(值)的最小值
*?@param?map
*?@return
*/
public?static?Object?getMinValue(MapInteger,?Integer?map)?{
if?(map?==?null)?return?null;
CollectionInteger?c?=?map.values();
Object[]?obj?=?c.toArray();
Arrays.sort(obj);
return?obj[0];
}
}
你好,有兩種方法:
第一種:全部輸入完之后,比較大小,最大的放一個變量,最小的放一個變量,循環比較大小,最后輸出。
第二種:制定兩個變量存放最大值和最小值,每次輸入都與最大值或者最小值比較,如果達到條件,就更新變量中的值。
以下程序主要是求得數組中的最大值和最小值:
public class a {
public static void main(String args[]) {
int a[]={84,40,16,3,10,49,28,76,94,70};
int n;
int min=a[0];
int i;
int max=a[0];
for(n=0;n=9;n++) {
if(maxa[n])
max=a[n];
}
for(i=0;i=9;i++) {
if(mina[i])
min=a[i];
}
System.out.print("max="+max);
System.out.print("min="+min);
}
}
該程序輸出結果:
數組A的元素包括:74 48 30 17 62數組的最大值是:74數組的最小值是:17
程序說明如下:
第6行聲明整數變量i 做為循環控制變量及數組的索引:另外也聲明存放最小值的變量min與最大值的變量max。
第7行聲明整型數組A,其數組元素有5個,其值分別為74、48、30、17、62。
第9行將min與max的初值設為數組的第一個元素。
第10~18行逐一輸出數組里的內容,并判斷數組里的最大值與最小值。
第19~20行輸出比較后的最大值與最小值。將變量min與max初值設成數組的第一個元素后,再逐一與數組中的各元素相比。比min小,就將該元素的值指定給min存放,使min的內容保持最??;同樣的,當該元素比max大時,就將該元素的值指定給max存放,使max的內容保持最大。for循環執行完,也就表示數組中所有的元素都已經比較完畢,此時變量min與max的內容就是最小值與最大值。
本文所述代碼為比較基礎的示例程序,相信對于Java的初學者仍有一定的借鑒價值。
傳統的做法就是for循環, 通過循環比較得到最小值,最大值. 通過累加的和除以個數等于平均值
比較新的做法就是Java8 的流操作. 可以更方便快捷的得到最大,最小和平均值
參考代碼如下
import?java.util.Arrays;
import?java.util.IntSummaryStatistics;
import?java.util.stream.Collectors;
public?class?ArrayDemo?{
public?static?void?main(String[]?args)?{
Integer[]?nums=?{6,5,7,8};
test1(nums);
System.out.println("----分割線---");
test2(nums);
}
//傳統的處理方法
public?static?void?test1(Integer[]?nums)?{
int?max=Integer.MIN_VALUE;
int?min=Integer.MAX_VALUE;
int?sum=0;
for?(Integer?num?:?nums)?{
if(nummax)?{
max=num;
}
if(nummin)?{
min=num;
}
sum+=num;
}
double?avg=sum*1.0/nums.length;
System.out.println("最大值:"+max);
System.out.println("最小值:"+min);
System.out.println("平均值:"+avg);
}
//Java8?開始的?stream操作
public?static?void?test2(Integer[]?nums)?{
IntSummaryStatistics?results?=?Arrays.stream(nums).collect(Collectors.summarizingInt(e-e));
int?max=results.getMax();//獲取最大值
System.out.println("最大值:"+max);
int?min=results.getMin();
System.out.println("最小值:"+min);
double?avg=results.getAverage();
System.out.println("平均值:"+avg);
}
}
本文題目:java代碼取樹圖最小項 java實現樹的遍歷
標題鏈接:http://vcdvsql.cn/article40/doscdeo.html
成都網站建設公司_創新互聯,為您提供網站策劃、網站導航、建站公司、網站建設、網站排名、電子商務
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯