标签: conditional

使用嵌套switch/case语句的最佳/最简单方法是什么?

以下两个switch/case语句的更好实践是什么?

有没有更简单的方法(更少的代码)来做到这一点?

switch (myValue)
{
    case 1:
    {
        methodFor1();

        break;
    }
    case 2:
    case 3:
    {
        methodFor2or3();

        if (myValue == 2)
                methodFor2();

        if (myValue == 3)
                methodFor3();

        break;
    }
}

...or...

switch (myValue)
{
    case 1:
    {
        methodFor1();

        break;
    }
    case 2:
    case 3:
    {
        methodFor2or3();

        switch (myValue)
        {
            case 2:
            {
                methodFor2();

                break;
            }
            case 3:
            {
                methodFor3();

                break;
            }
        }

        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

scripting conditional actionscript-3 switch-statement

0
推荐指数
1
解决办法
4260
查看次数

效率 - 条件语句中的函数调用

如果我有一些看起来像这样的代码:

if(someInteger || somecomplexfunction() > 0) {
    // do something
}
Run Code Online (Sandbox Code Playgroud)

如果someInteger求值为true,是否会调用该函数?

ps用GCC编译 -O2

c performance conditional processing-efficiency function-call

0
推荐指数
1
解决办法
448
查看次数

如果条件在PHP奇怪的情况

我在php中发现了一个奇怪的情况...或者我可能记不起来了:

<?php

if (isset($_POST["invio"]) && ($_POST["valore1"] && $_POST["valore2"])) {

        if($_POST["valore1"]) {
        $valore1 = $_POST["valore1"];
        }
        if($_POST["valore2"]) {
        $valore2 = $_POST["valore2"];
        }


        function pippo ($x,$y) {

        if($x < $y) {
        return "la variabile $x è minore della variabile $y";
        }
        elseif($x == $y) {
        return "la variabile $x è uguale alla variabile $y";
        }
        else {
        return "la variabile $x è più grande rispetto alla variabile $y";
        }
        }

        $risultato = pippo($valore1,$valore2);

        print $risultato;

}elseif (isset($_POST["invio"]) && ($_POST["valore1"] =="" || $_POST["valore2"] …
Run Code Online (Sandbox Code Playgroud)

php conditional

0
推荐指数
1
解决办法
51
查看次数

c ++嵌套条件运算符循环

我很好奇c ++如何处理这个嵌套的条件运算符.我很确定我理解它是如何工作的,但我很好奇,任何人都可以通过图解释循环如何执行嵌套的条件运算符.

例如,循环是否会为每个实例执行每个条件运算符的第一个表达式?

这个嵌套的条件运算符也是这样构造的:

(i <2)?x [i]:y;

!一世 ?y:x [1];

我想我对这个性质非常好奇.除非你能够给我一个关于循环如何执行这个条件运算符的充分解释,否则请不要回答.

#include "stdafx.h"
#include <iostream>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])

{
const char x[2] [20] = {" Cloud "," at your service\n"}; 
const char * y = "Strife"; 
for (int i = 0; i < 7; i++) 
    cout << (( i < 2)? !i ? x [i] : y : x[1]);

cout << endl << endl << x[0] << endl << x[1] << endl;

cin.get(); …
Run Code Online (Sandbox Code Playgroud)

c++ conditional loops nested operator-keyword

0
推荐指数
1
解决办法
2592
查看次数

什么是!0在JavaScript中使用==进行比较时转换为?

我在控制台中搞了几件事.

!5 is actually false
0 is a falsy value, so
0 == !5 is true
Run Code Online (Sandbox Code Playgroud)

好的,但是当我尝试这个时

!0 is true
5 is a truthy, so
5 == !0 should be true
Run Code Online (Sandbox Code Playgroud)

但它没有,控制台说错了.为什么会这样?

javascript comparison conditional

0
推荐指数
1
解决办法
55
查看次数

如果日期不到一周前有条件?

我正在尝试创建一个条件,其中if @challenge.deadline(是a Date)在上周(即最后7天)内,然后执行x,否则执行y.

我试过了:

if @challenge.deadline < 1.week.ago #2017-03-03 01:52:13 -0500
if @challenge.deadline < 7.days.ago.to_date #2017-03-03
if @challenge.deadline < Date.current-7.days #2017-03-03
# All these come up false since I guess it sees 06 as more than 03, but I want the conditional to be based on date such as 06 is less than 7 days ago and therefore should be true
Run Code Online (Sandbox Code Playgroud)

在这个例子中@challenge.deadline等于2017-03-06

ruby conditional ruby-on-rails date

0
推荐指数
1
解决办法
853
查看次数

为什么这个条件lambda函数没有返回预期的结果?

我仍然在使用python和pandas.我正在努力改进关键字评估.我的DF看起来像这样

Name  Description 
Dog   Dogs are in the house
Cat   Cats are in the shed
Cat   Categories of cats are concatenated

I am using a keyword list like this ['house', 'shed', 'in']
Run Code Online (Sandbox Code Playgroud)

我的lambda函数看起来像这样

keyword_agg = lambda x: ' ,'.join x if x is not 'skip me' else None
Run Code Online (Sandbox Code Playgroud)

我正在使用一个函数来识别和评分每一行的关键字匹配

def foo (df, words):
    col_list = []
    key_list= []
    for w in words:
        pattern = w
        df[w] = np.where(df.Description.str.contains(pattern), 1, 0)
        df[w +'keyword'] = np.where(df.Description.str.contains(pattern), w, 
                          'skip me')
        col_list.append(w)
        key_list.append(w + …
Run Code Online (Sandbox Code Playgroud)

python lambda conditional pandas

0
推荐指数
1
解决办法
51
查看次数

Python条件评估

我希望下面的代码能够正常工作,因为第一个条件是假的,但它通过 IndexError: string index out of range.我错过了什么?

 a = False
 sample_strign = 'test'
 if (a == True) & (sample_strign[7] == 's'):
        print('foo')
Run Code Online (Sandbox Code Playgroud)

python conditional if-statement

0
推荐指数
1
解决办法
114
查看次数

haskell中的变量赋值

我正在尝试编写一个接受字符串的辅助函数,如果字符串有多个空格,则将其转换为一个字符串.这是代码:

getSpaces :: String -> String
getSpaces index = 
    if (length index) == 1 then index
    else
        if isInfixOf " " index then index = " "
        else index
Run Code Online (Sandbox Code Playgroud)

当我尝试将模块加载到GHCI时,我收到错误:

Prelude> :l Utilities
[1 of 1] Compiling Utilities        ( Utilities.hs, interpreted )

Utilities.hs:55:42: error:
parse error on input ‘=’
Perhaps you need a 'let' in a 'do' block?
e.g. 'let x = 5' instead of 'x = 5'
   |
55 |        if isInfixOf " " index then index = " …
Run Code Online (Sandbox Code Playgroud)

conditional haskell

0
推荐指数
1
解决办法
234
查看次数

我可以为Clean Code Ruby使用对象而不是条件吗?

我有条件:environment为交易设置电子商务符号.当我开发时,我希望使用测试帐户.

if :environemnt == 'development'
    :ssl_merchant_id  = '001234'
    :ssl_user_id      = 'windoe6'
    :ssl_pin          = 'ABCDE'
elsif :environemnt == 'production'
    :ssl_merchant_id  = '006543'
    :ssl_user_id      = 'dingbat32'
    :ssl_pin          = 'AKEIN'
end
Run Code Online (Sandbox Code Playgroud)

我想使用类定义和对象创建来避免条件.清洁代码建议这样做.我无法看到绕过条件来选择这些符号集中的任何一个.

是否可以使用类定义来避免条件限制?我仍然需要创建两个类,然后选择一个必须在代码中选择的类.还有一个触发器可以选择使用或创建的对象.可以做到,怎么做?

ruby conditional class

0
推荐指数
1
解决办法
55
查看次数