只有test跟实现类接口喔
package com.glj.shiyan4;
import java.util.ArrayList;
import java.util.List;
import com.glj.shiyan4.entity.Student;
import com.glj.shiyan4.entity.Student.Sex;
import com.glj.shiyan4.service.StudentService;
import com.glj.shiyan4.service.impl.StudentServiceImpl;
public class Test {
private static StudentService stuSer=new StudentServiceImpl();
public static void addStuTest() {
System.out.println("学生名单——————————————————————————————————————————————————————————————————————");
Student s=new Student(1001,Sex.FEMALE,"zhangsan",2016);
stuSer.addStudent(s)
.forEach(a->{
System.out.println(a.getId()+" "+a.getName()+" "+a.getSex()+" "+a.getYear());
});
}
public static void listStudentsByYear() {
int year=2010;
System.out.println("按year分——————————————————————————————————————————————————————————————————————");
stuSer.listStudentsByYear(year)
.forEach(a->
{
System.out.println(a.getId()+a.getName()+a.getSex()+a.getYear());
});
}
private static void listStudentsNames() {
int year=2010;System.out.println("按year和sex分——————————————————————————————————————————————————————————————————————");
Student s=new Student(1001,Sex.FEMALE,"zhangsan",2016);
stuSer.listStudentsNames(year,s.getSex())
.forEach(a->{
System.out.println(a);
});
}
private static void removeStudent() {
int i=1001;
stuSer.removeStudent(i);
}
public static void main(String[] args) {
listStudentsByYear();
listStudentsNames();
addStuTest();
removeStudent();
}
}
package com.glj.shiyan4.service.impl;
import java.time.Year;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;import java.util.stream.Collector;
import java.util.stream.Collectors;
import com.glj.shiyan4.service.*;
import com.glj.shiyan4.entity.*;
import com.glj.shiyan4.entity.Student.Sex;
import com.glj.shiyan4.resouce.*;
public class StudentServiceImpl implements StudentService {
List<Student> stus=DatabaseUtils.getStudents();
@Override
public List<Student>addStudent(Student student) {
stus.add(student);
return stus;
}
@Override
public List<Student> listStudentsByYear(int year) {
// TODO Auto-generated method stub
List <Student> students=new ArrayList<>();
for (Student student : stus) {
if(student.getYear()==year)
students.add(student);
}
return students;
}
@Override
public List<String> listStudentsNames(int year, Sex sex) {
// TODO Auto-generated method stub
List<String> students=new ArrayList<>();
for (Student student : stus) {
if(student.getYear()==year&&student.getSex().equals(sex))
students.add(student.getName());
}
return students;
}
@Override
public Map<Sex,List<Student>>mapStudentsBySex() {
// TODO Auto-generated method stub
return stus.stream()
.collect(Collectors.groupingBy(Student::getSex));
}
@Override
public boolean removeStudent(int id) {
Iterator<Student>stusIterator=stus.iterator();
System.out.println("删除后名单");
while(stusIterator.hasNext())
{
Student uStudent=stusIterator.next();
if(id==uStudent.getId())
{
stusIterator.remove();//System.out.println("1");
}
}//迭代器走到最后了换一个,删除了张三
Iterator<Student>stusIterator2=stus.iterator();
while(stusIterator2.hasNext())
{
Student uStudent=stusIterator2.next();
System.out.println(uStudent.getName());
//System.out.println("1");
}
return false;
}
}