2012-02-18 77 views
1

我目前正在爲一類項目,但有位編碼與 ArrayList S的掙扎。這是尚未完成的代碼;然而,當我正在處理enrollstudent 方法時,我遇到了一個問題,比較ArrayList與變量amountstudents的長度。Java數組列表的大小問題

以下是完整課程代碼的副本。還有另外一個單獨的課程,但我認爲這裏沒有關係。

任何幫助將不勝感激。

import java.util.*; 
import java.util.Scanner; 

public class Course { 

    int amountstudents; 
    String coursename; 
    String level; 
    ArrayList<String> students = new ArrayList<String>(); 
    String tutor; 

    Scanner in = new Scanner(System.in); 

    public Course(int MaxCapacity) { 
     MaxCapacity = amountstudents; 
     tutor = "Not set yet"; 
     coursename = "Not set yet"; 
     level = "Not set yet"; 
    } 

    public void enrollstudent(String addstudent) { 
     if(students.size > amountstudents) { 
      System.out.println("Unfortunately the class is already full so you can not be enrolled at this time"); 
     } 
     else { 
      students.add(Student.fname); 
     } 
    } 

    public void courselevel() { 
     System.out.println("Please enter course level"); 
     level=in.next(); 
    } 

    public void coursetitle() { 
    } 
} 
+0

你跟這個有什麼問題?我看到的唯一問題是'size'應該是'size()',因爲它是'ArrayList'類的一個方法。 – 2012-02-18 16:21:43

+0

當你說你有比較的問題時,究竟是什麼問題?是否有錯誤訊息? – erisco 2012-02-18 16:21:54

+0

嗨,歡迎回復,問題沒有()後大小。致以我的問候。 – 2012-02-18 16:22:51

回答

3

這是students.size()而不是students.size

此外,還有另一個錯誤:

應該students.add(addstudent),不students.add(Student.fname)

+0

歡呼你的幫助。 – 2012-02-18 16:22:16

1

這是students.size(),因爲studentsArrayList

+0

乾杯! – 2012-02-18 16:26:41

1

你想用students.size()size是列表類型上的一種方法,而不是屬性(如length在數組上)。

此外,在構造函數中,你有這樣的逆轉:

MaxCapacity = amountstudents; 

它應該是:

amountstudents = MaxCapacity; 
+0

歡呼你的幫助。 – 2012-02-18 16:25:56