2014-10-28 85 views
0

我正在做一个java课程介绍的家庭作业项目。为了练习调用方法和组织任务,我们必须创建两个气球对象s1和s2,并使用单独的java类中的方法修改它们的颜色和高度。在不传递参数的情况下创建setColor方法?

我所拥有的一切工作正常,但不完全的任务的要求。该表列出了方法声明,并且它们不能更改,只有它们中的代码才可以。

是,用于改变一个气球的颜色的方法是如public void setColor()被创建。不过,这对我来说并不合适。我现在使用public void setColor(String color)

我怎样才能改变一个气球对象的颜色属性,而不经过任何内容到方法的setColor?

+0

硬代码它正在改变颜色? – 2014-10-28 18:09:57

+3

我想说这是你的导师的错误。如果我是你,我会直接问他/她。 – RealSkeptic 2014-10-28 18:10:25

+0

帕特里克,你能解释一下“硬代码”是什么意思吗?我对Java仍然很陌生。 RealSkeptic,这是可能的,但我想我会先检查,看看是否我缺少什么。 – hunsbct 2014-10-28 18:14:15

回答

0

我完全同意@RealSkeptic但你的问题说,改变颜色不传递任何值,这意味着你需要生成颜色每个可以使用下面的代码的时间。我不确定这个代码是你需要的。

public void setColor() 
    { 
     int red,green,blue; 
     red = green = blue = 0; 
     Random random = new Random(); 
     int high = 255, low = 0; 
     red = random.nextInt(high-low)+low; 
     green = random.nextInt(high-low)+low; 
     blue = random.nextInt(high-low)+low; 
     color = new Color(red,green,blue); 
     //set this color to your balloon 
    } 
0

那么,你不能在方法中没有参数指定任何特定的颜色。你可以硬编码,以便颜色改变。

class Baloon { 

private String[] colors = {"blue", "red" , "green"}; 
private int index = 0; 
private String currentColor = colors[index]; 

     public void setColor(){ 

     index ++; 
     if (index = colors.length) 
      index = 0; 
     currentColor = colors[index]; 

     } 
} 
+0

这绝对有道理。谢谢! – hunsbct 2014-10-28 18:28:46

相关问题