Я пытаюсь преобразовать два объекта в целые числа, добавить их, а затем преобразовать их обратно в объекты и сохранить их в массиве объектов. Я, когда я пытаюсь добавить объекты обратно в массив, однако, я получаю исключение Array Store.type casting with objects
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
str = str.replaceAll("[^0-9]+", " ");
Object[] numbersArray = Arrays.asList(str.trim().split(" ")).toArray();
str = scanner.nextLine();
str = str.replaceAll("[^0-9]+", " ");
Object[] translateArray = Arrays.asList(str.trim().split(" ")).toArray();
for (int i = 0; i < numbersArray.length; i+=2) {
Object x = (Object) (Integer.parseInt(numbersArray[i].toString())
+ Integer.parseInt(translateArray[0].toString()));
Object y = (Object) (Integer.parseInt(numbersArray[(i+1)].toString())
+ Integer.parseInt(translateArray[1].toString()));
System.out.println(x.getClass().getName()); //how is this an integer???
System.out.println(y); //values get added correctly...
numbersArray[i] = (Object) x;
numbersArray[i+1] = (Object) y;
}
Как вы можете видеть, что я пытаюсь бросить тип объекта везде, где я могу, но numbersArray отказывается принять его. Я думаю, что моя проблема имеет какое-то отношение к операторам присваивания объектов x и y. Почему они все еще появляются как целые числа?
Каков результат, которого вы ожидаете? – Perdomoff