我是java新手,因此,我不确定我是否做得对。我要做的是找出字符串列表中的项目数是偶数还是原始数据。
public class LearnAboutInputs {
public boolean isEven(String[] value) {
if (value.size() % 2 == 0 && boolean == true) {
return true;
} else {
return false;
}
}
}
答案 0 :(得分:5)
你放在那里是无效的。使其有效的最小编辑将是:
public class LearnAboutInputs {
public boolean isEven(String[] value) {
if(value.length % 2 == 0) {
return true;
}
else {
return false;
}
这假设您打算查看数组的长度,而不是查看字符串或字符串中的size()。
但是,if检查本身就是boolean,所以你可以更简洁地写一下:
public class LearnAboutInputs {
public boolean isEven(String[] value) {
return value.length % 2 == 0;
}
SeeDart和PoisonedYouth提出了关于空检查的一个好点,因此将其添加到简洁的示例中会导致:
public class LearnAboutInputs {
public boolean isEven(String[] value) {
return value != null && value.length % 2 == 0;
}
如果值为null,则语句短路为false,因此下半部分不会被评估,使其有效。
如果要返回类Boolean
而不是primitive boolean
的对象,请将返回类型从小写“boolean”更改为initial-cap“Boolean”字。方便的autoboxing功能将为您做好腿部工作。
public class LearnAboutInputs {
public Boolean isEven(String[] value) { // Return object rather than primitive.
return value != null && value.length % 2 == 0; // Autoboxing transforms the generated `boolean` primitive value into a `Boolean` object.
}
答案 1 :(得分:3)
您的代码几乎是正确的。我修复了一些语法错误,但我不确定您尝试使用boolean == true
做什么。确保您的输入有效也是一种很好的做法!
public class LearnAboutInputs {
public boolean isEven(String[] value) {
if (value == null) {
return false;
}
if (value.length % 2 == 0) {
return true;
}
else {
return false;
}
}
}
答案 2 :(得分:0)
这里有各种各样的东西。让我们重写:
public class LearnAboutInputs {
public boolean hasEvenLength(String[] value) {
if (value != null && value.length % 2 == 0) {
return true;
}
return false;
}
}
这里有合理的变化: