当前位置: 首页 > 知识库问答 >
问题:

if-else 语句不适用于模型

缪升
2023-03-14

我想要什么

在JPanel上,我有一个JButton和一个JTextArea。按下JButton后,必须在JTextArea中打印某些文本。此特定文本由if-else语句确定。if-else的条件基于整数变量R。

基本上,这是我试图进行的类似问答的调查。我使用R来记录用户的答案。当用户单击一个选项时,R的值会更新。

我使用字符串变量你的手机。如果R的值为最后例如120,则您的手机将更新为字符串,例如。Xperia Z.

我所说的最后一个JPanel就是我显示结果的地方。在if-else语句中使用R的总值。

结构

我像这样启动变量

int R=0;
String yourphone;

这是JPanel的代码

final JPanel result = new JPanel();
        result.setBackground(Color.BLACK);
        getContentPane().add(result, "name_17130054294139");
        result.setLayout(null);


        final JTextArea txtrphoneresult = new JTextArea();
        txtrphoneresult.setRows(5);
        txtrphoneresult.setBounds(68, 84, 285, 148);
        result.add(txtrphoneresult);

        JButton btnShowResult = new JButton("Show Result");
        btnShowResult.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                txtrphoneresult.setText(yourphone + R);

            }
        });
        btnShowResult.setBounds(68, 29, 103, 32);
        result.add(btnShowResult);

下面是我的if-else语句

if(R==1749)
        {
            yourphone = "Galaxy Mega 5.8";
        }
if(R==1726)
        {
            yourphone = "Xperia Z";
        }
else
            {
                    yourphone = "NO Result";
            }

问题

在执行时,无论结果如何,总是“无结果”,这意味着R的值总是比我预测的总和有所不同。但这不可能是正确的,因为我在旁边打印了R的值

txtrphoneresult.setText(yourphone + R);

并且结果输出是“没有结果1749”。这是不可能的,因为它表明R的值被更新了。如果是1749,那么输出应该是“银河巨型5.8”。我不知道为什么当if条件明显满足时,它会从else语句中获取yourphone的输出。

共有3个答案

石臻
2023-03-14

嵌套if-else语句不正确否则条件应为

if(R==1749){
    yourphone = "Galaxy Mega 5.8";
}
else if(R==1726){
    yourphone = "Xperia Z";
}
else{
     yourphone = "NO Result";
}
湛钊
2023-03-14
if(R==1749)
  yourphone = "Galaxy Mega 5.8";
else if(R==1726)
  yourphone = "Xperia Z";
else
  yourphone = "NO Result";

this will solve your problem;
乐正宏深
2023-03-14

您需要在第一个if后面添加< code>else:

if(R==1749) {
    yourphone = "Galaxy Mega 5.8";
} else if(R==1726) {
    yourphone = "Xperia Z";
} else {
    yourphone = "NO Result";
}

否则,即使R==1749你的手机也将是"NO Resault"

 类似资料:
  • Swift 条件语句 一个 if 语句 后可跟一个可选的 else if...else 语句,else if...else 语句 在测试多个条件语句时是非常有用的。 当你使用 if , else if , else 语句时需要注意以下几点: if 语句后可以有 0 个或 1 个 else,但是如果 有 else if 语句,else 语句需要在 else if 语句之后。 if 语句后可以有 0

  • else语句可以与if语句结合使用。 else语句包含else语句中的条件表达式解析为0或FALSE值时执行的代码块。 else语句是一个可选语句, else后面最多只能有一个else语句。 语法 (Syntax) if...else语句的语法是 - if expression: statement(s) else: statement(s) 流程图 (Flow Diagram) 例

  • 主要内容:if 语句,实例,if...else 语句,实例,if...else if...else 语句,实例,if...else 嵌套语句,实例Scala IF...ELSE 语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。 可以通过下图来简单了解条件语句的执行过程: if 语句 if 语句有布尔表达式及之后的语句块组成。 语法 if 语句的语法格式如下: 如果布尔表达式为 true 则执行大括号内的语句块,否则跳过大括号内的语句块,执行大括号之后的语句块。 实

  • 主要内容:if 结构,if-else 结构,多条件 if-else-if 语句,嵌套 if 的使用Java 支持两种选择语句:if 语句和 switch 语句。其中 if 语句使用布尔表达式或布尔值作为分支条件来进行分支控制,而 switch 语句则用于对多个整型值进行匹配,从而实现分支控制。这些语句允许你只有在程序运行时才能知道其状态的情况下,控制程序的执行过程。如果你没有 C/ C++ 的编程背景,你将会为这两个语句的强大功能和灵活性而感到吃惊。 选择结构(也叫分支结构)解决了顺序结构不能

  • Scala IF...ELSE 语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。 可以通过下图来简单了解条件语句的执行过程: if 语句 if 语句有布尔表达式及之后的语句块组成。 语法 if 语句的语法格式如下: if(布尔表达式) { // 如果布尔表达式为 true 则执行该语句块 } 如果布尔表达式为 true 则执行大括号内的语句块,否则跳过大括号

  • Swift 条件语句 一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为 false 时执行。 语法 Swift 语言中 if...else 语句的语法: if boolean_expression { /* 如果布尔表达式为真将执行的语句 */ } else { /* 如果布尔表达式为假将执行的语句 */ } 如果布尔表达式为 true,则执行 if