2015-05-13 81 views
-3

有了幫助,我得到了程序運行和回答問題,但它沒有顯示學費總額。謝謝閱讀。 Stackoverflow說我需要發佈更多的細節,所以我只是輸入細節。已更新 - 計算學費總額

import java.util.Scanner; 

public class Student { 

private static String FirstName; 
private static String LastName; 
private static String Address; 
private static String PhoneNumber; 
private static int Credits; 
private double Tuition; 
double Health_Care; 
double Late_Fee; 
double Meal_Plan; 
double TotalTuition; 
double IncidentalFee; 
private static boolean state; 
private static boolean LateFee; 
private static boolean CampusFood; 
private static boolean HealthCare; 
private static Scanner sc; 

public Student() 
{ 

} 

public Student(String studentFirstName, String studentLastName, String studentAddress,String studentPhoneNumber, int studentCredits, double studentTuition, double studentHealth_Care, double studentLate_Fee, double studentMeal_Plan, double studentTotalTuition, double studentIncidentalFee, boolean studentstate, boolean studentLateFee, boolean studentCampusFood, boolean studentHealthCare) 
{ 
    FirstName = studentFirstName; 
    LastName = studentLastName; 
    Address = studentAddress; 
    PhoneNumber = studentPhoneNumber; 
    Credits = studentCredits; 
    Tuition = studentTuition; 
    Health_Care = studentHealth_Care; 
    Late_Fee = studentLate_Fee; 
    Meal_Plan = studentMeal_Plan; 
    TotalTuition = studentTotalTuition; 
    IncidentalFee = studentIncidentalFee; 
    state = studentstate; 
    LateFee = studentLateFee; 
    CampusFood = studentCampusFood; 
    CampusFood = studentHealthCare; 
} 
// Set Methods 
void FirstName (String studentFirstName) 
{ 
    FirstName = studentFirstName; 
} 

void LastName (String studentLastName) 
{ 
    LastName = studentLastName; 
} 

void Address (String studentAddress) 
{ 
    Address = studentAddress; 
} 

void PhoneNumber (String studentPhoneNumber) 
{ 
    PhoneNumber = studentPhoneNumber; 
} 

void Credits (int studentCredits) 
{ 
    Credits = studentCredits; 
} 

void Tuition (double studentTuition) 
{ 
    Tuition = studentTuition; 
} 

void Health_Care (double studentHealth_Care) 
{ 
    Health_Care = studentHealth_Care; 
} 

void Late_Fee (double studentLate_Fee) 
{ 
    Late_Fee = studentLate_Fee; 
} 

void Meal_Plan (double studentMeal_Plan) 
{ 
    Meal_Plan = studentMeal_Plan; 
} 

void TotalTuition (double studentTotalTuition) 
{ 
    TotalTuition = studentTotalTuition; 
} 

void IncidentalFee (double studentIncidentalFee) 
{ 
    IncidentalFee = studentIncidentalFee; 
} 

void state (Boolean studentstate) 
{ 
    state = studentstate; 
} 

void LateFee (Boolean studentLateFee) 
{ 
    LateFee = studentLateFee; 
} 

void CampusFood (Boolean studentCampusFood) 
{ 
    CampusFood = studentCampusFood; 
} 

void HealthCare (Boolean studentHealthCare) 
{ 
    HealthCare = studentHealthCare; 
} 
// Get Method 
String FirstName() 
{ 
    return FirstName; 
} 

String LastName() 
{ 
    return LastName; 
} 

String Address() 
{ 
    return Address; 
} 

String PhoneNumber() 
{ 
    return PhoneNumber; 
} 

int Credits() 
{ 
    return Credits; 
} 

double Tuition() 
{ 
    return Tuition; 
} 

double Health_Care() 
{ 
    return Health_Care; 
} 

double Late_Fee() 
{ 
    return Late_Fee; 
} 

double Meal_Plan() 
{ 
    return Meal_Plan; 
} 

double TotalTuition() 
{ 
    return TotalTuition; 
} 

double IncidentalFee() 
{ 
    return IncidentalFee; 
} 

boolean state() 
{ 
    return state; 
} 

boolean LateFee() 
{ 
    return LateFee; 
} 

boolean CampusFood() 
{ 
    return CampusFood; 
} 

boolean HealthCare() 
{ 
    return HealthCare; 
} 

public void readInput() 
{ 
} 
    public static void main(String[] args) { 
    sc = new Scanner(System.in); 
    System.out.println("Enter first name"); 
    FirstName=sc.nextLine(); 
    System.out.println("Enter last name"); 
    LastName=sc.nextLine(); 
    System.out.println("Enter address"); 
    Address=sc.nextLine(); 
    System.out.println("Enter phone number"); 
    PhoneNumber=sc.nextLine(); 
    System.out.println("Enter the credits you are taken"); 
    Credits=sc.nextInt(); 
    System.out.println("Do you Qualify for the instate rate? Enter True for yes or False for no"); 
    state = sc.nextBoolean(); 
    System.out.println("Late fee assessed? Enter True for yes or False for no"); 
    LateFee=sc.nextBoolean(); 
    System.out.println("Do you want a meal plan? Enter True for yes or False for no"); 
    CampusFood=sc.nextBoolean(); 
    System.out.println("Do you want Health Care? Enter True for yes or False for no"); 
    HealthCare=sc.nextBoolean(); 
} 

public void calculateData() 
{ 
    if (state == true) 
    { 
     if (Credits < 12) 
      Tuition = (Credits*102.50); 
    } 
{ 

if(Credits>11 || Credits<19); 
    Tuition = (Credits* 75.45); 
} 
{ 

if (Credits>18) 
    Tuition = (Credits*93.00); 
} 

if (state == false) 
{ 
    if (Credits < 12) 
    Tuition = (Credits*351.00); 
} 
{ 
if(Credits>11 || Credits<19); 
    Tuition = (Credits* 255.00); 
} 
{ 
if (Credits>18) 
    Tuition = (Credits*304.00); 
} 


if (LateFee == true) 
{ 
    Late_Fee = Tuition/10; 
} 
if (CampusFood == true) 
{ 
    Meal_Plan = 3499.00; 
} 
if(HealthCare == true) 
{ 
    if (Credits < 11) 
     Health_Care = 25.00; 
    } 
{ 
if(Credits>10 || Credits<16); 
    Health_Care = 20.00; 
} 
{ 
if (Credits>15) 
    Health_Care = 15.00; 
} 
{ 
    IncidentalFee = Credits * 20; 
} 
{ 
    TotalTuition = Tuition + Late_Fee + IncidentalFee + Health_Care + Meal_Plan; 
} 
} 
public void writeOutput() 
{ 
    System.out.println("Name: " + FirstName + " " + LastName); 
    System.out.println("Address: " + Address); 
    System.out.println("PhoneNumber: " + PhoneNumber); 
    System.out.println("Credits: " + Credits); 
    System.out.println("Tuition: " + Tuition); 
    System.out.println("Late Fee: " + Late_Fee); 
    System.out.println("Incedental: " + IncidentalFee); 
    System.out.println("Health Care: " + Health_Care); 
    System.out.println("Meal Plane: " + Meal_Plan); 
    System.out.println("Total: " + TotalTuition); 
    calculateData(); 
    writeOutput(); 
} 
} 
+0

