Java 怎么说char1=f和char2=t?

Java 怎么说char1=f和char2=t?,java,char,Java,Char,嗨,伙计们 这就是目前的情况。我怎样才能解决这个问题? 我想说c1是f或t和c2是f或t 任务: 编写一个程序,将两个字符(数据类型char)置于 标准输入。这两个字符表示布尔值 价值观字符“f”表示false,字符“t”表示true。根据此输入,标准输出上将显示带有提示文本的int值。这个 相关性如下表所示: 如果未输入有效的组合,则输入有意义的 生成错误消息。我想您是想问,如何验证用户是否输入了“t”或“f” 在这种情况下,可以使用while循环,用户输入正确的值后退出该循环,如下所示:

嗨,伙计们 这就是目前的情况。我怎样才能解决这个问题? 我想说
c1
f
t
c2
f
t

任务:

编写一个程序,将两个字符(数据类型char)置于 标准输入。这两个字符表示布尔值 价值观字符“f”表示false,字符“t”表示true。根据此输入,标准输出上将显示带有提示文本的int值。这个 相关性如下表所示:

如果未输入有效的组合,则输入有意义的
生成错误消息。

我想您是想问,如何验证用户是否输入了“t”或“f”

在这种情况下,可以使用while循环,用户输入正确的值后退出该循环,如下所示:

1st character 2nd character Output value
false         false         0
false         true          1
true          false         2
true          true          3

我想您是想问,如何验证用户是否输入了“t”或“f”

在这种情况下,可以使用while循环,用户输入正确的值后退出该循环,如下所示:

1st character 2nd character Output value
false         false         0
false         true          1
true          false         2
true          true          3
这是办不到的
不过,您可以使用布尔变量检查输入的有效性:

char c1;
char c2;
boolean correctInput = false;
while (!correctInput) {
    System.out.println("Enter t or f");
    c1 = (char) System.in.read(); 
    c2 = (char) System.in.read(); 
    if ((c1 == 't' || c1 == 'f') && (c2 == 't' || c2 == 'f')) {
        correctInput = true;
    }
}
//Rest of your code...
这里的
first
second
boolean
变量,只有在输入有效时才是
true

因此,如果它们都是
true
,则可以打印所需的输出
上述代码可以简化为:

boolean first = (c1 == 'f') || (c1 == 't');
boolean second = (c2 == 'f') || (c2 == 't');

if (first && second) {
    if (c1 == 'f' && c2 == 'f')
        System.out.println("Both are false: " + 0);
    else if (c1 == 'f' && c2 == 't')
        System.out.println("First is false and second is true: " + 1);
    else if (c1 == 't' && c2 == 'f')
        System.out.println("First is true and second is false: " + 2);
    else if (c1 == 't' && c2 == 't')
        System.out.println("Both are true: " + 3);
} else {
        System.out.println("No valid data entered");
}
同时不要这样做:

boolean first = (c1 == 'f') || (c1 == 't');
boolean second = (c2 == 'f') || (c2 == 't');

if (first && second) {
    if (c1 == 'f' && c2 == 'f')
        System.out.println("Both are false: " + 0);
    else if (c1 == 'f')
        System.out.println("First is false and second is true: " + 1);
    else if (c2 == 'f')
        System.out.println("First is true and second is false: " + 2);
    else
        System.out.println("Both are true: " + 3);
} else {
        System.out.println("No valid data entered");
}
如果语句错误,
末尾的分号

则无法执行此操作
if(c1 == 'f' && c2 == 't');
不过,您可以使用布尔变量检查输入的有效性:

char c1;
char c2;
boolean correctInput = false;
while (!correctInput) {
    System.out.println("Enter t or f");
    c1 = (char) System.in.read(); 
    c2 = (char) System.in.read(); 
    if ((c1 == 't' || c1 == 'f') && (c2 == 't' || c2 == 'f')) {
        correctInput = true;
    }
}
//Rest of your code...
这里的
first
second
boolean
变量,只有在输入有效时才是
true

