我如何执行特定代码然后返回到我的主代码
How do I execute a certain code and then back at my main code
所以我想找到一种方法来执行我的代码,然后返回到我的主要代码。我是 java 的新人,所以请不要评判我的错误代码 :)
Anw 所以我有这段代码,我希望只有当用户在下面的代码中插入数字 2 时,它才会被激活
Boolean CitizenPhase=false;
while(CitizenPhase){
JOptionPane.showMessageDialog(null, "Welcome To our Market. I see you need resources to please your citizens. Well You came to the right place!", "Global Market", JOptionPane.INFORMATION_MESSAGE);
String MarketBuy=JOptionPane.showInputDialog("Choose What you want to buy \n 1.Corn ("+StockCorn+"$) Increases Hapiness by 40 \n 2.Cotton ("+StockCotton+"$) Increases Hapiness by 10 \n 3.Oranges ("+StockOrange+"$) Increases Hapiness by 15 \n 4.Silver ("+StockSilver+"$) Increases Hapiness by 100 \n 5.Sugar ("+StockSugar+"$) Increases Hapiness by 45 \n 6.Coffee ("+StockCoffee+"$) Increases Hapiness by 35 \n 7.Rice ("+StockRice+"$) Increases Hapiness by 25", "Global Market");
if(MarketBuy.equals("1")){
MoneyCount-=StockCorn;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("2")){
MoneyCount-=StockCotton;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("3")){
MoneyCount-=StockOrange;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("4")){
MoneyCount-=StockSilver;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("5")){
MoneyCount-=StockSugar;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("6")){
MoneyCount-=StockCoffee;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("7")){
MoneyCount-=StockRice;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}
}
下面是这里..所以这段代码应该开始上面的代码..但是它说变量 CitizenPhase 不存在...发生这种情况是因为这段代码在上面的代码之上 xD 混淆了吗?那么除了使用 MainMenu=false 之外还有其他方法吗?公民阶段=真;开始一段代码?感谢您的宝贵时间:)
if (Buy1.equals("2")) {
MainMenu=false;
CitizenPhase=true;
}
在检查之前移动 CitizenPhase
声明,例如:
Boolean CitizenPhase=false;
if (Buy1.equals("2")) {
MainMenu=false;
CitizenPhase=true;
}
while(CitizenPhase){...
我们需要更多代码。您正在 Buy1
上测试条件,但它没有在您向我们展示的内容中声明。
你为什么不使用方法呢?即:
public static void method1(){
//insert above code here
}
if (Buy1.equals("2"){
method1();}
所以我想找到一种方法来执行我的代码,然后返回到我的主要代码。我是 java 的新人,所以请不要评判我的错误代码 :) Anw 所以我有这段代码,我希望只有当用户在下面的代码中插入数字 2 时,它才会被激活
Boolean CitizenPhase=false;
while(CitizenPhase){
JOptionPane.showMessageDialog(null, "Welcome To our Market. I see you need resources to please your citizens. Well You came to the right place!", "Global Market", JOptionPane.INFORMATION_MESSAGE);
String MarketBuy=JOptionPane.showInputDialog("Choose What you want to buy \n 1.Corn ("+StockCorn+"$) Increases Hapiness by 40 \n 2.Cotton ("+StockCotton+"$) Increases Hapiness by 10 \n 3.Oranges ("+StockOrange+"$) Increases Hapiness by 15 \n 4.Silver ("+StockSilver+"$) Increases Hapiness by 100 \n 5.Sugar ("+StockSugar+"$) Increases Hapiness by 45 \n 6.Coffee ("+StockCoffee+"$) Increases Hapiness by 35 \n 7.Rice ("+StockRice+"$) Increases Hapiness by 25", "Global Market");
if(MarketBuy.equals("1")){
MoneyCount-=StockCorn;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("2")){
MoneyCount-=StockCotton;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("3")){
MoneyCount-=StockOrange;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("4")){
MoneyCount-=StockSilver;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("5")){
MoneyCount-=StockSugar;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("6")){
MoneyCount-=StockCoffee;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}if(MarketBuy.equals("7")){
MoneyCount-=StockRice;
JOptionPane.showMessageDialog(null,"Buy Successfull. You now have "+MoneyCount+"$ left!", "Global Market",JOptionPane.INFORMATION_MESSAGE);
CitizenPhase=false;
MainMenu=true;
}
}
下面是这里..所以这段代码应该开始上面的代码..但是它说变量 CitizenPhase 不存在...发生这种情况是因为这段代码在上面的代码之上 xD 混淆了吗?那么除了使用 MainMenu=false 之外还有其他方法吗?公民阶段=真;开始一段代码?感谢您的宝贵时间:)
if (Buy1.equals("2")) {
MainMenu=false;
CitizenPhase=true;
}
在检查之前移动 CitizenPhase
声明,例如:
Boolean CitizenPhase=false;
if (Buy1.equals("2")) {
MainMenu=false;
CitizenPhase=true;
}
while(CitizenPhase){...
我们需要更多代码。您正在 Buy1
上测试条件,但它没有在您向我们展示的内容中声明。
你为什么不使用方法呢?即:
public static void method1(){
//insert above code here
}
if (Buy1.equals("2"){
method1();}