錯誤是完全正確的。 'Java語法(切換純文本)'不是有效的代碼。 – SLaks

+0

我剛剛格式化了你的代碼。現在應該更清楚一點,找到在哪裏放置'}'。 –

+0

我複製了代碼,但仍然出現錯誤,您能否讓我知道您放置的位置? – David

回答

0

你的主要方法:

public static void main(String[] args) { 

永遠不會關閉,你應該做這樣的事情:

public static void main(String[] args) { 

} 

現在你的錯誤應該被解決,但沒有東西在你的main方法裏面,你的代碼可能無法工作,除非你從另一個類調用這個類的方法。

但是如果這種主要方法是您項目中唯一的主要方法,那麼您所編寫的其他代碼都不會被使用。由於你的主要方法是將調用其他方法的方法,從而使你的代碼做一些事情。

我希望這有助於:)

編輯#1:

當我試圖正確地格式化你的代碼我注意到,主要方法是不是有括號中的最後兩個問題的唯一方法(或三種)方法在括號中也存在嚴重問題。所以我建議你檢查一下這些方法,或者我可以嘗試去做,但如果你自己這樣做會更容易。

EDIT#2:

在編輯#1響應我現在已經與支架{}固定人那裏的問題。

'新' 代碼:

import java.util.Scanner; 

