我遇到过"!= true"给我一个不同于"= false"的输出的情况.我认为,如果某些事情不真实,那就自动就是假的.有人可以解释一下它是如何工作的吗?谢谢!
我在下面的代码中遇到了一些问题.我还在学习,我不知道如何修复它.
1.我想要做的是创建一个方法(GetInt)来存储变量,就像我想要在第二个方法(GetTrack)中那样进入我的main方法.
2.-当无效输入时我无法获取GetInt方法循环,我猜测try/catch和boolean thingy有问题
谢谢
//Get int Method
static public void GetInt(string sPrompt, int iMin, int iMax)
{
int iNum;
bool bError = false;
do
{
bError = true;
try
{
Console.Write(sPrompt);
iNum = int.Parse(Console.ReadLine());
if ((iNum < iMin) || (iNum > iMax))
{
Console.WriteLine("The value is out of range.");
bError = true;
}
}
catch (ArgumentException)
{
Console.WriteLine("An invalid number was entered, please try again.");
bError = true;
}
}
while (bError == false);
}
//Get Track Method
static …Run Code Online (Sandbox Code Playgroud) 我有以下方法,我想测试,int如果Boolean条件为真,它只是增加一个:
public void incrementIfConditionMet(Boolean personCheckedIn) {
int peopleInHotel=0;
if (personCheckedIn==true){
peopleInHotel++
}
}
Run Code Online (Sandbox Code Playgroud)
我是Java中单元测试的新手.我怎样才能unit test检查int是否已经增加?
当我尝试遵循java代码时
将false值赋值给我的布尔变量b并在同一语句上使用if条件
有来自eclipse IDE的消息
提示我"The local variable b is never read"
boolean b = false;
if (b = false) { // boolean assignment & usage on one statement
System.out.println("true");
}else {
System.out.println("false");
}
Run Code Online (Sandbox Code Playgroud)
尽管我使用我的变量,但请说明为什么会出现此消息?
注意:如果条件是b==false该消息将不会显示
如果HashMap为空,我检查.containsKey()
我得到一个空答案.
我的问题是,如果我想检查null,我会收到一条错误消息
if(containsKey == null || !containsKey){
Run Code Online (Sandbox Code Playgroud)
我收到错误消息
Operator '==' cannot be applied to 'boolean', 'null'
Run Code Online (Sandbox Code Playgroud)
有人能告诉我为什么会这样.我认为这应该有效
我当前的项目要求使用do-while循环和单独的值生成函数的程序.该程序要求输入无限量的输入,直到输入的最后两个数字之间的差值大于12.代码可以工作,但只有当它看起来很明显时.有时它会识别bool已经立即遇到并终止,有时我可以输入15个以上的数字直到它结束,如果它甚至在第一个位置结束.如果可能的话,我想保持我的代码与我目前的相似.我知道我需要一个先决条件,因为第一个输入没有什么可比较的,我正试图弄清楚这一点.
到目前为止这是我的代码:
bool TwelveApart(int x, int y);
int main()
{
int num1, num2;
cout << "Enter some integers: " << endl;
do
{
cin >> num1 >> num2;
TwelveApart(num1, num2);
} while (TwelveApart(num1, num2) == false);
cout << "The difference between " << num1 << " and " << num2 << " is greater than or equal to 12." << endl;
return 0;
}
bool TwelveApart(int x, int y)
{
if (abs(x - y >= 12))
{
return true;
} …Run Code Online (Sandbox Code Playgroud) 根据这个问题,sizeof(true)或者sizeof(false)是4字节,因为true它false是宏并在#include <stdbool.h>头文件中定义.
但是,这里有趣的程序输出.
#include <stdio.h>
#include <stdbool.h>
int main()
{
bool a = true;
printf("%zu\n", sizeof(a ? true : false, a));
/* ^^ -> expresion2 */
return 0;
}
Run Code Online (Sandbox Code Playgroud)
输出(现场演示):
1
Run Code Online (Sandbox Code Playgroud)
C11 6.5.15条件运算符(P4):
第一个操作数被评估; 在其评估与第二或第三操作数的评估之间存在一个序列点(以评估者为准).仅当第一个操作数不等于0时才评估第二个操作数; 仅当第一个操作数比较等于0时才评估第三个操作数; 结果是第二个或第三个操作数的值(无论哪个被评估),转换为下面描述的类型.110)
这里a是一个bool类型和赋值true,然后在sizeof运算符内,运算conditional符执行expression2因为a是a true.
因此,comma运算符部分(表达式3)未根据标准进行评估,而表达式2是宏.所以,根据那个问题,宏的输出是4字节,但在这里,程序的输出是1字节.
那么,为什么 只sizeof(a ? …
我试图在一个问题的真实陈述中做出"是"(或在这种情况下为"y").对以下问题的任何其他回应都被称为虚假陈述.
System.out.print("Do you smoke?(y/n): ");
boolean smoker = console.nextBoolean();
if (smoker.equalsIgnoreCase("y")) {
smoker = true;
} else {
smoker = false;
}
Run Code Online (Sandbox Code Playgroud)
我收到了错误
HealthPlan.java:32: error: boolean cannot be dereferenced
if (smoker.equalsIgnoreCase("y")) {
^
Run Code Online (Sandbox Code Playgroud)
有谁知道我怎么解决这个问题?我在网上搜索过,我不太确定.
我有以下类型的列表
public class Tag{
boolean selected;
public boolean isSelected() {
return selected;
}
public void setSelected(boolean selected) {
this.selected = selected;
}
String title;
String id;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
}
Run Code Online (Sandbox Code Playgroud)
创建列表如下
List<Tag> brandList = new ArrayList<>();
brandList.add(new Tag("1","A",false));
brandList.add(new Tag("2","v",true));
brandList.add(new Tag("3","f",false));
brandList.add(new Tag("4","g",true));
brandList.add(new Tag("5","y",true));
brandList.add(new Tag("6","e",true));
brandList.add(new Tag("7","r",false));
brandList.add(new …Run Code Online (Sandbox Code Playgroud) 我是编程的新手,我需要一些帮助来解决这个布尔表达式:
检查变量p的值是否在-100到100的范围内(包括极限值),但不在-10到10的范围内
这是我所做的:
int main (){
int p = 10;
bool comparacion = ((p >= -100) && (p <= 100)) && ((p !>= -10) && (p !<= 10))
cout<< comparacion;
Run Code Online (Sandbox Code Playgroud)
由于p在-10到10的范围内,所以结果应该为0,但是我得到了这个编译错误:
[Error] expected ')' before '!' token
Run Code Online (Sandbox Code Playgroud) boolean ×10
java ×6
if-statement ×3
c++ ×2
do-while ×2
c ×1
c# ×1
comma ×1
eclipse ×1
expression ×1
indefinite ×1
int ×1
junit ×1
list ×1
methods ×1
object ×1
sizeof ×1
try-catch ×1
unit-testing ×1