我正在做一个有不同课程(APO1,Oganic,Lab,Calculus)的课程,每个课程都属于一个部门(数学,化学等)。现在我必须创建一个计算部门中有多少类的方法,但我无法弄清楚如何。我有两个名为" Class"的Java类。和#34; CertificateGrades"。
我创建了String常量
public final static String MATH = "Math";
public final static String CHEMISTRY = "Chemistry";
public final static String PHYSICS = "Physics";
我创建了一个像这样的构造函数方法
public Class( String pName, String pDepartment, int pNumberCredits )
{
pName = name ;
pDepartment = nameDepartment ;
pNumberCredits = numberCredits;
grade = -1;
}
将类作为对象处理
public CertificateGrades( )
{
Class class1= new Class("APO1", Class.MATH, 3);
Class class2= new Class("Calculus", Class.MATH, 3);
Class class3= new Class("Organic", Class.CHEMISTRY, 3);
Class class4= new Class("Lab", Class.PHYSICS, 1);
}
- 最后,我无法弄清楚如何制作一个方法(这就是老师问的那个),它计算了一个部门中有多少课程
public int giveNumberClassesDepartment( String pDepartment )
{
????????????????????????
}
感谢
答案 0 :(得分:0)
这是一个非常奇怪的方法。
更好的解决方案是创建一个名为public function post(){
try{
$con = connectDB();
$sth = $con->prepare('SELECT * FROM posts');
$sth->execute();
$posts = $sth->fetchAll();
foreach($posts as $post){ ?>
<div>
<h2><?php echo $post['title']; ?></h2>
<p>
<?php echo $post['content']; ?>
</p>
<h6><?php echo $post['category']; ?></h6>
</div>
<?php }
}catch(PDOException $e){echo $e->getMessage();}
return $posts;
}
的{{1}}类。然后,创建一个名为Math
和extends Class
的类。有了它,您现在可以创建这两个类Calculus
。
对物理学做同样的事。
现在,您所要做的就是创建一个包含Math类型的APO1
,并将类型为extends Math
的类添加到ArrayList
中。 (微积分和APO1都Calculus and APO1
,还记得吗?)
您现在可以创建一个类似的方法:
ArrayList
现在将包含extends Math
类型的public int giveNumberClassesDepartment(ArrayList<Class> arrayList)
{
return arrayList.size();
}
插入该方法,并正确返回正确的数字。
答案 1 :(得分:0)
您可以参考这些代码。我使用了像List这样的简单方法 //类
public class Class {
public final static String MATH = "Math";
public final static String CHEMISTRY = "Chemistry";
public final static String PHYSICS = "Physics";
private String pName;
private String pDepartment;
private int pNumberCredits;
private double grade;
public Class(String pName, String pDepartment, int pNumberCredits) {
this.pName = pName;
this.pDepartment = pDepartment;
this.pNumberCredits = pNumberCredits;
this.grade = -1;
}
/**
* @return the pName
*/
public String getpName() {
return pName;
}
/**
* @param pName the pName to set
*/
public void setpName(String pName) {
this.pName = pName;
}
/**
* @return the pDepartment
*/
public String getpDepartment() {
return pDepartment;
}
/**
* @param pDepartment the pDepartment to set
*/
public void setpDepartment(String pDepartment) {
this.pDepartment = pDepartment;
}
/**
* @return the pNumberCredits
*/
public int getpNumberCredits() {
return pNumberCredits;
}
/**
* @param pNumberCredits the pNumberCredits to set
*/
public void setpNumberCredits(int pNumberCredits) {
this.pNumberCredits = pNumberCredits;
}
/**
* @return the grade
*/
public double getGrade() {
return grade;
}
/**
* @param grade the grade to set
*/
public void setGrade(double grade) {
this.grade = grade;
}
}
// CertificateGrades
public class CertificateGrades {
private List<Class> classes = new ArrayList<Class>();
public void addClass(Class clazz) {
this.classes.add(clazz);
}
public CertificateGrades() {
mockData();
}
/**
* mock data
* */
public void mockData() {
Class class1= new Class("APO1", Class.MATH, 3);
Class class2= new Class("Calculus", Class.MATH, 3);
Class class3= new Class("Organic", Class.CHEMISTRY, 3);
Class class4= new Class("Lab", Class.PHYSICS, 1);
classes.add(class1);
classes.add(class2);
classes.add(class3);
classes.add(class4);
}
public int giveNumberClassesDepartment( String pDepartment )
{
int result = 0;
for (Class clazz : classes) {
if(clazz.getpDepartment().equals(pDepartment)) {
result++;
}
}
return result;
}
}
答案 2 :(得分:0)
我同意Henry98关于创建一个包含类值的数组列表的说法,然后返回数组的.size将告诉你一个部门中有多少个类。
但我对您的问题的问题在于您组织代码的方式以及您实际要求的内容。您是否可以尝试重新提出问题,以便更准确地询问您的需求。我认为你的代码需要自下而上重新编写。