标签: conditional-statements

Java/C三元运算符

我想将一个代码从if条件转换为三元条件,首先我成功地转换了一个条件,如:

    int minutes=59,hours=23;
// 1) if condition
if (minutes<59)
    minutes++;
else
    minutes=0;

// 2) ternary condition
minutes = (minutes < 59) ? minutes+1  :  0;
Run Code Online (Sandbox Code Playgroud)

现在的问题是当我有多个值来编辑它时,例如:

    int minutes=59,hours=23;
// if condition
if (minutes<59)
    minutes++;
else
{
    minutes = 0;
    if (hours<23)
        hours++;
    else 
        hours=0;
}
Run Code Online (Sandbox Code Playgroud)

你如何看待三元条件?谢谢 :)

c java conditional-statements

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

CakePHP关于深度模型关联的条件

使用CakePHP 1.3,我有一个Find语句,其条件为第3级深度关联:Hotel> Room> RoomType> name

我希望我的Find语句只返回具有名称"Suite"的RoomTypes的酒店.

我相信以下代码应该可以工作,但它没有,说明SQL语法错误:

$this->Hotel->find('first', array(
    'contain' => array('Room' => array('RoomType')),
    'conditions' => array(
        'Hotel.Room.RoomType.name' => 'Suite' 
    ),
));
Run Code Online (Sandbox Code Playgroud)

请注意,酒店将拥有许多客房,但每间客房仅提供1种RoomType

我已阅读有关在contains语句中使用条件的信息,但这仅限制返回的RoomTypes,而不是整个Hotels.

我在这里发布了类似的问题,但我还没有找到一个似乎可以解决这个问题的问题.

cakephp conditional-statements contain cakephp-1.3

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

如果和其他都是真的

抱歉这个疯狂的问题,但似乎很奇怪!
我有一个代码:

if(isset($_GET['tablename'])){
    $tablename=$_GET['tablename'];
    var_dump($tablename);
    echo 'Table is set <br/>';
    if($tablename="product"){
        echo 'Table is product <br/>';
    };
    if($tablename="demanded"){
        echo 'Table is demanded <br/>';
    };
};
Run Code Online (Sandbox Code Playgroud)

这就是我在展示中看到的:

字符串'demanded'(长度= 8)
表格设置
表格是产品
表格要求

请帮助我想根据表值(产品或要求)运行子查询

php if-statement conditional-statements

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

如何在Java中将对象引用用作while循环条件?

我是Java的新手,遇到了一个带有'while'循环的程序,该循环的条件是对象引用/调用.我彻底跟踪了代码并没有看到对象的任何终止条件(如果while循环条件中的对象具有'while'循环实现引起的终止条件,那将是有意义的).

注意:这涉及'内部'/'嵌套'类,所以我甚至不确定这是否有效.如何通过这种语法来满足循环?我将尝试在下面的伪代码中构建我的问题:

class DemoClass {

    demoClassfoo() {

        InnerClassdemo object2 = this.new InnerDemoClass;

        // Here is where my confusion is. I always thought that the 
        // while loop had to terminate with a logical statement being 
        // satisfied: like it is calling an object? 

        while(object2.innerClassfoo()) { 

            IMPLEMENTATIONS;             
        }                                
    }                                    

    class InnerDemoClass {               

        innerDemoClassfoo() {

            IMPLEMENTATION;
        }
    }

    public static void main(String[] args) {

        DemoClass object = new DemoClass();

    }
}
Run Code Online (Sandbox Code Playgroud)

java terminate while-loop conditional-statements

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

检查字符串是否为空

伙计我有一个方法论证.我想在进一步指向程序的执行路径之前检查它的null或空字符串

我的方法是

