英文:
How to print a result depends on String value?
问题
我对Java非常陌生,想请您帮助我。
我有这段代码:
public class Person {
String name;
String gender;
public static void main(String[] args) {
Person person = new Person();
person.name("Max");
person.gender = "male";
Person person2 = new Person();
person2.name = "Lea";
person2.gender = "female";
}
以下是对下面方法的正确语法是什么?我应该将String转换为boolean吗?
if (String = male) {
System.out.println("You are man!");
} else {
System.out.println("You are woman!");
}
谢谢!
英文:
I am very new to Java and would ask you for help.
I have this:
public class Person {
String name;
String gender;
public static void main(String[] args) {
Person person = new Person();
person.name("Max");
person.gender = "male";
Person person2 = new Person();
person2.name = "Lea";
person2.gender = "female";
}
What should be the correct syntax for the following method? Should I convert String to boolean?
if (String = male) {
System.out.println("You are man!")
} else{
System.out.println("You are woman!")
Thank you!
答案1
得分: 0
以下是翻译好的内容:
正确的方式应该是:
if (person.gender.equals("male")) {
System.out.println("You are man!");
} else {
System.out.println("You are woman!");
}
在这里,您可以用您想要进行比较的变量来替换字符串。
英文:
The correct way would be
if (person.gender.equals("male")) {
System.out.println("You are man!")
} else{
System.out.println("You are woman!")
}
Where you can replace the String with the variable you would like to compare.
答案2
得分: 0
if (String = male)
不是有效的语法,甚至无法编译通过。您需要访问该字段,将其与字符串进行比较(male 不是字符串,"male" 才是),=
是赋值操作,但您想要进行相等性比较... 如果您尝试使用 ==
来比较字符串,请不要这样做。字符串的比较应该使用 equals()
方法来进行。如果您要将变量与常量字符串值进行比较,请在常量字符串值上调用 equals 方法,因为该变量可能为空,您不希望触发 NullPointerException
。所以,总结一下:假设 gender
字段是可访问的,应该这样写:if ("male".equals(myPerson.gender))
。
英文:
if (String = male)
is not valid syntax and won't even compile. You need to access the field, you need to compare it to a string (male is not a string, "male" is), =
assigns a value but you want to compare for equality... If you are ever tempted to compare strings with ==
don't. String comparisons are done with the equals()
method. And if you are going to compare a variable with a constant string value, call equals on the constant string value, because the variable can be null and you don't want to trigger a NullPointerException
. So, to sum up: if ("male".equals(myPerson.gender))
, assuming the gender
field is accessible.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论