java newbie here.I我正在编写codebat上的数组问题。
您可以在codingbat找到此问题。
问题在于:"给定一组int,如果它不包含1,则返回true,或者它不包含4"
我使用boolean
和if-statement
解决了这个问题。
我的代码:
public boolean no14(int[] nums) {
boolean find1s=false;
boolean find4s=false;
for(int i=0;i<nums.length;i++){
if(nums[i]==1)
find1s=true;
if(nums[i]==4)
find4s=true;
}
if(ones && fours)
return false;
else
return true;
}
问题是当我尝试在我的第一个if语句中添加{}
时,总是需要我返回一些内容。所以我删除了{}
,这是对的。
那么我可以使用没有花括号的if语句吗?我什么时候能做到?
答案 0 :(得分:5)
在Java中,大括号({}
)仅在具有多个语句的条件块周围必需。否则,只有第一个是有条件地执行的。实质上:
if (something)
doThing1();
doThing2();
doThing3();
真的是
if (something){
doThing1();
}
doThing2();
doThing3();
虽然在这些单一语句条件部分中确实不是 ,但在任何情况下都使用它们是非常好的做法:使用大括号#39;它们需要它们是无害的和未来的证据,但是在你需要的地方不使用它们会在过去造成真正灾难性的错误。