我是Java的新手,我正在Greenfoot中编写这个简单的程序。 如果我写“h”程序说“相同”,那么之后我想写“i”并得到“相同”,基本上我想在我得到“相同”之后忽略“h”。我不确定这是怎么做的。
public void act()
{
String letterh = "h";
String letteri = "i";
String keyPress1 = Greenfoot.getKey();
String keyPress2 = Greenfoot.getKey();
if (keyPress1 != null)
{
if(keyPress1.equals(letterh))
{
System.out.println("Same");
}
else
{
System.out.println("Not same");
}
}
if (keyPress2 != null)
{
if(keyPress2.equals(letteri))
{
System.out.println("Same");
}
else
{
System.out.println("Not same");
}
}
}
答案 0 :(得分:0)
只需在调用时为letterh指定新值(当“h”写入至少一次时)。
public void act()
{
String letterh = "h";
String letteri = "i";
String keyPress1 = Greenfoot.getKey();
String keyPress2 = Greenfoot.getKey();
if (keyPress1 != null)
{
if(keyPress1.equals(letterh))
{
Called.call1();
}
}
if (keyPress2 != null)
{
if(keyPress2.equals(letteri))
{
Called.call2();
}
else
{
System.out.println("Not same");
}
}
}
使用以下代码创建一个新的类文件“Called.java”。
public class Called {
static String count="one"; //observe this static string usage
static void call1()
{
if(count.equals("one"))
{
System.out.println("Same");
count="somestring"; //call1() if condition will fail with this string not equal to "one"
}
else
{
System.out.println("Not Same");
}
}
static void call2()
{
System.out.println("Same");
}
}
这里要注意的主要是静态关键字用法。