![](/img/trans.png)
[英]MySQL in Java - INSERT and DELETE statements not working properly
[英]Java IF statements not working properly
我的if语句存在一些问题。 错误显示此问题您能帮我找出问题所在吗? 汽车保险公司的主要任务是根据申请人的年龄和性别将保险分为4类。
这是代码:
String gender, age;
char group;
int genderint, ageint;
gender = JOptionPane.showInputDialog("Please specify your gender(1 for male, 0 for female)");
age = JOptionPane.showInputDialog("Please enter your age");
genderint = Integer.parseInt(gender);
ageint = Integer.parseInt(age);
if (gender = 0 || 1 && age = > 18 && < 26) {
group = "Category A";
} else if (gender = 0 && age = > 27 && < 60) {
group = "Category B";
} else if (gender = 1 && age = > 27 && < 60) {
group = "Category C";
} else if (gender = 0 || 1 && age = > 60) {
group = "Category D";
} else if (gender = 0 || 1 && age = < 18) {
JOptionPane.showMessageDialog(null, "Sorry, you're too young");
}
JOptionPane.showMessageDialog(null, "You have been assignet to" + group);
}
}
尝试这个,
==
进行比较 <=
和>=
之间没有空格 or
条件 <=
不是=<
,使用>=
代替=>
使用genderint
和ageint
变量INT比较
if ((genderint == 0 || genderint ==1) && (ageint >=18 && ageint < 26)) { group = "Category A"; } else if(genderint == 0 && ageint >= 27 && ageint < 60){ group = "Category B"; } else if(genderint == 1 && ageint >= 27 && ageint < 60) { group = "Category C"; } else if((genderint == 0 || genderint == 1) && ageint >= 60) { group = "Category D"; } else if((genderint == 0 || genderint ==1) && ageint <18){ JOptionPane.showMessageDialog(null,"Sorry, you're too young"); }
首先是...
>=
替换= >
,用<=
替换= >
=<
,用==
替换= >
=
(比较性别时)。 string
而在Java字符串中.equals()
进行比较,而不是以'=='进行比较。 您那里有几个问题:
= <
运算符被写入<=
(无空格, =
在<
之后); = >
(即>=
) gender = 0 || 1
gender = 0 || 1
必须为genderint == 0 || genderint == 1
genderint == 0 || genderint == 1
age = >27 && <60
应该是age >= 27 && age < 60
首先,你应该使用genderint
和ageint
在你的条件。
其次,您似乎正在发明一些不存在的运算符:
gender = 0 || 1
gender = 0 || 1
应该是(genderint == 0 || genderint == 1)
-比较需要==
age = >18 && <26
应该为ageint >= 18 && ageint < 26
大于或等于>=
//gender is string
if ((gender.equals("0") || gender.equals("1")) && (ageint >= 18 && ageint < 26))
{
//group is string
group = "Category A";
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.