这是一个练习题: 两者之间有什么区别"如果"指令?
if let imageUrl = workout?.workoutImage?.imageUrl {
let resource = ImageResource(downloadURL: URL(string: imageUrl)!, cacheKey: imageUrl)
workoutImage.kf.setImage(with: resource)
// Set image height if image exists
imageHeightConstraint.constant = (screenWidth - screenInsets) * 0.666
} else {
// Set 0 if no image
imageHeightConstraint.constant = 0
}
答案 0 :(得分:3)
方括号是测试命令的同义词,而不是if test ! -f $f
我们可以使用if [ ! -f $f ]
。
注意:test
是一个表达和测试的命令或评价。
答案 1 :(得分:1)
没有区别。 void MainWindow::reply_Finished(QNetworkReply *reply)
{
data_storage.value(reply)->append("test");
data_storage.remove(reply);
//other
}
和test
现在在大多数(所有?;绝对是短划线,重击,yash,ksh,zsh,fish)贝壳中构建:
[
还有可执行版本:
$ type [
[ is a shell builtin
$ type test
test is a shell builtin
与$ which [
/usr/bin/[
$ which test
/usr/bin/test
不同,cd
(或test
)不需要是内置的(至少不是常见选项 - 某些shell的扩展要求它是内置),但是外部可执行文件的fork + exec开销对于[
测试的小事来说太多了。