不能键入 '串' 隐式转换为 “布尔”
问题描述:
VS显示我下面的错误:不能键入 '串' 隐式转换为 “布尔”
Syntax error,'(' expected)expected Cannot implicitly convert type 'string' to "bool" Possible mistaken empty statement
private void button3_Click(object sender, EventArgs e)
{
WebClient wc = new WebClient();
string ID1 = wc.DownloadString("https://www.dropbox.com/s/fjsyfzohhbbjmv1/1.txt?dl=1");
string password = textBox1.Text;
if password = ID1;
{
Form7 frm7 = new Form7();
frm7.Show();
}
}
答
它的语法错误,正确的,如下所示:
if(password == ID1)
{
Form7 frm7 = new Form7();
frm7.Show();
}
注意要点:
- 单等于运算符(
=
)用于如果要比较两个值,则必须使用双等于(==
),该值将比较LHS和RHS中的值,并返回true
如果两者都相等,它会给你false
。 - 您正在使用
if
条件的错误语法,if语句将始终期望条件的计算结果为true或false。并且应该包含在一对()
中。 - 由于两个变量是字符串,您可以使用
String.Equals()
方法比较
答
你需要把你周围的if语句括号,你应该使用比较==操作符。分号在这里也不需要。
if (password == ID1)
编译错误通常很有用。 '('预期是错误中的第一条主要建议,而这恰恰是错误的(你还需要使用==进行比较,而不是=)。 –
我不想在这里侮辱,但你可能会想回去学习一些关于C#的初学者教程。 – Krythic