【问题标题】:java cannot be applied to given typesjava不能应用于给定类型
【发布时间】:2014-04-03 15:00:03
【问题描述】:

所以我得到了这个错误:

java cannot be applied to given types; required: java.lang.String,int,int; found:java.lang.String; reason: actual and formal argument lists differ in lenghhs

当我在一个 Actor 中输入这个时(我使用的是 Greenfoot):

 public String getPunkte()
{
    String stringPunkte = Integer.toString(punkte);
    return(stringPunkte);
}

这个在另一个:

public void malePunkte()
{
    GreenfootImage img = new GreenfootImage(50, 10);
    img.drawString(getPunkte());

}

对于那些不明白的人: 这应该将 int(punkte)(在德语中表示点)转换为字符串,然后将一个演员的点数返回给另一个演员,然后显示该数字。

如果你还是不明白,或者你需要另一段代码,就问吧。

谢谢

【问题讨论】:

  • 第一个代码 sn-p 中的punkte 是什么? img.drawString 是否接受 String?
  • 我猜drawString 需要另外两个参数,字符串应该出现的位置。

标签: java drawstring greenfoot


【解决方案1】:

嗯,错误是不言自明的,不是吗?

你期望得到的是String, int, int,而你只是“提供”String

试试这个

public void malePunkte() {
    GreenfootImage img = new GreenfootImage();
    img.drawString(getPunkte(), 50, 10);
}

ps。在 return 语句中,您不需要用括号括起来要返回的变量。做吧

return stringpunkte

ps。我不知道 GreenfootImage 是什么 ;)

编辑:根据 - Gyro Gearless 提供的有用链接

www.greenfoot.org/files/javadoc/greenfoot/GreenfootImage.html

drawImage(GreenfootImage image, int x, int y) 
     Draws the given Image onto this image

和

GreenfootImage(int width, int height) 
      Create an empty (transparent) image with the specified size.

如您所见,drawImage 绘制在创建的“空”图像之上。因此,作为构造函数参数,您可以指定空图像的大小,而对于方法,您可以指定将在空图像之上的新图像的大小

【讨论】:

  • 但是没有GreenfootImage()无参数构造函数!见greenfoot.org/files/javadoc/greenfoot/GreenfootImage.html
  • @GyroGearless 是的,没错——正如我所说,我不知道 GreenfootImage 是什么;)。我只是查看了给出的错误。在这种情况下,OP 必须确定在创建此 footImage 的新实例时使用哪个构造函数。
猜你喜欢
  • 1970-01-01
  • 2019-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多