可以在if语句中使用&&吗?

时间:2020-07-20 04:00:54

标签: java android-studio button

我正在开发可转换货币的应用程序。我需要它,以便用户可以输入金额,然后选择一个按钮,该按钮上将具有特定的物料,然后用户将单击另一个按钮以将其转换为另一种物料。例如,铜转化为银。但是当我由于某种原因单击“计算”按钮运行该程序时,屏幕上没有任何反应,也没有出现错误。是因为我正在使用&&还是其他东西,我对为什么它不起作用感到非常困惑。这是我的代码:

char buffer[64]
len = strlen(buffer);
    if(len < BUFFERSIZE)
         {
    gen_hmac_sha256(global_eid, (unsigned char *) buffer, len + 1);
    get_hmac_sha256(global_eid, hmac_sha256_out, HMAC_SHA256_LEN);
    printf("App.cpp: hmac sha256 hash: ");
    char *buffer2 = print_bits(hmac_sha256_out, 32);
    printf("\n");
    
    send(new_sock, buffer2, 64, 0);
}

2 个答案:

答案 0 :(得分:1)

&&的意思和-因此必须同时按下两个按钮才能使if评估为真吗?不确定这是否是您想要的。

答案 1 :(得分:0)

当试图弄清楚代码中出了什么问题时,可以在IDE中使用print语句或调试选项逐行浏览代码,以查看问题出在哪里。

我在代码中添加了两个打印语句,以显示是否按下了btCopper1和btSilver2,另一个打印语句显示了将调用btCalculate()方法。如果根本没有任何内容打印到控制台窗口,则您甚至都没有到达onClick()方法,并且在您发布的那部分代码之前出现了其他问题。

 btCalculate.setOnClickListener(new View.OnClickListener() {
    public void onClick(View view) {
        
        System.out.println("btCopper1="+btCopper1.isPressed() + "  btSilver2="+btSilver2.isPressed());
        
        int convert = Integer.parseInt(editText.getText().toString());
        if (btCopper1.isPressed() && btSilver2.isPressed()){
            
            System.out.println("btCalculate is called");

            btCalculate.setText(convert);
        }
    }
});
相关问题