我有这个代码:
if (y == a && y == b && y == c && y == d ...)
{
...
}
Run Code Online (Sandbox Code Playgroud)
是否有某种形式的速记,以便我可以像这样重写它?
if(y == (a && b && c && d ...))
{
...
}
Run Code Online (Sandbox Code Playgroud)
功能应该完全相同.我只是在找一些看起来不那么混乱的东西.
编辑很抱歉没有澄清,所有变量都是整数.我在寻找一个较短的方式来确保a,b,c,d,...一律平等y.
我正在研究有关试验部门主题的一些信息,我在Python中遇到了这个符号:
//=
Run Code Online (Sandbox Code Playgroud)
我从这里得到了这个例子中的代码说:
n //= p
Run Code Online (Sandbox Code Playgroud)
我不知道这是什么意思,我的研究继续在网页方面带来糟糕的结果.
任何帮助表示赞赏; 谢谢.
如何在Symfony2中将逻辑实体名称解析为完整的类名?喜欢MyAcmeBundle:User到My\AcmeBundle\Entity\User.
如果我有一个包含任意长度整数的大型数据文件需要按其第二个字段排序:
1 3 4 5
1 4 5 7
-1 34 56 7
124 58394 1384 -1938
1948 3848089 -14850 0
1048 01840 1039 888
//consider this is a LARGE file, the data goes on for quite some time
Run Code Online (Sandbox Code Playgroud)
并且我呼吁qsort成为我的选择武器,在我的排序功能中,将使用速记IF为数据整理所需的总体时间提供显着的性能提升?或简称IF仅用作组织代码的便利工具?
num2 = atoi(Str);
num1 = atoi(Str2);
LoggNum = (num2 > num1) ? num2 : num1; //faster?
Run Code Online (Sandbox Code Playgroud)
num2 = atoi(Str);
num1 = atoi(Str2);
if(num2 > num1) //or the same?
LoggNum = num2;
else
LoggNum = num1;
Run Code Online (Sandbox Code Playgroud) var foo = true;
function doThis() {alert("do this");}
function doThat() {alert("do that");}
// fine
if(foo) {
doThis();
doThat();
}
// fine
foo && (doThis());
// NO, syntax error
foo && (doThis(); doThat(););
Run Code Online (Sandbox Code Playgroud)
这甚至可能吗?或者我根本不应该这样做?
我想实现这个目标:
if (full) {
return
}
else{
// nuthin
}
Run Code Online (Sandbox Code Playgroud)
但更短一些,比如:
full ? return : null;
Run Code Online (Sandbox Code Playgroud)
但这不起作用..
我可以做:
if (full) { return }
Run Code Online (Sandbox Code Playgroud)
但我更喜欢三元
我期待类似的full ? return工作......
我基本上想在值为 true 时突破当前函数...是否有更好/有效的速记可用?
javascript refactoring shorthand-if ternary-operator shorthand
我知道这个if语句的正常用例是例如
var string = boolean ? "this" : "that";
Run Code Online (Sandbox Code Playgroud)
我在编辑器中使用jhint,当我尝试类似的东西时
boolean ? array.push("this") : array.slice("that",1);
Run Code Online (Sandbox Code Playgroud)
jshint抛出(W030)"预期赋值或函数调用,而是看到一个表达式"
到目前为止,代码总是很好,但也许我只是幸运.
所以我的问题是,为什么我不应该使用这种模式,什么是另类?因为写作
if(boolean){
array.push("this");
} else {
array.splice("that",1);
}
Run Code Online (Sandbox Code Playgroud)
对于这么短的指示真的给了我毛骨悚然.
谢谢.
我有一个相当复杂的对象,
MyNamespace::MyClass::MySubStruct
Run Code Online (Sandbox Code Playgroud)
有一个
enum
{
ONE = 1,
TWO = 2
};
Run Code Online (Sandbox Code Playgroud)
现在我有另一个具有模板参数的类
template <unsigned int x> class Foo;
Run Code Online (Sandbox Code Playgroud)
目前我按如下方式初始化B.
Foo<MyNamespace::MyClass::MySubStruct::ONE> MyFoo
Run Code Online (Sandbox Code Playgroud)
这很好,但它有点太冗长,特别是考虑到我将这个类初始化了大约一百次.
我想写一些类似的东西:
typedef MyNamespace::MyClass::MySubStruct::ONE MyONE
Foo<MyOne> MyFoo
Run Code Online (Sandbox Code Playgroud)
当然,这不会编译,也不会将它声明为类中的const unsigned int.如何优雅地做到这一点?
请帮我找出为什么 CSS 变量中的算术运算会破坏代码。
我从一个带有一个规则的简单 CSS 文件开始:
html {
font: 16px/32px Arial;
}
Run Code Online (Sandbox Code Playgroud)
在浏览器中,它是这样写的:字体大小为 16px,行高为 32px,字体本身为 Arial。
然后我添加了变量:
html {
--default-font-size: 16px;
--default-line-height: var(--default-font-size);
font: var(--default-font-size)/var(--default-line-height) Arial;
}
Run Code Online (Sandbox Code Playgroud)
它也有效;认为行高是 16px,因为我让它等于字体大小。
但是当我乘以第二个值时,字体声明停止工作:
html {
--default-font-size: 16px;
--default-line-height: var(--default-font-size) * 2;
font: var(--default-font-size)/var(--default-line-height) Arial; /* not working! */
}
Run Code Online (Sandbox Code Playgroud)
所有属性font-size、line-height和font-family都设置为浏览器默认值。
如果我将font速记属性拆分为三个不同的速记属性,则代码再次正常工作:
html {
--default-font-size: 16px;
--default-line-height: var(--default-font-size) * 2;
font-size: var(--default-font-size);
line-height: var(--default-line-height);
font-family: Arial;
}
Run Code Online (Sandbox Code Playgroud)
前面的代码示例有什么问题,有没有办法让它在不拆分成普通属性的情况下工作?
我以前在 ac# 教程中看到过它,但我似乎找不到了。
以这段代码为例:
public class Order
{
public OrderItem Item { get; set; }
}
public class OrderItem
{
public string Name { get; set; }
}
public void SomeMethod(object obj)
{
if(obj is Order && ((Order)obj).Item !=null)
{
Console.WriteLine(((Order)obj).Item.Name);
}
}
Run Code Online (Sandbox Code Playgroud)
我正在寻找的简写看起来像这样
public void SomeMethod(object obj)
{
if (myObj = obj is Order && myItem = myObj.Item != null)
{
Console.WriteLine(myItem.Name);
}
}
Run Code Online (Sandbox Code Playgroud)
我无法找到正确的语法
shorthand ×10
if-statement ×4
javascript ×3
c# ×2
c++ ×2
c ×1
comparison ×1
css ×1
css-calc ×1
doctrine-orm ×1
enums ×1
performance ×1
python ×1
refactoring ×1
shorthand-if ×1
symfony ×1
templates ×1
typedef ×1