Java創(chuàng)建int數(shù)組,將最大值與最小值位置交換輸出,代碼以及截圖如下:
成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的三都網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
import?java.util.Arrays;
public?class?Demo?{
public?static?void?main(String[]?args)?{
int[]?num?=?new?int[]?{?2,?1,?3,?4,?5?};
int[]?temp?=?new?int[num.length];//臨時(shí)數(shù)組?創(chuàng)建是為了重新排序比較大小時(shí)不影響原數(shù)組順序
for?(int?i?=?0;?i??num.length;?i++)?{
temp[i]?=?num[i];
}
Arrays.sort(temp);//升序排序
int?min?=?temp[0];//最小值
int?max?=?temp[temp.length?-?1];//最大值
for?(int?i?:?num)?{
//邏輯判斷,如果是最小值,輸出最大值,否則,相反。
if?(i?==?min)?{
System.out.println(max);
}?else?if?(i?==?max)?{
System.out.println(min);
}?else?{
System.out.println(i);
}
}
}
}
運(yùn)行示例:
BufferedReader[] buf = new BufferedReader[10]; //申請(qǐng)緩沖數(shù)組
int n;
int array[] = new int[10];
for (int i = 0; i 10; i++) { //賦值
buf[i] = new BufferedReader(new InputStreamReader(System.in)); //給每個(gè)緩沖區(qū)定義
do { //判斷是否是空串,如是則重新輸入
n = 1;
System.out.print("請(qǐng)輸入第" + (i + 1) + "個(gè)整數(shù):");
try { //建立一個(gè)異常捕獲
array[i] = Integer.parseInt(buf[i].readLine()); //執(zhí)行串變整數(shù)
} catch (NumberFormatException e) { //捕獲異常
System.out.println("數(shù)據(jù)輸入錯(cuò)誤請(qǐng)重新輸入");
n = 0;
} catch (IOException e) {
e.printStackTrace();
}
} while (n == 0);
}
return array;
}
public static void print() {
int[] ary = write();
int s;
System.out.println("\n你輸入的數(shù)組是:");
for (int i = 0; i 10; i++) { //輸出原數(shù)組
System.out.print(ary[i] + " ");
}
for (int i = 0; i 5; i++) { //對(duì)換
s = ary[i];
ary[i] = ary[9 - i];
ary[9 - i] = s;
}
System.out.println("\n對(duì)換后的數(shù)組是:");
for (int i = 0; i 10; i++) { //輸出對(duì)換后數(shù)組
System.out.print(ary[i] + " ");
}
System.out.println();
}
}12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
int[] nums = {1, 2, 3, 4, 5, 6};
for(int i = 0; i nums.length / 2; i++) {
int temp = nums[i];
nums[i] = nums[nums.length - i - 1];
nums[nums.length - i - 1] = temp;
}
for(int num : nums) {
System.out.println(num);
}
另外一種就倒敘吧。。哈哈。。
題目很簡(jiǎn)單,關(guān)鍵是思路
先找出最大值、最小值,并記住其位置
再做交換
具體參考下列代碼
import?java.util.Arrays;
public?class?Test?{
/**
?*?@param?args
?*/
public?static?void?main(String[]?args)?{
//?第一步:定義數(shù)組
int[]?arrs?=?{?6,?2,?9,?15,?1,?5,?20,?7,?18?};
//?第二步:找出最大值、最小值
int?maxIndex?=?0;?//?最大值初始索引?=?0
int?max?=?arrs[maxIndex];
int?minIndex?=?0;?//?最小值初始索引?=?0
int?min?=?arrs[minIndex];
for?(int?i?=?1;?i??arrs.length;?i++)?{
if?(arrs[i]??max)?{
max?=?arrs[i];
maxIndex?=?i;
}
if?(arrs[i]??min)?{
min?=?arrs[i];
minIndex?=?i;
}
}
System.out.printf("第[%d]個(gè)值是最大值:%d?\n",?(maxIndex?+?1),?max);
System.out.printf("第[%d]個(gè)值是最小值:%d?\n",?(minIndex?+?1),?min);
System.out.println("開(kāi)始交換最大值");
int?end?=?arrs[arrs.length?-?1];?//?記錄最后一個(gè)元素值
arrs[arrs.length?-?1]?=?max;?//?最后一個(gè)元素值?=?max
arrs[maxIndex]?=?end;?//?原最大值?=?最后一個(gè)值
int?start?=?arrs[0];?//?記錄第一個(gè)元素值
arrs[0]?=?min;?//?第一個(gè)元素值?=?min
arrs[minIndex]?=?start;?//?原最小值?=?第一個(gè)值
System.out.println("最終結(jié)果:");
System.out.println(Arrays.toString(arrs));
}
}
親,答題也需要時(shí)間和精力,如果回答滿意,請(qǐng)及時(shí)采納,你的合作是我回答的動(dòng)力??! 謝謝??!