课程类Course 如下改写Course类: 编写一个课程类Course

java\u96c6\u5408\uff0c\u5b9a\u4e49\u4e24\u4e2a\u7c7b\uff0c\u5b66\u751fStudent\u548c\u8bfe\u7a0bCourse\uff0c\u8bfe\u7a0b\u88ab\u5b66\u751f\u9009\u4fee\uff0c\u8bf7\u5728\u8bfe\u7a0b\u7c7b\u4e2d\u63d0\u4f9b\u4ee5\u4e0b\u529f\u80fd\uff1a

Course\u7c7b\uff1a
package com.goodprg.d1207.que1;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class Course
{
private String name;
//\u9009\u4e2d\u6b64\u8bfe\u7a0b\u7684\u5b66\u751f\u6210\u7ee9
private List stuList = new ArrayList();

public Course()
{
super();
}
public Course(String name)
{
super();
this.name = name;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public List getStuList()
{
return stuList;
}
public void setStuList(List stuList)
{
this.stuList = stuList;
}

public void stuChoose(Student s)
{
this.stuList.add(s);
}

/**
* \u8ba1\u7b97\u5e73\u5747\u503c
*
* @return [\u53c2\u6570\u8bf4\u660e]
*
* @return float [\u8fd4\u56de\u7c7b\u578b\u8bf4\u660e]
* @exception throws [\u8fdd\u4f8b\u7c7b\u578b] [\u8fdd\u4f8b\u8bf4\u660e]
* @see [\u7c7b\u3001\u7c7b#\u65b9\u6cd5\u3001\u7c7b#\u6210\u5458]
*/
public float getAvg()
{
int count = 0;
float total = 0;
for(Student s : stuList)
{
total = total + s.getScore();
count++;
}
if(count==0)
{
return 0;
}
return total / count;
}

/**
* \u8ba1\u7b97\u65b9\u5dee
*
* @return [\u53c2\u6570\u8bf4\u660e]
*
* @return float [\u8fd4\u56de\u7c7b\u578b\u8bf4\u660e]
* @exception throws [\u8fdd\u4f8b\u7c7b\u578b] [\u8fdd\u4f8b\u8bf4\u660e]
* @see [\u7c7b\u3001\u7c7b#\u65b9\u6cd5\u3001\u7c7b#\u6210\u5458]
*/
public float getVariance()
{
if(stuList.size()==0)
{
return 0;
}

float avg = getAvg();
float totalTmp = 0;
for(Student s : stuList)
{
float sub = s.getScore() - avg;
totalTmp = sub * sub + totalTmp;
}

return totalTmp / stuList.size();
}

/**
* \u6c42\u4e2d\u4f4d\u6570
*
* @return [\u53c2\u6570\u8bf4\u660e]
*
* @return float [\u8fd4\u56de\u7c7b\u578b\u8bf4\u660e]
* @exception throws [\u8fdd\u4f8b\u7c7b\u578b] [\u8fdd\u4f8b\u8bf4\u660e]
* @see [\u7c7b\u3001\u7c7b#\u65b9\u6cd5\u3001\u7c7b#\u6210\u5458]
*/
public float getMedian()
{
if(stuList.size()==0)
{
return 0;
}

int inx = stuList.size() / 2;
int mod = stuList.size() % 2;
//\u6392\u5e8f\u96c6\u5408
Collections.sort(stuList);
//\u4e2a\u6570\u4e3a\u5947\u6570
if(mod==1)
{
return stuList.get(inx).getScore();
}
//\u4e2a\u6570\u4e3a\u5076\u6570
else
{
float s1 = stuList.get(inx-1).getScore();
float s2 = stuList.get(inx).getScore();
return (s1+s2)/2;
}
}

/**
* \u6392\u5e8f\u540e\uff0c\u8fd4\u56de\u7684list
*
* @return [\u53c2\u6570\u8bf4\u660e]
*
* @return List [\u8fd4\u56de\u7c7b\u578b\u8bf4\u660e]
* @exception throws [\u8fdd\u4f8b\u7c7b\u578b] [\u8fdd\u4f8b\u8bf4\u660e]
* @see [\u7c7b\u3001\u7c7b#\u65b9\u6cd5\u3001\u7c7b#\u6210\u5458]
*/
public List sortStudents()
{
Collections.sort(stuList);
return stuList;
}

public static void main(String[] args)
{
int a = 9/2;
System.out.println(a);
}
}

Student\u7c7b\uff1a
package com.goodprg.d1207.que1;

public class Student implements Comparable
{
//\u5b66\u751f\u59d3\u540d
private String name;
//\u8bfe\u7a0b\u6210\u7ee9
private float score;

public Student()
{
super();
}

public Student(String name, float score)
{
super();
this.name = name;
this.score = score;
}

public String getName()
{
return name;
}

public void setName(String name)
{
this.name = name;
}

public float getScore()
{
return score;
}

public void setScore(float score)
{
this.score = score;
}

@Override
public int compareTo(Student o)
{
int res = this.score>o.score ? 1 : (this.score==o.score ? 0 : -1);
return res;
}

@Override
public String toString()
{
return "\u5b66\u751f\uff1a\u3010" + name + "\u3011\u6210\u7ee9\u4e3a\uff1a" + score;
}

}

\u6d4b\u8bd5\u7c7b\uff1a
package com.goodprg.d1207.que1;

import java.util.List;

public class Test
{

public static void main(String[] args)
{
Student s1 = new Student("\u5f20\u4e00",92);
Student s2 = new Student("\u5f20\u4e8c",83);
Student s3 = new Student("\u5f20\u4e09",77);
Student s4 = new Student("\u5f20\u56db",99);

Course cs = new Course("\u9a6c\u5217\u4e3b\u4e49");
cs.stuChoose(s1);
cs.stuChoose(s2);
cs.stuChoose(s3);
cs.stuChoose(s4);

//\u5e73\u5747\u503c
System.out.println("\u8bfe\u7a0b\u3010"+cs.getName()+"\u3011\u5b66\u751f\u5e73\u5747\u503c\uff1a"+cs.getAvg());
System.out.println("\u8bfe\u7a0b\u3010"+cs.getName()+"\u3011\u5b66\u751f\u6210\u7ee9\u65b9\u5dee\uff1a"+cs.getVariance());
System.out.println("\u8bfe\u7a0b\u3010"+cs.getName()+"\u3011\u5b66\u751f\u6210\u7ee9\u4e2d\u4f4d\u6570\uff1a"+cs.getMedian());
System.out.println("\u8bfe\u7a0b\u3010"+cs.getName()+"\u3011\u5b66\u751f\u6210\u7ee9\u6392\u5e8f\u5982\u4e0b\uff1a");
List sortStus = cs.sortStudents();
for(Student s : sortStus)
{
System.out.println(s);
}
}

}


\u8fd0\u884c\u7ed3\u679c
\u8bfe\u7a0b\u3010\u9a6c\u5217\u4e3b\u4e49\u3011\u5b66\u751f\u5e73\u5747\u503c\uff1a87.75
\u8bfe\u7a0b\u3010\u9a6c\u5217\u4e3b\u4e49\u3011\u5b66\u751f\u6210\u7ee9\u65b9\u5dee\uff1a70.6875
\u8bfe\u7a0b\u3010\u9a6c\u5217\u4e3b\u4e49\u3011\u5b66\u751f\u6210\u7ee9\u4e2d\u4f4d\u6570\uff1a87.5
\u8bfe\u7a0b\u3010\u9a6c\u5217\u4e3b\u4e49\u3011\u5b66\u751f\u6210\u7ee9\u6392\u5e8f\u5982\u4e0b\uff1a
\u5b66\u751f\uff1a\u3010\u5f20\u4e09\u3011\u6210\u7ee9\u4e3a\uff1a77.0
\u5b66\u751f\uff1a\u3010\u5f20\u4e8c\u3011\u6210\u7ee9\u4e3a\uff1a83.0
\u5b66\u751f\uff1a\u3010\u5f20\u4e00\u3011\u6210\u7ee9\u4e3a\uff1a92.0
\u5b66\u751f\uff1a\u3010\u5f20\u56db\u3011\u6210\u7ee9\u4e3a\uff1a99.0

interface Animal { void run(); }
interface Plant { void eatable(); }
class Bird implements Animal { public void run() {} }
class Fish implements Animal { public void run() {} }
class Grass implements Plant { public void eatable() {} }
class Tomato implements Plant { public void eatable() {} }

使用ArrayList集合即可存储动态变化的学生姓名,并使用泛型限制ArrayList集合中只能存储String类型的数据。
修改后的Java程序:
import java.util.ArrayList;
import java.util.List;

/**
* 课程类
* @author developer
* @version 2017.06.26
*/
class Course {
/**
* 课程名称
*/
private String courseName;

/**
* 学生姓名集合
*/
private List<String> students = new ArrayList<String>();

/**
* 构造方法
* @param courseName 课程名称
*/
public Course(String courseName){
this.courseName = courseName;
}

/**
* 获得课程名称
* @return 课程名称
*/
public String getCourseName(){
return courseName;
}

/**
* 添加学生信息
* @param student 学生姓名
*/
public void addStudent(String student){
students.add(student);
}

/**
* 根据姓名删除学生信息
* @param student 学生姓名
*/
public void dropStudent(String student){
for(String stu : students) {
if(stu.equals(student)) {
students.remove(stu);
break;
}
}
}

/**
* 返回学生姓名集合
* @return 学生姓名集合
*/
public List<String> getStudents(){
return students;
}
}

/**
* 测试类
* @author developer
* @version 2017.06.26
*/
public class TestCourse {
public static void main(String[] args) {
Course course1 = new Course("Date Structures");
Course course2 = new Course("Database Systems");

course1.addStudent("Peter Jones");
course1.addStudent("Kim Smith");
course1.addStudent("Anne Kennedy");

course2.addStudent("Peter Jones");
course2.addStudent("Steve Smith");

List<String> students = course1.getStudents();
System.out.println("Number of students in course1: " + students.size());

System.out.print(students.get(0));
for(int i=1; i<students.size(); i++) {
System.out.print(", " + students.get(i));
}

System.out.println();
System.out.print("\nNumber of students in course2: " + course2.getStudents().size());
}
}

运行测试:
Number of students in course1: 3
Peter Jones, Kim Smith, Anne Kennedy

Number of students in course2: 2

String str = “Hello world”;
String str = new String("Hello world");

主要可以通过以上两种方法定义字符串变量。
在Java中,字符串不可单调的称之为变量,而是对象,每当创建了一个字符串对象后,它都会有自己的方法和属性,也就是对象的成员。
在Java中,一定要深入去理解面向对象的思想,时刻谨记“一切皆是对象”。



扩展阅读:ai智能写作一键生成 ... 课程在线coursera ... 免费中文文字在线翻译 ... course的本义和内涵 ... coursera中文版入口 ... 把course表中课程号为3 ... coursera在线课堂官网 ... 英转中翻译器 ... coursera官网自学 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网