如何检查列表中是否只有一个非null元素,如果是,则使用Java 8或Streams检索该元素?
我的一种方法返回对象列表,该对象需要检查返回的列表是否仅包含一个非null对象。如果是这样,它将创建一个如下定义的映射,否则,需要记录以下错误。
`public void myMethod() {
List<MyClass> tst = getAll();
if(!tst.isEmpty() ) {
if( tst.size() == 1) {
if(tst.get(0)!= null) {
MyClass class1 = tst.get(0);
Map<Integer,MyClass> m =
Stream.of(class1).collect(Collectors.toMap(MyClass:: getId,
Function.identity()));
}
}
else {
LOGGER.error("Multiple object found - {} object", tst.size());
}
}`
我正在寻找一种以干净且标准的格式书写的方法,因为我有三个If条件
答案 0 :(得分:0)
类似的事情应该可以解决,但它不使用流。如果您真的需要使用流,请这样说,我将尝试一下:)
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim gen1 As New System.Random
Dim random As Integer
Dim B1 As String
random = gen1.Next(0, 101)
Select Case random
Case Is <= 50
MessageBox.Show("less than or = to 50")
Case Else
MessageBox.Show("More than or = to 51")
End Select
End Sub