我需要将三个文本(字符串)值添加到if条件并检查所有三个输入是否=我的条件,然后显示一个消息框“True”。
简单的说法我需要检查if条件中的三个条件
注意:我已经创建了set并获取了类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
//
namespace KBS_Task3
{
class PredecessorDAO
{
public void check(predecessor predecessor)
{
string predic = predecessor.getPredic();
string arg1 = predecessor.getArg1();
string arg2 = predecessor.getArg2();
if(predic = "ISA" && (arg1="Car" && arg2="Vehicle"))
{
MessageBox.Show("TRUE");
}
}
}
}
上面提到的是PredecessorDAO类
从Predecessor Class调用get和set
Windows窗体有3个组合框字段。
答案 0 :(得分:2)
您有错误的运算符来检查是否相等。您使用assignment operator。但你需要的是equality operator。前者允许您为变量赋值,后者允许您比较2个字符串。
使用相等运算符,结果将是:
public void check(predecessor predecessor)
{
string predic = predecessor.getPredic();
string arg1 = predecessor.getArg1();
string arg2 = predecessor.getArg2();
if(predic == "ISA" && arg1 == "Car" && arg2 == "Vehicle")
{
MessageBox.Show("TRUE");
}
}
中间的括号不是必需的。
答案 1 :(得分:1)
如果我正确理解您的问题,您只想检查3变量是否等于3个值。您使用&&
运算符是正确的,但在执行条件运算时,您需要使用==
运算符而不是=
运算符。
如果要设置某个值,请使用=
运算符。
如果要检查一个对象是否与另一个对象相等,请使用==
运算符。
所以你应该能够取代:
if(predic = "ISA" && (arg1="Car" && arg2=" {
MessageBox.Show("TRUE");
}
使用:
if(predic == "ISA" && arg1 == "Car" && arg2 == "Vehicle") {
MessageBox.Show("TRUE");
}