Java 学生班

Java 学生班,java,Java,您可以用以下方式修改函数GetAllincompletereRequiredClass..我假设您想要打印所有未完成的必需类,包括general和major student.completeClass("calculus", 75); student.completeClass("chemistry", 95); student.completeClass("english", 89); student.completeClass("psychology", 75); student.comp

您可以用以下方式修改函数GetAllincompletereRequiredClass..我假设您想要打印所有未完成的必需类,包括general和major

 student.completeClass("calculus", 75);
student.completeClass("chemistry", 95);
student.completeClass("english", 89);
student.completeClass("psychology", 75);
student.completeClass("economics", 95);

当然,您可以以更好的方式优化代码。

最好一次只问一个问题。是吗?这是可选的。但是我真的很想这样做。你是说这是一个可选的作业,还是说我们可以选择回答第二个问题?请试着理解我们不是通灵者,因此最好多加几个词来解释一个陈述,而不是少加几个词来引出更多的问题。不,家庭作业是可选的,但我想完成编码。请将这些问题添加到家庭作业中,即使它们是可选的或额外的学分家庭作业。这样做是有好处的,因为很多有帮助的人都在观察这个标记,并将不完全类数组初始化为不完全类=新字符串[requiredGeneralClasses.length+requiredInMajorClasses.length];而不是新字符串[1000];对于已经完成的类,有没有办法不获取null?您获取null是因为数组实际分配的空间比实际分配的空间多。因此,对于其余的元素,我们将得到null。您可以动态分配空间,也可以在使用元素之前使用空检查。
public class CSStudentTester 
{
public static void main(String[] args)
{
    CSStudent student = new CSStudent();
    student.completeClass("biology", 75);
    student.completeClass("algorithms", 95);
    student.completeClass("physics", 89);
    student.completeClass("data structures", 85);
    System.out.println("InMajor GPA: " + student.getInMajorGPA());
    System.out.println("Overall GPA: " + student.getOverallGPA());

    for(int i = 0; i < student.count; i++)
    {
    System.out.println(student.getAllIncompleteRequiredClasses()[i]);
    }

    System.out.println(student.hasCompletedAllRequiredClasses());
}
}
 student.completeClass("calculus", 75);
student.completeClass("chemistry", 95);
student.completeClass("english", 89);
student.completeClass("psychology", 75);
student.completeClass("economics", 95);
public String[] getAllIncompleteRequiredClasses()
{
    int counter = 0;
    boolean match =false;
    for(int k = 0; k < requiredGeneralClasses.length; k++)
    {
        for(int i = 0; i < count; i++)
        {

            //System.out.println(requiredGeneralClasses[k] + " "+ completedClasses[i]);
            if(requiredGeneralClasses[k].equalsIgnoreCase(completedClasses[i]))
            {
                match=true;
                break;
            }
        }
        if(!match)
        {
            //inCompleteClasses[counter] = new String();
            inCompleteClasses[counter] = requiredGeneralClasses[k];
            counter++;
        }
        match = false;
    }

    for(int k = 0; k < requiredInMajorClasses.length; k++)
    {
        for(int i = 0; i < count; i++)
        {

            //System.out.println(requiredGeneralClasses[k] + " "+ completedClasses[i]);
            if(requiredInMajorClasses[k].equalsIgnoreCase(completedClasses[i]))
            {
                match=true;
                break;
            }
        }
        if(!match)
        {
            inCompleteClasses[counter] = requiredInMajorClasses[k];
            counter++;
        }
        match = false;
    }
    return inCompleteClasses;
}
public boolean hasCompletedAllRequiredClasses()
{
     for(int i = 0; i < inCompleteClasses.length; i++)
        {
            if(inCompleteClasses[i]!=null)
                return false;
        }
     return true;
}