If statement 是否有一种简洁的方法来组织程序不同部分中存在的单条件代码?

If statement 是否有一种简洁的方法来组织程序不同部分中存在的单条件代码?,if-statement,language-agnostic,code-organization,If Statement,Language Agnostic,Code Organization,例如,我想要这样的东西: If(condition) object.start(); // Do some unrelated processing If(condition) object.stop(); 作为一个简单的例子,我希望发生什么。有没有语言不可知的方法来组织这个问题,特别是当你有更多的条件行代码时?我想你问这个问题是因为条件很昂贵或者不可重复 一个典型的解决方案是在第一个IF中设置一个布尔变量,让第二个IF检查该布尔变量,而不是重新执行该条件 boolVar=false if

例如,我想要这样的东西:

If(condition) object.start();

// Do some unrelated processing

If(condition) object.stop();

作为一个简单的例子,我希望发生什么。有没有语言不可知的方法来组织这个问题,特别是当你有更多的条件行代码时?

我想你问这个问题是因为条件很昂贵或者不可重复

一个典型的解决方案是在第一个IF中设置一个布尔变量,让第二个IF检查该布尔变量,而不是重新执行该条件

boolVar=false
if (condition) {
  boolVar=true
  object.start()
}
// do unrelated stuff
if (boolVar) {
  object.stop()
}
另一个典型的解决方案如下:

if (condition) {
  object.start()
  doSomething()
  object.end()
} else {
  doSomething()
}

不要害怕简单的解决方案,如果它们足够好的话。:)

我想你问这个问题是因为条件昂贵或不可重复

一个典型的解决方案是在第一个IF中设置一个布尔变量,让第二个IF检查该布尔变量,而不是重新执行该条件

boolVar=false
if (condition) {
  boolVar=true
  object.start()
}
// do unrelated stuff
if (boolVar) {
  object.stop()
}
另一个典型的解决方案如下:

if (condition) {
  object.start()
  doSomething()
  object.end()
} else {
  doSomething()
}

不要害怕简单的解决方案,如果它们足够好的话。:)

我真的没有得到你想要的。。一段时间?一个switch case语句?Gewure,我想知道是否有一种方法可以在程序的不同部分执行基于相同条件的代码,而不必在每行之前重复相同的if条件。当然,可以将其“封装”到一个对状态变量进行操作的函数中。e、 g.:
def bla():if(statusVar==1):doSomething()else:return
我没有真正得到你想要的。。一段时间?一个switch case语句?Gewure,我想知道是否有一种方法可以在程序的不同部分执行基于相同条件的代码,而不必在每行之前重复相同的if条件。当然,可以将其“封装”到一个对状态变量进行操作的函数中。e、 g.:
def bla():if(statusVar==1):doSomething()else:return