0

5 つのフィールドのうち 2 つが入力されていることを確認したいのですが、方法がわかりません。

これを条件に入れると、条件の 1 つだけが true であることを確認します。

また

  • フィールド 1 は空ではありません
  • フィールド 2 は空ではありません
  • フィールド 3 は空ではありません
  • field4 は空ではありません
  • field5 は空ではありません

次の簡単な方法はありますか?

  • フィールド 1 は空ではありません
  • フィールド 2 は空ではありません

また

  • フィールド 1 は空ではありません
  • フィールド 3 は空ではありません

また

  • フィールド 1 は空ではありません
  • field4 は空ではありません

また

  • フィールド 1 は空ではありません
  • field5 は空ではありません

また

  • フィールド 2 は空ではありません
  • フィールド 3 は空ではありません

また

  • フィールド 2 は空ではありません
  • field4 は空ではありません (...)
4

2 に答える 2

1

2 ループ用

    for(int i=0;i<5;i++){
     for(int j=i+1;j<5;j++){
      if(field[i]==true&&field[j]==true)
       return true;
     }
    }

編集:必要に応じてステートメントを置き換えます。また、フィールドを配列に格納する必要があります。i+1 についての zolyboy の功績 :)

于 2014-01-26T16:27:10.013 に答える
0

SQL では、次のようにします。

select if(if(field1='',0,1)+ if(field2='',0,1)+ if(field3='',0,1)+ if(field4='',0,1)+ if(field5='',0,1)=2) true else false end ...

他の言語では、次のようになります。

int a = (field1.equals(""))0:1;
int b = (field2.equals(""))0:1;
int c = (field3.equals(""))0:1;
int d = (field4.equals(""))0:1;
int e = (field5.equals(""))0:1;

boolean result= (a+b+c+d+e==2)?true:false;

上記のコードを使用すると、3 of 5、4 of 5、7 of 10 の条件などに簡単に使用できます...

于 2014-01-26T16:33:11.190 に答える