【问题标题】:3 way Boolean value with JavaJava的3路布尔值
【发布时间】:2017-07-07 01:31:48
【问题描述】:

根据我的布尔值,我有 3 个条件。

条件一:当值为false时,用户应该得到一个空白表格 带有提交按钮

条件2:用户提交表单时,设置布尔值 为 true 并且表单变为只读表单,因此用户不能 编辑表格并重新提交。此时,提交按钮 被隐藏了。

条件 3: 假设绝对有必要进行更新,则 应用程序的所有者可以进入数据库并将布尔位的值更改为 false,从而使表单变得可编辑。但此时此刻 时间,我需要将Submit button 更改为Modify button

所以这里只有 2 个布尔值有 3 种可能性。所以我的问题是,我如何知道两个false calls (Condition 1 and Condition 3) 之间哪个是提交调用,即用户第一次填写表单,哪个是修改调用,即用户正在更新同一个表单?任何帮助表示赞赏。谢谢。

【问题讨论】:

  • 将返回值设为加框的Boolean,并在其中一个条件下返回 null,如果不严格要求使用布尔值,则返回 1、0、-1。
  • 你可以使用整数作为状态
  • 这是一道典型的家庭作业题,最好自己解决,你会学到概念。
  • 您可以使用位掩码。 000 (0) 未设置位。 111 (7) 被设置为所有位。 010 (2) 仅设置位 2。 110 (6) 只有第 2 位和第 3 位被设置。等等。关于如何做的数学在许多关于binary bitwise operations的文本中都有描述。

标签: java android mobile boolean callstack


【解决方案1】:

您可以使用整数而不是布尔值,状态为 1, 2 ,3 并存储它。或者您可以添加另一个布尔值来修改状态。

使用 switch case 你可以处理各种情况

switch(state){
    case 1:
    //your code for state one
    break;
    case 2:
    //your code for state one
    break;
    case 3:
    //your code for state one
    break;
}

【讨论】:

    【解决方案2】:

    【讨论】:

      猜你喜欢
      • 2011-04-13
      • 1970-01-01
      • 2011-08-26
      • 2017-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-30
      • 1970-01-01
      相关资源
      最近更新 更多