我正在研究一个java问题,我正在创建一个模拟旧电视智力竞赛节目的程序, You Bet Your Life 。游戏节目主持人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 ("true");
} else {
return ("false");
}
}
public static void main(String[] args){
Scanner in = new Scanner(System.in);
}
}
在main方法中,我现在需要从标准输入的第一行(Groucho
)创建一个带有secret
字的新in.nextLine()
对象。
我不确定我是怎么做的?请有人解释一下! 谢谢! 英里
答案 0 :(得分:2)
答案 1 :(得分:1)
您可以使用以下语句阅读该行:
String line = in.nextLine();
然后,如果您想要第一个单词(例如),则可以拆分该行并创建一个新的Groucho对象。
String split = line.split(" ");
Groucho g = new Groucho(split[0]);
您可以在此处找到有关以下内容的更多信息:
答案 2 :(得分:0)
您将创建一个新的Groucho
对象并传入in.nextLine()
作为参数。这将由Groucho g = new Groucho( in.nextLine() );
答案 3 :(得分:0)
你需要看起来像这样的东西:
扫描仪输入=新扫描仪(System.in); //接受单词
String secretWord = in.nextLine(); //把它放在一个字符串
中格劳乔主持人=新格劳乔(secretWord); //创建一个Groucho对象并将其传递给
答案 4 :(得分:0)
in.nextLine()将占用整个输入的一行,因此您可以将其简单地传递给构造函数。
例如:
String inputWord = in.nextLine();
Groucho g = new Groucho(inputWord);
答案 5 :(得分:0)
在Scanner
类中,nextLine()
方法将下一行输入作为String
。您可以将该输入行保存为String
变量:
String line = in.nextLine();
现在你有一整行输入,你可以从中得到第一个字。
在一个句子中,每个单词都用空格与其他单词分开。在String
类中,split()
方法可以将String
拆分为较小字符串的数组,例如句子中的单词,具有给定的分隔符,例如空格(“”) ,您指定为参数:
String[] words = line.split(" ");
接下来,您可以通过选择适当的索引从数组中选择一个秘密字。
第一个字:
String chosenWord = words[1];
最后一句话:
String chosenWord = words[words.length - 1];
对于一个随机词:
String chosenWord = words[Math.floor(Math.random() * words.length)];
现在,您只需将密码作为参数传递给新的Groucho
构造函数:
Groucho secretWord = new Groucho(chosenWord);
这一步说明在每一步创建了一个新变量。您可以通过将多行代码组合到一个语句中来完成相同的任务,并避免创建不必要的变量。