Я довольно новичок в Java, и я потратил несколько часов, пытаясь разобраться в этом домашнем задании, но я еще не понял этого. Это то, что есть:
Заполните следующие определения для перегруженного одноставочного статического метода money, который возвращает строку, представляющую ее аргумент, в виде суммы денег. Например,Методы перегрузки в Java (EMACS)
, если вход представляет собой двойной 2.5, тогда он возвращает строку «$ 2,50»;
если вход является int 6, тогда он возвращает строку «$ 6,00»; и
если входной сигнал является строкой «6.125», тогда он возвращает строку «$ 6.13».
В моем курсе используется EIMACS, который большинство студентов презирает, и это позволяет использовать некоторые простые сочетания во время кодирования, но часто более вредно, чем полезно. До сих пор я получил это:
public static String money(int n)
{
double a = Integer.parseInt(n);
return money(n);
}
public static String money(double d)
{
double b = Double.parseDouble(d);
return money(d);
}
public static String money(String s)
{
return money(s);
}
public static void main(String[] args)
{
System.out.println(money(2.5));
}
Может кто-нибудь, пожалуйста, помогите мне выяснить, что я делаю неправильно? Спасибо!
Какая у вас проблема? (Хотя есть очевидная проблема, я не собираюсь рассказывать. Это ваша обязанность четко задавать вопрос) –
Все ваши методы называет себя, поэтому создавая бесконечный цикл - переосмысливая то, что вы хотите, чтобы эти методы возвращались. –
Зачем вам нужно разбирать двойное значение, которое уже удваивается? То же самое касается Int. Когда вы компилируете программу, сообщение об ошибке должно быть объяснено самостоятельно. –