public class Student { 

public static void main(String[] args) { 
    //add the code for what you want to do in here 
} 

private String FirstName; 
private String LastName; 
private String Address; 
private String PhoneNumber; 
private int Credits; 
private double Tuition; 
double Health_Care; 
double Late_Fee; 
double Meal_Plan; 
double TotalTuition; 
double IncidentalFee; 
private boolean state; 
private boolean LateFee; 
private boolean CampusFood; 
private boolean HealthCare; 

public Student(){ 
} 

public Student(String studentFirstName, String studentLastName, String studentAddress,String studentPhoneNumber, int studentCredits, double studentTuition, double studentHealth_Care, double studentLate_Fee, double studentMeal_Plan, double studentTotalTuition, double studentIncidentalFee, boolean studentstate, boolean studentLateFee, boolean studentCampusFood, boolean studentHealthCare){ 
    FirstName = studentFirstName; 
    LastName = studentLastName; 
    Address = studentAddress; 
    PhoneNumber = studentPhoneNumber; 
    Credits = studentCredits; 
    Tuition = studentTuition; 
    Health_Care = studentHealth_Care; 
    Late_Fee = studentLate_Fee; 
    Meal_Plan = studentMeal_Plan; 
    TotalTuition = studentTotalTuition; 
    IncidentalFee = studentIncidentalFee; 
    state = studentstate; 
    LateFee = studentLateFee; 
    CampusFood = studentCampusFood; 
    CampusFood = studentHealthCare; 
} 

// Set Methods 
void FirstName (String studentFirstName){ 
    FirstName = studentFirstName; 
} 

void LastName (String studentLastName){ 
    LastName = studentLastName; 
} 

void Address (String studentAddress){ 
    Address = studentAddress; 
} 

void PhoneNumber (String studentPhoneNumber){ 
    PhoneNumber = studentPhoneNumber; 
} 

void Credits (int studentCredits){ 
    Credits = studentCredits; 
} 

void Tuition (double studentTuition){ 
    Tuition = studentTuition; 
} 

void Health_Care (double studentHealth_Care){ 
    Health_Care = studentHealth_Care; 
} 

void Late_Fee (double studentLate_Fee){ 
    Late_Fee = studentLate_Fee; 
} 

void Meal_Plan (double studentMeal_Plan){ 
    Meal_Plan = studentMeal_Plan; 
} 

void TotalTuition (double studentTotalTuition){ 
    TotalTuition = studentTotalTuition; 
} 

void IncidentalFee (double studentIncidentalFee){ 
    IncidentalFee = studentIncidentalFee; 
} 

void state (Boolean studentstate){ 
    state = studentstate; 
} 

void LateFee (Boolean studentLateFee){ 
    LateFee = studentLateFee; 
} 

void CampusFood (Boolean studentCampusFood){ 
    CampusFood = studentCampusFood; 
} 

void HealthCare (Boolean studentHealthCare){ 
    HealthCare = studentHealthCare; 
} 

// Get Method 
String FirstName(){ 
    return FirstName; 
} 

String LastName(){ 
    return LastName; 
} 

String Address(){ 
    return Address; 
} 

String PhoneNumber(){ 
    return PhoneNumber; 
} 

int Credits(){ 
    return Credits; 
} 

double Tuition(){ 
    return Tuition; 
} 

double Health_Care(){ 
    return Health_Care; 
} 

double Late_Fee(){ 
    return Late_Fee; 
} 

double Meal_Plan(){ 
    return Meal_Plan; 
} 

double TotalTuition(){ 
    return TotalTuition; 
} 

double IncidentalFee(){ 
    return IncidentalFee; 
} 

boolean state(){ 
    return state; 
} 

boolean LateFee(){ 
    return LateFee; 
} 

boolean CampusFood(){ 
    return CampusFood; 
} 

boolean HealthCare(){ 
    return HealthCare; 
} 

public void readInput(){ 
    Scanner sc=new Scanner(System.in); 
    System.out.println("Enter first name"); 
    FirstName=sc.next(); 
    System.out.println("Enter last name"); 
    LastName=sc.next(); 
    System.out.println("Enter address"); 
    Address=sc.next(); 
    System.out.println("Enter phone number"); 
    PhoneNumber=sc.next(); 
    System.out.println("Enter the credits you are taken"); 
    Credits=sc.nextInt(); 
    System.out.println("Do you Qualify for the instate rate? Enter True for yes or False for no"); 
    state = sc.nextBoolean(); 
    System.out.println("Late fee assessed? Enter True for yes or False for no"); 
    LateFee=sc.nextBoolean(); 
    System.out.println("Do you want a meal plan? Enter True for yes or False for no"); 
    CampusFood=sc.nextBoolean(); 
    System.out.println("Do you want Health Care? Enter True for yes or False for no"); 
    HealthCare=sc.nextBoolean(); 
} 

public void calculateData(){ 
    if (state == true){ 
     if (Credits < 12){ 
      Tuition = (Credits*102.50); 
     } 
    } 
    if(Credits>11 || Credits<19){ 
     Tuition = (Credits* 75.45); 
    } 
    if (Credits>18){ 
     Tuition = (Credits*93.00); 
    } 
    if (state == false){ 
     if (Credits < 12){ 
      Tuition = (Credits*351.00); 
     } 
    } 
    if(Credits>11 || Credits<19){ 
     Tuition = (Credits * 255.00); 
    } 
    if (Credits>18){ 
     Tuition = (Credits * 304.00); 
    } 
    if (LateFee == true){ 
     Late_Fee = Tuition/10; 
    } 
    if (CampusFood == true){ 
     Meal_Plan = 3499.00; 
    } 
    if(HealthCare == true){ 
     if (Credits < 11){ 
      Health_Care = 25.00; 
     } 
    } 
    if(Credits>10 || Credits<16){ 
     Health_Care = 20.00; 
    } 
    if (Credits>15){ 
     Health_Care = 15.00; 
    } 
    IncidentalFee = Credits * 20; 
    TotalTuition = Tuition + Late_Fee + IncidentalFee + Health_Care + Meal_Plan; 
} 

public void writeOutput(){ 
    System.out.println("Name: " + FirstName + " " + LastName); 
    System.out.println("Address: " + Address); 
    System.out.println("PhoneNumber: " + PhoneNumber); 
    System.out.println("Credits: " + Credits); 
    System.out.println("Tuition: " + Tuition); 
    System.out.println("Late Fee: " + Late_Fee); 
    System.out.println("Incedental: " + IncidentalFee); 
    System.out.println("Health Care: " + Health_Care); 
    System.out.println("Meal Plane: " + Meal_Plan); 
    System.out.println("Total: " + TotalTuition); 
} 
} 

