Если третья сторона запрашивает аргумент attachments
в методе, как я могу избежать использования if
и разбить цепочку методов, зная, что мой аргумент может быть нулевым? Метод имеет следующее определение.
// import org.jetbrains.annotations.NotNull;
EmailBuilder withAttachments(@NotNull List<Attachment> attachments);
Я бы предпочел NOT , используя условие if для .withAttachments, когда attachments == null. Я знаю, что javascript имеет метод? (), Но что подходит для java8 или выше? В случае, когда (attachments == null) я вообще не хочу звонить .withAttachments()
. Но я не вижу синтаксис, сопоставимый с methodA? (), Как в javascript, или машинописный текст.
return emailBuilder()
.withSubject(email.getSubject())
.withReplyTo(replyAddresses)
.withAttachments(attachments) // This is conditional...based on attachments
.withHeader("X-showheader", email.getShowHeader());
.build();
Требуется ли мне это делать?
EmailBuilder eb = emailBuilder()
.withSubject(email.getSubject())
.withReplyTo(replyAddresses);
if(attachments)
eb = eb.withAttachments(attachments); // This is conditional...based on attachments
eb = eb.withHeader("X-showheader", email.getHeader())
.build;
return eb;