Java If代码结构
我知道基本的if语句结构,但这让我很困惑Java If代码结构,java,if-statement,Java,If Statement,我知道基本的if语句结构,但这让我很困惑 public void setHandleName(String handle){ if(handle.length() < 10){ return; } handleName = handle; } if语句应该在哪里 if(true){ //do stuff; } 对不起,我的解释含糊不清,英语不是我的母语。 任何帮助都将不胜感激! 谢谢 它不返回任何内容(如void返回类型所示)。它将handle
public void setHandleName(String handle){
if(handle.length() < 10){
return;
}
handleName = handle;
}
if语句应该在哪里
if(true){ //do stuff; }
对不起,我的解释含糊不清,英语不是我的母语。
任何帮助都将不胜感激!
谢谢 它不返回任何内容(如
void
返回类型所示)。它将handleName
的值设置为handle
,但仅当handle.length()
大于或等于10时。如果handle.length()
小于10,它将只从该方法返回
,而不执行任何操作。它不返回任何内容(如void
返回类型所示)。它将handleName
的值设置为handle
,但仅当handle.length()
大于或等于10时。如果handle.length()
小于10,它将只从方法返回
,不再执行任何操作
当handle.length()大于10时,它返回值
不,没有。它从不返回任何值,方法的类型为void
。如果名称长度至少为10个字符,则设置handleName
实例字段(如果名称长度小于10个字符,则不设置)
,当handle.length()小于10时,它不应该返回值吗
否,if
清楚地显示“如果句柄长度小于10,则返回”,这是在设置handleName
之前<代码>返回立即退出该功能,绕过随后可能出现的任何代码
为什么这个if语句正好相反
if(false){ //do stuff; }
if(false){ //do stuff; }
因为在这种情况下,逻辑在if
块中;在第一个示例中,在if
块之后,提前返回
s(绕过函数的其余部分)。也就是说,您的第一个示例是:
if (!condition) {
return;
}
doSomething();
但你的第二个例子是
if (condition) {
doSomething();
}
以下是第一个示例的注释版本:
public void setHandleName(String handle){ // Accept a `handle` string parameter
if(handle.length() < 10){ // If the length of `handle` is less
// than 10, enter the block
return; // Leave this method immediately, without
// doing anything else
} // This is the end of the conditional bit
handleName = handle; // Set `handleName` to `handle`
}
当handle.length()大于10时,它返回值
不,没有。它从不返回任何值,方法的类型为void
。如果名称长度至少为10个字符,则设置handleName
实例字段(如果名称长度小于10个字符,则不设置)
,当handle.length()小于10时,它不应该返回值吗
否,if
清楚地显示“如果句柄长度小于10,则返回”,这是在设置handleName
之前<代码>返回立即退出该功能,绕过随后可能出现的任何代码
为什么这个if语句正好相反
if(false){ //do stuff; }
if(false){ //do stuff; }
因为在这种情况下,逻辑在if
块中;在第一个示例中,在if
块之后,提前返回
s(绕过函数的其余部分)。也就是说,您的第一个示例是:
if (!condition) {
return;
}
doSomething();
但你的第二个例子是
if (condition) {
doSomething();
}
以下是第一个示例的注释版本:
public void setHandleName(String handle){ // Accept a `handle` string parameter
if(handle.length() < 10){ // If the length of `handle` is less
// than 10, enter the block
return; // Leave this method immediately, without
// doing anything else
} // This is the end of the conditional bit
handleName = handle; // Set `handleName` to `handle`
}
这是否使代码实际执行的操作更清晰
public void setHandleName(String handle){
if(handle.length() >= 10){
handleName = handle;
}
// otherwise handleName is not set, and the method exits
// nothing is returned because the method is 'void'
}
请注意,
if(false){//do stuff;}
将永远不会“do stuff”这是否使代码实际上在做什么更清楚
public void setHandleName(String handle){
if(handle.length() >= 10){
handleName = handle;
}
// otherwise handleName is not set, and the method exits
// nothing is returned because the method is 'void'
}
请注意,
if(false){//do stuff;}
将从不执行任务您的方法的返回类型为void,因此在任何情况下都不会返回任何内容。它正在有条件地更新handleName
。您的方法的返回类型为void,因此在任何情况下都不会返回任何内容。它正在有条件地更新handleName
。