情報を取得しようとすると、情報はsystem.out.print ln()ステートメントから印刷されません。メソッドを使って情報を出力する方法を変更する方法はわかりません。ダイアログボックスの情報を返す
package TESTCODe;
import java.awt.Component;
import javax.swing.Icon;
import javax.swing.JOptionPane;
public class TESTCODe {
private static Component frame;
private static Icon icon;
public static void main(String[] args) {
int selection=0;
int menu = read_menu();
while(selection!=3)
{ if(selection==1)
{ System.out.println("random"); }
else
if(selection==2)
{System.out.println("WH form"); }
menu=read_menu();
} System.out.println("Exiting");
System.exit(0);
} public static int read_menu()
{ int selection=0;
Object[] possibilities = {"test1", "test2", "Exit"};
String s = (String)JOptionPane.showInputDialog(
frame,"Choose a form",
"Form",JOptionPane.PLAIN_MESSAGE,icon,
possibilities,"test1");
if(s.equals("test1"))
{ selection=Integer.parseInt(s);
selection=1;
}
else
if(s.equals("Wh"))
{ selection=Integer.parseInt(s);
selection=2;
}
else
if(s.equals("Exit"))
{ selection=Integer.parseInt(s);
selection=3;
}return selection;
}
}
何か助けが必要です。で
int menu = read_menu();
:
selection = read_menu();
理由:あなたが "選択" の値を印刷しているが、あなたはread_menuから戻るint型が割り当てられている()
インデントをクリーンアップします。 sが文字列 "Air Conditioning"であるかどうかを確認し、そうであればそれをintとして解析しようとしますか?また、あなたのメインで 'selection = 0'を設定し、その値が0から何も変更されずに1または2であるかどうかをチェックします。 – FredK