我正在研究一个java问题,我正在创建一个模拟旧电视智力竞赛节目的节目,你打赌你的生活.游戏节目主持人Groucho Marx选择了一个秘密词,然后与参赛者聊了一会儿.如果任一参赛者在一个句子中使用该秘密词,他或她将赢得$ 100.00.
我的程序是为了检查这个秘密词.
这是我的代码:
import java.util.Scanner;
public class Groucho{
String secret;
Groucho(String secret){
this.secret = secret;
}
public String saysSecret(String line){
if(secret.equals(line)){
return("You have won $100! The secret word is: " + secret);
}
else{
return("false");
}
}
public void main(String[] args){
Scanner in = new Scanner(System.in);
String line = in.nextLine();
Groucho g = new Groucho(line);
while (in.hasNextLine()) {
Scanner input = new Scanner(System.in);
String guess = input.nextLine();
saysSecret(guess);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我认为他应该工作,但当我运行它时,我得到:
java.lang.NullPointerException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) …Run Code Online (Sandbox Code Playgroud) 想知道什么the first <E> in the <E> Set<E>意味着什么?
例如,在以下代码中;
我知道它是一个返回类型的公共静态方法Set<E>,但从未见过<E> Set<E>?
public static <E> Set<E> union(Set<E> s1, Set<E> s2) {
Set<E> result = new HashSet<E>(s1);
result.addAll(s2);
return result;
}
Run Code Online (Sandbox Code Playgroud)
任何有关相同的帮助/参考将不胜感激.