因此,如果它们都是
true
,则可以打印所需的输出
上述代码可以简化为:

boolean first = (c1 == 'f') || (c1 == 't');
boolean second = (c2 == 'f') || (c2 == 't');

if (first && second) {
    if (c1 == 'f' && c2 == 'f')
        System.out.println("Both are false: " + 0);
    else if (c1 == 'f' && c2 == 't')
        System.out.println("First is false and second is true: " + 1);
    else if (c1 == 't' && c2 == 'f')
        System.out.println("First is true and second is false: " + 2);
    else if (c1 == 't' && c2 == 't')
        System.out.println("Both are true: " + 3);
} else {
        System.out.println("No valid data entered");
}
同时不要这样做:

boolean first = (c1 == 'f') || (c1 == 't');
boolean second = (c2 == 'f') || (c2 == 't');

if (first && second) {
    if (c1 == 'f' && c2 == 'f')
        System.out.println("Both are false: " + 0);
    else if (c1 == 'f')
        System.out.println("First is false and second is true: " + 1);
    else if (c2 == 'f')
        System.out.println("First is true and second is false: " + 2);
    else
        System.out.println("Both are true: " + 3);
} else {
        System.out.println("No valid data entered");
}
如果
语句错误,则
末尾的分号为

string combStr=string.Join(“,
if(c1 == 'f' && c2 == 't');
Console.ReadKey().KeyChar, Console.ReadKey().KeyChar ); int?ansOut=null; 如果(组合字符串替换(“f”和“)。替换(“t”)。长度<组合字符串长度) { 如果(combStr==“ff”) ansOut=0; 如果(combStr==“英尺”) ansOut=1; 如果(combStr==“tf”) ansOut=2; 如果(combStr==“tt”) ansOut=3; 控制台写入线(ansOut); }
string-combStr=string.Join(“,
Console.ReadKey().KeyChar,
Console.ReadKey().KeyChar
);
int?ansOut=null;
如果(组合字符串替换(“f”和“)。替换(“t”)。长度<组合字符串长度)
{                
如果(combStr==“ff”)
ansOut=0;
如果(combStr==“英尺”)
ansOut=1;
如果(combStr==“tf”)
ansOut=2;
如果(combStr==“tt”)
ansOut=3;
控制台写入线(ansOut);
}

什么时候应该是c1 f,什么时候应该是t?不知道你在问什么。您正在尝试验证用户输入吗?在这种情况下,只要在你的
if
语句中注意这个问题,如果我通过键盘输入的话。应该可以只输入f或t。F代表False,T代表True。您不能阻止用户输入任何其他内容。但您可以使用if语句检查用户是否输入了您期望的内容,并在这种情况下打印错误消息。您的问题不清楚(注释不属于问题描述)。使用选项阐明你想在问题本身中实现什么。什么时候应该是c1 f,什么时候应该是t?不确定你在问什么。您正在尝试验证用户输入吗?在这种情况下,只要在你的
if
语句中注意这个问题,如果我通过键盘输入的话。应该可以只输入f或t。F代表False,T代表True。您不能阻止用户输入任何其他内容。但您可以使用if语句检查用户是否输入了您期望的内容,并在这种情况下打印错误消息。您的问题不清楚(注释不属于问题描述)。使用option来阐明您想在问题本身中实现什么。这就是任务应该是什么:在标准输入上为两个字符(数据类型char)编写一个程序。这两个字符表示布尔值。字符“f”表示false,字符“t”表示true。根据此输入,标准输出上将显示带有提示文本的int值。下表显示了相关性:第一个字符第二个字符输出值false false 0 false true 1 true false 2 true true 3如果未输入有效的组合,则会生成一条有意义的错误消息。这就是任务的方式:通过标准输入将程序写入两个字符(数据类型char)。这两个字符表示布尔值。字符“f”表示false,字符“t”表示true。根据此输入,标准输出上将显示带有提示文本的int值。下表显示了相关性:第一个字符第二个字符输出值false false 0 false true 1 true false 2 true true 3如果未输入有效组合,则生成有意义的错误消息。