-2

「tuitionFees」と「scholarships」をプログラムのユーザーのプロファイルのダブルとして設定できるように、メソッドを作成しようとしています。これを正しく設定しているかどうかさえわかりません。

    import java.util.Scanner;
    /**
    StudentInvoice.java
    Defines StudentInvoice objects
    @author: Evan Fravert
    */
    public class StudentInvoice {
    // declare instance variables here
    // constructor
    // methods
    // toString method (for String output)
       private String studentName;
       private String studentNumber;
       private double tuitionFees;
       private double scholarships;

    public String toString() {
     String output = "Name: " + studentName + "\n";
     output += "Student ID Number: " + studentNumber + "\n";
     output += "Tuition & Fees: " + tuitionFees + "\n";
     output += "Scholarship: " + scholarships + "\n";
     return output;
     }

    public StudentInvoice(String name, String number, double fees, double scholarship){
     studentName = name;
     studentNumber = number;
     tuitionFees = fees;
     scholarships = scholarship;
     }
    public boolean setStudentName(String name){
     if(name.length() == 0)
     {
     return false;
     }
     else
     {
     studentName = name;
     return true;
     }
     }
    public boolean setStudentNumber(String number){
     if(number.length() == 0)
     {
     return false;
     }
     else
     {
     studentNumber = number;
     return true;
     }  
    public boolean setTuitionFees(double fees){
     if(fees < 0.0) {
 return false;
 }
 else {
 tuitionFees = fees;
 return true;
 }
 }
 public boolean setScholarships (double scholarship){
 if(scholarship < 0.0) {
 return false;
 }
 else {
 Scholarships = scholarship;
 return true;
 }
    }
    }
    }

相互作用のある私のクラス:

    public class StudentInvoiceApp {
    public static void main (String[] args) {
    StudentInvoice Evan = new StudentInvoice("Evan Fravert");
    Evan.setName("Evan Fravert");
    Evan.setNumber(01234);
    Evan.setTuitionFees(0.00);
    Evan.setScholarship(0.00);
    System.out.print(Evan);
    }
    }
4

2 に答える 2

1

投稿を編集しようとしたところ、 の後に中かっこが抜けていることがわかりましたsetStudentNumber。適切なフォーマットで修正されたコードを以下に示します。どのプログラミング言語でも、コードの意味を理解するには、コードをフォーマットすることが重要です。人々は、コードをフォーマットする方法について本全体を書いていますが、それには正当な理由があります。適切なフォーマットを使用していれば、中括弧が欠落していることに気付くでしょう。

「Java コードのフォーマット方法」を検索すると、Java コードのフォーマット方法に関する Oracle のドキュメントなど、いくつかの便利な規則が見つかります。疑問がある場合は、ほとんどの IDE でコードをフォーマットするためのショートカットも提供されています。Eclipse ではCtrl+Shift+F、NetBeans ではAlt+Shift+Fです。

import java.util.Scanner;

/**
 * StudentInvoice.java Defines StudentInvoice objects
 * 
 * @author: Evan Fravert
 */
public class StudentInvoice {
    // declare instance variables here
    // constructor
    // methods
    // toString method (for String output)
    private String studentName;
    private String studentNumber;
    private double tuitionFees;
    private double scholarships;

    public String toString() {
        String output = "Name: " + studentName + "\n";
        output += "Student ID Number: " + studentNumber + "\n";
        output += "Tuition & Fees: " + tuitionFees + "\n";
        output += "Scholarship: " + scholarships + "\n";
        return output;
    }

    public StudentInvoice(String name, String number, double fees,
            double scholarship) {
        studentName = name;
        studentNumber = number;
        tuitionFees = fees;
        scholarships = scholarship;
    }

    public boolean setStudentName(String name) {
        if (name.length() == 0) {
            return false;
        } else {
            studentName = name;
            return true;
        }
    }

    public boolean setStudentNumber(String number) {
        if (number.length() == 0) {
            return false;
        } else {
            studentNumber = number;
            return true;
        }
    }

    public boolean setTuitionFees(double fees) {
        if (fees < 0.0) {
            return false;
        } else {
            tuitionFees = fees;
            return true;
        }
    }

    public boolean setScholarships(double scholarship) {
        if (scholarship < 0.0) {
            return false;
        } else {
            scholarships = scholarship;
            return true;
        }
    }
}
于 2012-09-17T15:52:04.643 に答える
0

setStudentNumber メソッドをこれに変更します

 public boolean setStudentNumber(String number){
 if(number.length() == 0)
 {
 return false;
 }
 else
 {
 studentNumber = number;
 return true;
 }
 }  

else の右中括弧がありませんでした

于 2012-09-17T15:47:32.197 に答える