2016-09-01 16 views
2

現在、私はオリンピックへのチケットの販売ページを作成する必要があるuniの割り当てを行っています。唯一の基本的なことですが、私はどのように2つのintstudentgeneralをメニュークラス の購入クラスにあるビューチケットセクションに使用することができるのだろうと思っていました。ここで異なるメソッド間でintを共有する方法java

package assignment1; 

import java.util.Scanner; 

public class modulisationtest { 

    public static void main(String[] args) 
    { 
     // TODO Auto-generated method stub 
     int i, user, general, student; 

     Scanner s = new Scanner(System.in); 

     for(i=1; i <=60; i = i+1) 
      System.out.print("*"); 
     System.out.println(""); 
     System.out.println("Federation University olympics 2016"); 
     System.out.println(""); 
     System.out.println("Developed by Ryan Guest, Student id 30285253 for Itech1000 "); 
     System.out.println(""); 
     for(i=1; i <=60; i = i+1) 
      System.out.print("*"); 
     Menu(); 
    } 


    public static void Menu() { 
     int user; 
     Scanner s = new Scanner(System.in); 
     do 
     { 
      System.out.println("Ticket Purchase Menu"); 
      System.out.println("1.Purchase"); 
      System.out.println("2.View Tickets"); 
      System.out.println("3.Exit"); 
      user = s.nextInt(); 

      switch (user) 
      { 
      case 1: System.out.println("You have selected purchase"); Purchase(); 
      break; 

      case 2: System.out.println("ticket"); 
      break; 

      case 3: 
       System.out.println("Thanks for shopping"); 
       System.exit(user); 

      default: System.out.println("Not Valid"); 
      } 

     } while (user!=3); 





    }  
    public static void Purchase() 

    { 
     int user, general=0, student =0; 
     Scanner s = new Scanner(System.in); 
     { 
      do 
      { 
       System.out.println("Ticket Purchase Menu"); 
       System.out.println("1.General Admission"); 
       System.out.println("2.Student ticket"); 
       System.out.println("3.Finalise order"); 
       System.out.println("4.Return to Menu"); 
       user = s.nextInt(); 

       switch (user) 
       { 
       case 1: 
        System.out.println("How many General tickets do you want to purchase"); 
        general = s.nextInt(); 

        break; 

       case 2: 
        System.out.println("How many student tickets do you want to purchase"); 
        student = s.nextInt(); 

        break; 

       case 3: 
        System.out.println("You're Buying" + " " + general + " " + "General tickets and" + " " + student + " " + "Student Tickets"); 

        break; 


       case 4: 
        break; 

       default: System.out.println("Not Valid"); 
       } 


      } while (user!=3&&user!=4); 




     } 
    } 
} 
+1

の代わりに変数を宣言しないでください。 'static'メソッドを呼び出すと、使用したいデータを表すオブジェクトを作成することができます。 –

答えて

0

代わりの宣言以下の私のコードである 'int型のユーザー、0 =一般、学生= 0;'機能の購入で、クラスでグローバルに使用すると、静的に識別子を変更しない限り(静的ではありません、彼らはあなたのコード内の任意の場所にアクセスすることができ、そのように宣言する

IMPORTS_HERE 
class NAME{ 
    int user = 0, general = 0, student = 0; 
    //CODE HERE 
} 

プロヒント:必ず初期化関数の中で変数を宣言しないでください。その関数を呼び出すたびに新しいメモリが予約されるので、悪い習慣です!:D

関連する問題