java数组找最大值和最小值并输出下标位置请帮我用代码写出来
时间: 2024-05-06 10:19:22 浏览: 15
好的,以下是Java代码实现:
```
public class ArrayMaxMin {
public static void main(String[] args) {
int[] arr = {5, 3, 8, 2, 9, 1};
int max = arr[0], min = arr[0], maxIndex = 0, minIndex = 0;
for(int i = 1; i < arr.length; i++) {
if(arr[i] > max) {
max = arr[i];
maxIndex = i;
}
if(arr[i] < min) {
min = arr[i];
minIndex = i;
}
}
System.out.println("最大值:" + max + ",位置:" + maxIndex);
System.out.println("最小值:" + min + ",位置:" + minIndex);
}
}
```
运行结果:
```
最大值:9,位置:4
最小值:1,位置:5
```
相关问题
java求数组的最大值和最小值并显示下角标
可以使用for循环遍历数组,同时记录最大值和最小值及其下标,代码示例如下:
int[] arr = {1, 2, 3, 4, 5};
int max = arr[0];
int min = arr[0];
int maxIndex = 0;
int minIndex = 0;
for (int i = 1; i < arr.length; i++) {
if (arr[i] > max) {
max = arr[i];
maxIndex = i;
}
if (arr[i] < min) {
min = arr[i];
minIndex = i;
}
}
System.out.println("最大值为:" + max + ",下标为:" + maxIndex);
System.out.println("最小值为:" + min + ",下标为:" + minIndex);
交换数组的最大值和最小值java
以下是交换数组的最大值和最小值的Java代码示例:
```java
public static void swapMinMax(int[] arr) {
int maxIndex = 0;
int minIndex = 0;
int n = arr.length;
// 找到最大值和最小值的下标
for (int i = 1; i < n; i++) {
if (arr[i] > arr[maxIndex]) {
maxIndex = i;
}
if (arr[i] < arr[minIndex]) {
minIndex = i;
}
}
// 交换最大值和最小值
int temp = arr[maxIndex];
arr[maxIndex] = arr[minIndex];
arr[minIndex] = temp;
}
```
使用示例:
```java
public static void main(String[] args) {
int[] arr = {5, 3, 9, 1, 7};
System.out.println(Arrays.toString(arr)); // [5, 3, 9, 1, 7]
swapMinMax(arr);
System.out.println(Arrays.toString(arr)); // [1, 3, 9, 5, 7]
}
```