public void DisplayCalcQuery(string argFromQueryBuilder)
{
    if ((argFromQueryBuilder.Trim() != null) || (argFromQueryBuilder.Trim() != ""))
    {
        //notify closure of query builder
        _QueryBuilderIsOpen = false;
        UserBuiltQueries.Add(argFromQueryBuilder);
        //displayng the user built query(queries) on the stack panel meant to display it. 
        var lastItem = UserBuiltQueries[UserBuiltQueries.Count - 1];
        //removing all $signs from the obtained string
        lastItem = lastItem.Replace(@"$", "");
        addBuiltCheck(lastItem); 
    }
    else
    {
        //notify closure of query builder
        _QueryBuilderIsOpen = false;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,即使字符串正在"" 执行程序正在执行IF(我不想发生).

c# methods null conditional-statements

0
推荐指数
2
解决办法
211
查看次数

如何创建具有多个条件的Object

我想创建一个具有多个状态的类对象,每次只能有一个状态.例如:

班级飞机有三个条件:飞行,驾驶,站立

我喜欢这样的条件:

Plane boeing747 = new Plane;

boeing747.State = flying
Run Code Online (Sandbox Code Playgroud)

要么

boeing747.State.flying = true;

if(boeing747.State.flying == true); 
    console.writeline("it flyes");
else if(boeing747.State.driving == true)
    console.writeline("it drives");
else
    console.writeline("nothing goes");
// console reads: "it flyes"

boeing747.State.driving = true;
if(boeing747.State.flying == true); 
    console.writeline("it flyes");
else if(boeing747.State.driving == true)
    console.writeline("it drives");
else
    console.writeline("nothing goes");
// console reads: "it drives"
Run Code Online (Sandbox Code Playgroud)

c# properties object visual-studio-2010 conditional-statements

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

哪个更快:为变量分配相同的值,或找出它是否已设置?

这对今天的计算能力来说可能是无关紧要的,但它仍然让我感兴趣.

我有一个布尔数组,根据按下的键,在主循环的每次迭代中都会更改.然后引用该数组以获取有关键盘输入的信息.

那么:在写入变量之前检查变量是否已设置为相同值更有效,

void keyDown(unsigned char key){
    if(!keys[key])
        keys[key] = true;
}
Run Code Online (Sandbox Code Playgroud)

或者,在每个KeyDown函数迭代中将值写入相应的数组字段是否更好?

void keyDown(unsigned char key){
    keys[key] = true;
}
Run Code Online (Sandbox Code Playgroud)

Thanx.)

c++ memory conditional-statements

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

方案 - 在if句中正确使用"和"

我目前正在Scheme中为一个作业编写一个小项目.我没有长时间使用Scheme,所以我对语法不够强.

问题是在if句中使用"和".我有一个日历中的约会列表,但我只想要在一定时间间隔之间的约会.因此,我需要检查开始和结束时间.

我希望实现的内容在C#中看起来像这样:

List<appointment> appointments = new List<appointment>();

    foreach (appointment app in calendar) {
        if(app.getstart() >= from-time && app.getend() <= to-time) {
            appoinments.add(app);
        }
    }
Run Code Online (Sandbox Code Playgroud)

我目前在Scheme中拥有的是:

(define (time-calendar cal from-time to-time)
  (map (lambda (app)(if (> from-time (send 'getstart app)) #t #f))
         (send 'getappointments cal)))
Run Code Online (Sandbox Code Playgroud)

采用日历"cal"和时间间隔(从时间到时间)然后我从cal获得约会(app)并迭代它们.对于每个人,我检查时间是否大于"app"的开始时间.相应地返回true或false.这很有效,但我仍然需要考虑约会是否也在"准时"之前结束.这应该是添加另一个条件的简单问题,但我根本无法使其工作.

任何人都可以帮助我检查第二个变量的正确语法吗?我知道关于Racket文档,但我仍然无法解决我的问题.

我尝试更换cond的if句子.

我也尝试了一些"and"部分的变体,与此类似,但无法正确使用语法:

(define (time-calendar cal from-time to-time)
  (map (lambda (app)(if (and((> from-time (send 'getstart app))) (< to-time (send 'getend app))) #t #f))
         (send 'getappointments cal)))
Run Code Online (Sandbox Code Playgroud)

scheme if-statement conditional-statements racket

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

Perl打开时出现语法错误

我有以下条件代码作为我的脚本的一部分,我只是在最后一次open调用时收到语法错误.建议?

if ($contig_string =~ /($pattern)/) {
        print "$ERR_number \n";
        print "Found forward pattern.\n";
        print "Pattern found is: $1 \n";
        $position = index($contig_string,$1);
        print "Index returned: $position \n";
        $substr_forward = substr($contig_string, $position, -2000);
        print "$substr_forward \n";  
        open (REPORT, ">>", spacer_contigs) or die "Could not open";
        print REPORT ">$ERR_number \n";
        print REPORT "$substr_forward \n";
        }
elsif ($contig_string =~ /($pattern_reverse)/) {
        print "$ERR_number \n";
        print "Found reverse pattern.\n";
        print "Pattern found is: $1 \n";
        $position_reverse = index($contig_string,$1);
        print "Index returned: $position_reverse …
Run Code Online (Sandbox Code Playgroud)

perl syntax-error conditional-statements

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

为什么我的c!='o'|| c!='x'条件总是如此?

我有这个循环语句,我将使用类似C的语法表达(C,C++,Java,JavaScript,PHP等都使用类似的语法):

while (c != 'o' || c != 'x') {
    c = getANewValue();
}
Run Code Online (Sandbox Code Playgroud)

我想让它一直运行,直到我得到一个'o''x',但它永远不会退出,即使c'o''x'.为什么不?

我也尝试过使用if:

if (c != 'o' || c != 'x') {
    // Show an error saying it must be either 'o' or 'x'
}
Run Code Online (Sandbox Code Playgroud)

但这也总是显示错误信息,即使c'o''x'.为什么?

logical-operators conditional-statements logical-or

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