Java 如何显示带有s1.computeGrade(69)的arrayList并将其打印出来
这是我的课Java 如何显示带有s1.computeGrade(69)的arrayList并将其打印出来,java,arrays,Java,Arrays,这是我的课 package studentresults; public class Student { private String name, subject, grade; public Student(String name, String subject) { this.name = name; this.subject = subject; } public String getGrade() { return grade; } public voi
package studentresults;
public class Student
{
private String name, subject, grade;
public Student(String name, String subject)
{
this.name = name;
this.subject = subject;
}
public String getGrade()
{
return grade;
}
public void computeGrade(double marks)
{
if(marks >= 80)
{
this.grade = "A";
}
else if (marks>=70)
{
this.grade = "B";
}
else if (marks>=60)
{
this.grade = "C";
}
else if (marks>=50)
{
this.grade = "D";
}
else
{
this.grade = "F";
}
}
public void computeGrade(String score)
{
if (score == "Pass")
{
this.grade = "P";
}
else
{
this.grade = "F";
}
}
public String toString()
{
String info = "Name: " + name + "\t Subject: " + subject + "\t Grade: " + grade;
return info;
}
}
下面是我的主要观点:
package studentresults;
import java.util.ArrayList;
public class StudentResults
{
public static void main(String[] args)
{
ArrayList<Student> stuList = new ArrayList<>();
ArrayList newList = new ArrayList();
Student s1 = new Student("Clara Ng", "Basic Accounting");
Student s2 = new Student("Kate Sun", "Basic Accounting");
Student s3 = new Student("Ray Wong", "French Language");
Student s4 = new Student("Nadirah", "Creative Writing");
Student s5 = new Student("Fabian Ho", "Basic Accounting");
Student s6 = new Student("Tan Kexin", "Creative Writing");
stuList.add(s1);
stuList.add(s2);
stuList.add(s3);
stuList.add(s4);
stuList.add(s5);
stuList.add(s6);
s1.computeGrade(79);
s2.computeGrade("Pass");
s3.computeGrade(65.5);
s4.computeGrade(85);
s5.computeGrade("Fail");
s6.computeGrade(74.5);
newList.addAll(stuList);
for(int i=0;stuList.length;i++)
{
if()
{
//System.out.println(i.toString());
}
}
}
package studentresults;
导入java.util.ArrayList;
公开课学生成绩
{
公共静态void main(字符串[]args)
{
ArrayList stuList=新的ArrayList();
ArrayList newList=新的ArrayList();
学生s1=新生(“Clara Ng”,“基础会计”);
学生s2=新生(“凯特·孙”,“基础会计”);
学生s3=新生(“Ray Wong”,“法语”);
学生s4=新生(“纳迪拉”,“创造性写作”);
学生s5=新学生(“费边·何”,“基础会计”);
学生s6=新生(“谭可欣”,“创意写作”);
添加(s1);
添加(s2);
添加(s3);
添加(s4);
添加(s5);
增补(中六);;
s1.计算贸易(79);
s2.计算机积分(“通过”);
s3.计算积分(65.5);
s4.计算机积分(85);
s5.计算贸易(“失败”);
s6.计算机等级(74.5);
newList.addAll(stuList);
for(int i=0;stuList.length;i++)
{
if()
{
//System.out.println(i.toString());
}
}
}
}
1) 使用学生课堂中创建的arrayList/vector和方法,将所有未评分及格学生的详细信息打印到屏幕上
2) 使用在学生课堂上创建的arrayList/vector和方法,将成绩为B或更好的学生总数打印到屏幕上。只需重复它,例如第二个问题:
for(student : stuList) {
if("B".equals(student.getGrade()) || "A".equals(student.getGrade())) {
student.toString();
}
}
你可以做的更容易,同样的第一个!
希望这有帮助 Edit
Student
Class使用.equals()
比较字符串
public void computeGrade(String score)
{
if (score.equals("Pass"))
{
this.grade = "P";
}
else
{
this.grade = "F";
}
}
你的主要意见是:
int highGradeStudents=0;
for(int i=0;i < stuList.size();i++)
{
if(!stuList.get(i).getGrade().equals("P"))//all the non-graded pass students
{
System.out.println(stuList.get(i).toString());
}
if(stuList.get(i).getGrade().equals("B") || stuList.get(i).getGrade().equals("A")) {
//calculate number of students whose grade was B or better
highGradeStudents++;
}
}
System.out.println("the total number of students whose grade is B or better = "+highGradeStudents);
int高年级学生=0;
对于(int i=0;i
for(int i=0;stuList.length;i++)。。。对于我得到的错误,是。长度是下划线,说找不到符号等。错误仍然存在,尝试了它,并且相同,不兼容的类型:int不能从For循环转换为booleanline 33谢谢帮助。在第37行,stuList.get(i).toString();。。。学生数据没有显示,我只需要将system.out.println和它的完成?但是如果我只想用P或F表示,我是否也要把| |放在第36行?@lexus如果你只想用P或F表示if(stuList.get(i).getGrade().equals(“P”)| stuList.get(i).getGrade().equals(“F”)