我有一個類可以計算在java中使用Lambdas的語句的平均單詞數。我遇到的問題是,如果corp爲null或爲空,我需要返回0.目前,我得到NaN,如果corp爲null或爲空。我的代碼的其餘部分做它應該做的,但我無法弄清楚這一部分。使用lambdas檢查是否等於null或空
public class AverageNumberOfWordsPerSentence extends TextMetric<Double> {
@Override
public Double apply(final Corpus corp) {
Sentences sentences = new Sentences();
List<String> sentenceList = sentences.apply(corp);
LongSummaryStatistics lss = corp.texts().stream()
.map(blob -> blob.text())
.flatMap(string -> stream
(string.split("\\W+")))
.filter(string -> !string.isEmpty())
.mapToLong(String::length)
.summaryStatistics();
return (double)lss.getCount()/
sentenceList.size();
}
爲什麼不老式的方式,明確地檢查它? (雖然,坦率地說:http://stackoverflow.com/a/6921270/869736) –
'corp == null'是最好也是最簡單的方法,你什麼意思是空'corp'? – 11thdimension
我不允許使用控制結構。這就是爲什麼這是困難的,我會張貼公司很快。 – ObiJuanKanobe