Tôi có mã tìm kiếm sau trong Java:
return getTableViewController().getMe().getColumns().stream().filter($->Database.equalsColumnName($.getId(), columnId)).findFirst().get();
Tôi đã muốn tìm cột theo tên và trả lại cột đầu tiên được tìm thấy.
Tôi hiểu có trường hợp không tìm thấy gì và cần xử lý như thế nào?
Đây có phải là những gì nó muốn bởi lời thề này:
'Optional.get()' without 'isPresent()' check
?
Làm thế nào để khắc phục? Tôi muốn quay lại null
nếu không tìm thấy gì.
CẬP NHẬT
Được rồi, được rồi, tôi không nhận ra, điều đó findFirst()
sẽ trở lại Optional
.
$
làm mã định danh trong Java: JLS Sec 3.8 : "Dấu $ chỉ nên được sử dụng trong mã nguồn được tạo một cách cơ học hoặc hiếm khi để truy cập các tên có sẵn trên các hệ thống kế thừa."