###前提・実現したいこと
data.scanData("追加", Data.NO | Data.NAME);
|演算子を使った挙動が分かりません。
ここはどう動くのですか?
|でビット演算してビットORしたものが実引数で、仮引数swに渡る、でいいんですか。
###発生している問題・エラーメッセージ
エラーメッセージ
###該当のソースコード
class Data{ static final int NO = 1; static final int NAME = 2; private Integer no; private String name; Integer keyCode(){ return no; } void scanData(String guide, int sw){ System.out.println(guige + "するデータを入力してください。"); if((sw & NO) == NO){ System.out.print("番号:"); no = stdIn.nextInt(); } if(((sw & NAME) == NAME){ System.out.print("名前:"); name = stdIn.next(); } } } public static void main(String[] args){ //中略 do{ switch(menu = selectMenu()){ case ADD : data = new Data(); data.scanData("追加", Data.NO | Data.NAME); hash.add(data.keyCode(), data); break; }while(menu != Menu.TERMINATE); }
###試したこと
課題に対してアプローチしたことを記載してください
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/26 05:06
2017/09/26 07:17