这是我的代码:
import java.text.*;
public class template
{
static void triangle (int height) throws IOException
{
for (int i = 0 ; i <= height ; i++)
{
for (int k = 0 ; k < i ; k++)
{
System.out.print ("*");
}
System.out.println ("");
}
}
public static void main (String str[]) throws IOException
{
BufferedReader stdin = new BufferedReader (new InputStreamReader (System.in));
DecimalFormat df = new DecimalFormat ("#");
double height;
height = input (height);
triangle (height);
}
}
刚开始我想说我正在使用Ready to Program并且刚刚在9月份开始使用java。
其次,我想问为什么它会给我错误No applicable overload for the method named
三角形was found in type
模板。我想做的就是调用方法三角形,这样我就可以输出&#34; *&#34;。有时它会询问我是否需要三角形的重载方法。我不知道这意味着请帮助我,谢谢。我意识到灰色显示我已经打电话给#34;输入&#34;这很好我只需删除它,因为它在灰色区域之外并且看起来很混乱。
答案 0 :(得分:2)
您已声明了double
类型的变量,并且您正在调用一个带有int
类型参数的函数。您应该更改input
的声明,以便它还返回int
。
答案 1 :(得分:0)
import java.text.*;
public class template
{
static void triangle (double height) throws IOException //here is your error
{
for (int i = 0 ; i <= height ; i++)
{
for (int k = 0 ; k < i ; k++)
{
System.out.print ("*");
}
System.out.println ("");
}
}
public static void main (String str[]) throws IOException
{
BufferedReader stdin = new BufferedReader (new InputStreamReader (System.in));
DecimalFormat df = new DecimalFormat ("#");
double height = 0;
height = input (height);
triangle (height);
}
}
试试这个并告诉我。你定义的三角形方法是将int作为param,你所调用的是double。那是造成麻烦的原因。我改变了你的代码。请检查一下。