小编Bib*_*zaz的帖子

将List <Object>转换为Map <String,Integer>,使得String不是使用Java 8 Streams的重复值

我们有一个Student课程如下:

class Student{
    private int marks;
    private String studentName;

    public int getMarks() {
        return marks;
    }

    public void setMarks(int marks) {
        this.marks = marks;
    }

    public String getStudentName() {
        return studentName;
    }

    public void setStudentName(String studentName) {
        this.studentName = studentName;
    }

    public Student(String studentName, int marks) {
        this.marks = marks;
        this.studentName = studentName;
    }

}
Run Code Online (Sandbox Code Playgroud)

我们有一份学生名单如下:

List<Student> studentList = new ArrayList<>();
studentList.add(new Student("abc", 30));
studentList.add(new Student("Abc", 32));
studentList.add(new Student("ABC", 35));
studentList.add(new Student("DEF", 40));
Run Code Online (Sandbox Code Playgroud)

此列表需要转换为以下HashMap<String,Integer>内容:

  1. 地图不包含任何重复的学生
  2. 如果找到重复的学生姓名,他的标记应与前一次出现相加.

所以输出应该是:{ABC = …

java list hashmap java-stream collectors

6
推荐指数
2
解决办法
84
查看次数

方法签名是什么意思?String value()默认“”;

我在 Spring Component 接口中遇到了这个方法签名。

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Indexed
public @interface Component 
{
   String value() default "";
}
Run Code Online (Sandbox Code Playgroud)

方法签名是什么String value() default ""; 意思?为了我们的编码目的,我们应该如何以及何时定义这样的语法?

java syntax annotations spring-boot

4
推荐指数
1
解决办法
1146
查看次数