Передо мной стоит задача создания этого метода ниже с использованием двусвязного списка, но мой код не производит вывод.Как бы я позаботился об исправлении так, чтобы выводился ожидаемый результат?Я включаю
Статический метод добавления, который получит 2 InfiniteInts в качестве аргументов, сложит их и вернет новый InfiniteInt с итогом в нем.Если вы подумаете об этом и попробуете несколько примеров на бумаге, вы увидите, как это сделать - вы должны пройти каждый номер назад (используя предыдущую ссылку в двусвязном списке) и добавить каждую цифру, перенося на следующее место при необходимости,Убедитесь, что вы несете правильно и обрабатывать случай, когда один список длиннее другого.Этот код должен работать в программе драйвера:
InfiniteInt int1 = new InfiniteInt("24");
InfiniteInt int2 = new InfiniteInt("6");
InfiniteInt int3 = new InfiniteInt(“24”);
Integer int4 = new Integer(24);
System.out.println(int1.compareTo(int2)); //should print 1
System.out.println(int2.compareTo(int1)); //should print -1
System.out.println(int1.compareTo(int1)); //should print 0
System.out.println(int1.compareTo(int3)); //should print 0
System.out.println(int1.compareTo(int4)); //throw a new instance of
ClassCastException
Обратите внимание, что метод add создаст и вернет совершенно новый InfiniteInt.Таким образом, в коде он будет вызывать конструктор InfiniteInt по умолчанию;однако, это поместит 0 в новый экземпляр.Вам придется снять 0 вручную - иначе вы застрянете с дополнительным 0 в конце.Я пробовал код, который я предоставляю, но вывод равен 0.
Это мой код, который включает метод add, с которым у меня возникают проблемы: https://pastebin.com/DfTdP4sx
Это драйвер, предоставленный длянас: https://pastebin.com/GkUjMt5Q
И это также предоставленный нам двусвязный список: https://pastebin.com/xkrfXGzt
При тестировании моего кода мой результат равен 0, что означает, что числа не добавляются.