編輯#3

添加了功能齊全的代碼:

package stackoverflow.q30220193; 

import java.util.Scanner; 

public class Student { 

private static String FirstName; 
private static String LastName; 
private static String Address; 
private static String PhoneNumber; 
private static int Credits; 
private static double Tuition; 
static double Health_Care; 
static double Late_Fee; 
static double Meal_Plan; 
static double TotalTuition; 
static double IncidentalFee; 
private static boolean state; 
private static boolean LateFee; 
private static boolean CampusFood; 
private static boolean HealthCare; 
private static Scanner sc; 

public static void main(String[] args) { 
    sc = new Scanner(System.in); 
    System.out.println("Enter first name"); 
    FirstName=sc.nextLine(); 
    System.out.println("Enter last name"); 
    LastName=sc.nextLine(); 
    System.out.println("Enter address"); 
    Address=sc.nextLine(); 
    System.out.println("Enter phone number"); 
    PhoneNumber=sc.nextLine(); 
    System.out.println("Enter the credits you are taken"); 
    Credits=sc.nextInt(); 
    System.out.println("Do you Qualify for the instate rate? Enter True for yes or False for no"); 
    state = sc.nextBoolean(); 
    System.out.println("Late fee assessed? Enter True for yes or False for no"); 
    LateFee=sc.nextBoolean(); 
    System.out.println("Do you want a meal plan? Enter True for yes or False for no"); 
    CampusFood=sc.nextBoolean(); 
    System.out.println("Do you want Health Care? Enter True for yes or False for no"); 
    HealthCare=sc.nextBoolean(); 
    calculateData(); 
    writeOutput(); 
} 

public static void calculateData() 
{ 
     if (state == true) 
     { 
      if (Credits < 12) 
       Tuition = (Credits*102.50); 
     } 
    { 

    if(Credits>11 || Credits<19); 
     Tuition = (Credits* 75.45); 
    } 
    { 
     if (Credits>18) 
      Tuition = (Credits*93.00); 
    } 
    if (state == false) 
    { 
     if (Credits < 12) 
      Tuition = (Credits*351.00); 
    } 
    { 
    if(Credits>11 || Credits<19); 
     Tuition = (Credits* 255.00); 
    } 
    { 
    if (Credits>18) 
     Tuition = (Credits*304.00); 
    } 
    if (LateFee == true) 
    { 
     Late_Fee = Tuition/10; 
    } 
    if (CampusFood == true) 
    { 
     Meal_Plan = 3499.00; 
    } 
    if(HealthCare == true) 
    { 
     if (Credits < 11) 
      Health_Care = 25.00; 
     } 
    { 
    if(Credits>10 || Credits<16); 
     Health_Care = 20.00; 
    } 
    { 
    if (Credits>15) 
     Health_Care = 15.00; 
    } 
    { 
     IncidentalFee = Credits * 20; 
    } 
    { 
     TotalTuition = Tuition + Late_Fee + IncidentalFee + Health_Care + Meal_Plan; 
    } 
} 

public static void writeOutput() 
{ 
    System.out.println("Name: " + FirstName + " " + LastName); 
    System.out.println("Address: " + Address); 
    System.out.println("PhoneNumber: " + PhoneNumber); 
    System.out.println("Credits: " + Credits); 
    System.out.println("Tuition: " + Tuition); 
    System.out.println("Late Fee: " + Late_Fee); 
    System.out.println("Incedental: " + IncidentalFee); 
    System.out.println("Health Care: " + Health_Care); 
    System.out.println("Meal Plane: " + Meal_Plan); 
    System.out.println("Total: " + TotalTuition); 
} 
} 

附:我刪除了gettes和setter,但是如果你願意,你可以將它們添加回來。

0

從你的代碼中刪除下面的行,你就完成了。位於類的頂部

public static void main(String[] args) { 
+0

修復了錯誤,但我需要獲得用戶輸入,並且我不能在沒有公共靜態void main(String [] args)的情況下運行該程序{ – David

+0

@David您需要閱讀Java Tutorials,因爲您的代碼有很多方法並且不好編碼,這裏很難解釋。 –