2017-02-06 3 views
-5

私は以下のコードを持っており、両方のケースでセクション= Aを使用していることがわかります。しかし、より多くのコード行を避けるために、 "When"に1 & 2をチェックする方法はありますか?when(Evaluate)に複数の値を使用するにはどうすればよいですか?

Evaluate INTERFACE 
When "1" 
    SECTION = "A"; 
    Break; 
When "2" 
    SECTION = "A"; 
    Break; 

私はまだ学習していることを覚えておいてください。ありがとう! :)

+1

「Evaluate」ステートメントの**構文**を書いている** manual **を見たとき、あなたは何を見つけましたか?あなたがマニュアルを見て、あなたができないことが分かったと仮定すると、ここでなぜ尋ねるのですか?あなたが*見ることができなかったと仮定すると、それはあなたがダウン票をたくさん持っている理由です。なぜなら、「この質問は研究努力を示していないからです」*。 – Andreas

答えて

0

まず、あなたのコードはJava、C、Cppのようなものではなく、OOPとは関係ないので、タグを修正してください。よく知られているswitch-caseと同じ属性を持つことがCOBOLのように思えるEvaluate-Whenのためのクイック検索後 (IBMを参照してください):質問へ

switch-case

あなたは本当にOR文を持ってすることはできませんが、breakを使用しないことにより、同じブロックに複数の値を割り当てることができます。

char c = 'a'; 
switch(c){ 
    case 'a': 
    case 'A': 
     fooA(); //'a' AND 'A' will land here 
     break; 
    case 'b': 
     fooSmallB(); //only 'b' lands here 
    case 'B': 
     fooB(); //'b' AND 'B' lands here 
     break; 
    default: 
     fooDef(); //Everything that does not hit any case lands here 
} 

これはOR-文をシミュレートします。そして不可能です。

編集: 私は今、人のコードです。その前に聞いたことのない、しかしドキュメントは示していない:評価-とき

それでもスイッチ・ケースよりもはるかに違いはありません。ほとんど常にswitch-caseより良い可能性があり、マイケル・hereから第一のコメントを参照してください。

+0

明らかに[peoplecode](https://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tpcl/langref_PeopleCodeBuilt-inFunctionsandLanguageConstructs-073e6a.html)です。 – George

+0

ありがとうございました:)基本的な質問には申し訳ありません。うまくいけば、私はすぐに学び、間違ったタグで気にすることはありません。もう一度ありがとう! – LearningDeveloper

+0

以前は人のことを聞いたことがありません。しかし、[docu](https://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tpcd/concept_Statements-074b4d.html)を読むと、他のスイッチ/ケースとほぼ同じです... –

関連する問題