Вроде все верно: цикл ищет минимум, сохраняет в x;
Поиском по Map'у ищем значение, получаем его ключ (индекс в массиве) и сохраняем в y.
P.S. подозреваю, что такое сохранение в map - костыль, но не сообразил как сделать оптимально.
package com.javarush.task.task12.task1233;
/*
Изоморфы наступают
*/
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
public class Solution {
public static void main(String[] args) throws Exception {
int[] data = new int[]{1, 2, 3, 5, -2, -8, 0, 77, 5, 5};
Pair<Integer, Integer> result = getMinimumAndIndex(data);
System.out.println("The minimum is " + result.x);
System.out.println("The index of the minimum element is " + result.y);
}
public static Pair<Integer, Integer> getMinimumAndIndex(int[] array) {
if (array == null || array.length == 0) {
return new Pair<Integer, Integer>(null, null);
}
//напишите тут ваш код
int x = array[0];
for (int i = 1; i < array.length; i++){
if(x > array[i]) x = array[i];
}
Map<Integer, Integer> intMap = new HashMap<>();
intMap.put(0, 1);
intMap.put(1, 2);
intMap.put(2, 3);
intMap.put(3, 5);
intMap.put(4, -2);
intMap.put(5, -8);
intMap.put(6, 0);
intMap.put(7, 77);
intMap.put(8, 5);
intMap.put(9, 5);
int y = 0;
for (Map.Entry<Integer, Integer> entry : intMap.entrySet()){
if (entry.getValue().equals(x)){
y = entry.getKey();
}
}
return new Pair<Integer, Integer>(x, y);
}
public static class Pair<X, Y> {
public X x;
public Y y;
public Pair(X x, Y y) {
this.x = x;
this.y = y;
}
}
}