RT: an integer array. The maximum value is exchanged with the first value of the array. Two days before the minimum value is exchanged with the last value, it is interesting to see a question on the Internet. It is easy to be neglected. OK, the Code is as follows: [java] package org. wxp. sort; import junit. framework. testCase;/*** an integer array that exchanges the maximum value with the first value of the array, the minimum value is exchanged with the last value of the array to find the maximum and minimum values in the loop and Their subscript in the array. data is exchanged according to the table below. * Key: if the maximum and the first values are exchanged first, if the first value in the array is the minimum value, the subscript of the minimum value has changed when the minimum value is exchanged, * In this case, the subscript of the maximum value must be paid to the subscript of the minimum value before normal exchange. And vice versa; ** @ author Champion. wong **/public class Sort_01 extends TestCase {private int [] arr = {1, 3, 5, 6, 4, 9, 7 }; // define an array public void test () {int max = 0, min = 0; // maximum value, minimum value int i1 = 0, i2 = 0; // The following table lists the maximum values in the array. The minimum value is the subscript int temp = 0 in the array; // used for data exchange max = min = arr [0]; // The default maximum and minimum values are the first values of the array for (int I = 1; I <arr. length; I ++) {if (max <arr [I]) {// obtain the maximum and maximum subscript in the array max = arr [I]; i1 = I ;} if (min> arr [I]) {min = arr [I]; i2 = I ;}} // swap the maximum value with the first value of the array temp = arr [0]; arr [0] = arr [i1]; arr [i1] = temp; /** if the first value of the array is the minimum value, the position has been moved during the exchange process. The current minimum value is the position of the maximum value, that is, the position of the first moving value */if (min = arr [i1]) {i2 = i1 ;} // swap the minimum value with the last value of the array temp = arr [arr. length-1]; arr [arr. length-1] = arr [i2]; arr [i2] = temp; System. out. println (max + "=" + min); System. out. println (i1 + "=" + i2); for (int I = 0; I <arr. length; I ++) {System. out. print (arr [I] + "") ;}} the output result of the console is as follows: