Tag: if语句

Bash脚本 – 如果,elif,else语句问题

我似乎无法弄清楚下面这个if语句与elif有关的问题。 请记住, printf还在开发中,我只是还没有在声明中对它进行testing,所以很可能是错误的。 我得到的错误是: ./timezone_string.sh: line 14: syntax error near unexpected token `then' ./timezone_string.sh: line 14: `then' 声明就是这样。 if [ "$seconds" -eq 0 ];then $timezone_string="Z" elif[ "$seconds" -gt 0 ] then $timezone_string=`printf "%02d:%02d" $seconds/3600 ($seconds/60)%60` else echo "Unknown parameter" fi

如何检查一个string是否包含Python中列表中的一个元素

我有这样的东西: extensionsToCheck = ['.pdf', '.doc', '.xls'] for extension in extensionsToCheck: if extension in url_string: print(url_string) 我想知道什么是更优雅的方式来做到这一点在python(不使用for循环)? 我想这样的事情(如从C / C + +),但它没有工作: if ('.pdf' or '.doc' or '.xls') in url_string: print(url_string)

Java If语句的缩写

我知道有一种方法来写简短的forms的Java语句 if (city.getName() != null) { name = city.getName(); } else { name="N/A"; } 有没有人知道如何写一行以上5行以上的简短forms…

如果说明 – 短路评估与可读性

有时, if语句可能相当复杂或冗长,所以为了可读性,最好在if之前提取复杂的调用。 例如: if (SomeComplicatedFunctionCall() || OtherComplicatedFunctionCall()) { // do stuff } 进入这个 bool b1 = SomeComplicatedFunctionCall(); bool b2 = OtherComplicatedFunctionCall(); if (b1 || b2) { //do stuff } (提供的例子不是那么糟糕,只是为了说明…想象其他多个参数的调用等) 但是通过这个提取,我失去了短路评估(SCE)。 我真的每次都失去SCE吗? 是否有一些情况下编译器被允许“优化”,仍然提供SCE? 有没有方法保持第二个片段的可读性不会丢失SCE?

Bash如果多条件语句抛出一个错误

我试图写一个脚本,将检查两个错误标志,如果一个标志(或两者)被改变,它会回声 – 错误发生。 我的脚本: my_error_flag=0 my_error_flag_o=0 do something….. if [[ "$my_error_flag"=="1" || "$my_error_flag_o"=="2" ] || [ "$my_error_flag"="1" && "$my_error_flag_o"="2" ]]; then echo "$my_error_flag" else echo "no flag" fi 基本上应该是这样的: if ((a=1 or b=2) or (a=1 and b=2)) then display error else no error fi 我得到的错误是: line 26: conditional binary operator expected line 26: syntax error […]

为什么这个if语句,赋值和相等检查,评估为false?

如果 Java if语句具有赋值和相等性检查OR -d,它们是如何工作的? public static void test() { boolean test1 = true; if (test1 = false || test1 == false) { System.out.println("TRUE"); } else { System.out.println("FALSE"); } } 为什么这个打印FALSE?

Angularjs if-then-elseexpression式的构造

我可以以某种方式在angularjsexpression式中使用if-then-else构造(ternary-operator),例如我有函数$ scope.isExists(item)必须返回bool值。 我想要这样的东西, <div ng-repeater="item in items"> <div>{{item.description}}</div> <div>{{isExists(item) ? 'available' : 'oh no, you don't have it'}}</div> </div> 我知道我可以使用返回string的函数,我很有趣的可能性,使用if-then-else构造到expression式中。 谢谢。

一个Javavariables如何可以不同于自己?

我想知道这个问题是否可以在Java中解决(我是新的语言)。 这是代码: class Condition { // you can change in the main public static void main(String[] args) { int x = 0; if (x == x) { System.out.println("Ok"); } else { System.out.println("Not ok"); } } } 我在实验室中收到以下问题:如何在不修改条件本身的情况下跳过第一种情况(即使x == x条件为false)?

在Swift中的if语句中使用多个let-as

我打开字典中的两个值,在使用它们之前,我必须对它们进行投射并testing正确的types。 这就是我想到的: var latitude : AnyObject! = imageDictionary["latitude"] var longitude : AnyObject! = imageDictionary["longitude"] if let latitudeDouble = latitude as? Double { if let longitudeDouble = longitude as? Double { // do stuff here } } 但是如果让查询变成一个,我想打包两个。 所以这样的事情是这样的: if let latitudeDouble = latitude as? Double, longitudeDouble = longitude as? Double { // do stuff here […]

如何避免if / else如果将一个标题分为8个方向?

我有以下代码: if (this->_car.getAbsoluteAngle() <= 30 || this->_car.getAbsoluteAngle() >= 330) this->_car.edir = Car::EDirection::RIGHT; else if (this->_car.getAbsoluteAngle() > 30 && this->_car.getAbsoluteAngle() <= 60) this->_car.edir = Car::EDirection::UP_RIGHT; else if (this->_car.getAbsoluteAngle() > 60 && this->_car.getAbsoluteAngle() <= 120) this->_car.edir = Car::EDirection::UP; else if (this->_car.getAbsoluteAngle() > 120 && this->_car.getAbsoluteAngle() <= 150) this->_car.edir = Car::EDirection::UP_LEFT; else if (this->_car.getAbsoluteAngle() > 150 && this->_car.getAbsoluteAngle() […]