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如果未输入有效组合,则生成有意义的错误消息。