Я хотел бы создать поток определенных значений и сопоставить их внутреннему классу. Мой текущий код выглядит следующим образом:
return Stream.of((int)levenshteinScore, reverseComparison, regionStart, regionLength).map(Match::new);
public static class Match{
// Properties
public int levenshteinSimilarity;
public boolean reverseComparison;
public int regionStart;
public int regionLength;
// Constructor
public Match(int levenshteinSimilarity, boolean reverseComparison, int regionStart, int regionLength){
this.levenshteinSimilarity = levenshteinSimilarity;
this.reverseComparison = reverseComparison;
this.regionStart = regionStart;
this.regionLength = regionLength;
}
}
Однако это дает мне ошибку «неправильный тип возврата в ссылке на метод». Может ли кто-нибудь пролить свет на эту проблему?
Stream.of()
возвращает Stream
указанных элементов. Передача ссылки на метод map
для этого Stream
применила бы этот метод к каждому элементу Stream
отдельно. Следовательно, может работать только конструктор, который принимает единственный аргумент. Однако Match::new
ссылается на конструктор с 4 аргументами.