是的,标题听起来很有趣,我正在为一个特别的人工作这个项目,我想通过给她写一个简单的程序来问她。我执行这个想法时遇到了一些麻烦。我脑子里有一个伪代码计划,但需要帮助执行它。我打算在控制台中输入是或否回答问题的答案,并让程序根据她的输入回答答案。我的想法是她输入是或否回答问题,然后说出如果输入为“是”然后打印此语句,否则如果“否”打印此语句。我目前在让if else部分工作时遇到问题。我不能在if语句中像字符串一样使用字符串,所以我需要一些帮助。我开始使用的代码:
import java.io.*;
public class ask {
public static void main(String [] args) throws IOException {
BufferedReader in = new BufferedReader
(new InputStreamReader(System.in));
String answer;
System.out.print("Would you like to go out with me? ");
System.out.flush();
answer = in.readLine();
Boolean hope = Boolean.valueOf("yes");
if (answer == hope) {
System.out.print("Awesome!");
}
else
System.out.print("Not awesome!");
}
}
显然我实际上并没有使用那个问题那些回答,我只是把它作为例子,只是为了让程序本身工作。我无法将答案与希望进行比较,因为一个是布尔值,另一个是字符串,我也不能用字符串做字符串,所以如何让它工作。有任何想法吗? 编辑:伙计们只是说,我知道她会说是的,这只是一个有趣的愚蠢的方式来问她。在这样做的时候,我将和她一起在那里,我会告诉她只使用是或否以便这样做,这只是一个简单的小项目。除了如何让这个工作之外,请不要任何建议或意见!谢谢!
答案 0 :(得分:2)
你可以使用string.equals()来比较字符串 例如。 “是”.equals(答案)用于比较是和变量答案
答案 1 :(得分:2)
您可以使用字符串比较方法equals或equalsIgnoreCase来比较用户输入。
试试这个
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String answer;
System.out.print("Would you like to go out with me? ");
System.out.flush();
answer = in.readLine();
if (answer.equalsIgnoreCase("YES")) { // Comparing the input with String.
System.out.print("Awesome!");
}
else
System.out.print("Not awesome!");
}
我建议您使用equalsIgnoreCase方法。由于用户可以输入yes,YES,yeS等。它只是忽略了这种情况。
答案 2 :(得分:1)
调查switch语句:来自tutorial
的信息然后,您可以选择“可能”,“不是现在”等选项,作为可能的响应,除了是和&号
答案 3 :(得分:0)
现在开始:只需将数组值替换为您的特定问题
import java.io.*;
import java.util.Scanner;
public class ask {
public static void main(String [] args) throws IOException {
String[] Questions={"2","3","4","5","6","7","8","9","10","J","Q","K","A"};
int min=0;
int max=Questions.length;
String answer = null;
Scanner input = new Scanner(System.in);
for(int i=0;i<Questions.length;i++){
int randomNum = min + (int)(Math.random()* max);
System.out.println("Your Question: " +Questions[randomNum] );
answer =input.next();
if (answer.equals("yes")){
System.out.println("Awesome Girl");
}
if (answer.equals("no")){
System.out.println("Bad Girl");
}
if (answer.equals("Hope")){
System.out.println("Hmmm..Some Hope Left");
}
} } }