如何在PowerShell方法链中实现换行?求助可行解决方案
解决Fluent API链式调用换行报错的方案
下面几种方案都能帮你避免把代码挤在一行,同时解决换行报错的问题:
用括号包裹整个链式调用
把整个方法链放到一对括号里,编译器就不会把换行识别成语句结束,示例代码:RetryService service = (new RetryService() .setRetryCount(3) .setWaitTime(1000) .setBackoffStrategy(BackoffStrategy.EXPONENTIAL) .build());这种方式适配大部分主流编程语言,不会破坏Fluent API的链式逻辑。
拆分链式调用为分步变量操作
没必要硬凑链式,把每个方法调用拆成单独步骤,用变量暂存中间实例,既解决换行问题,调试也更方便:RetryService service = new RetryService(); service.setRetryCount(3); service.setWaitTime(1000); service.setBackoffStrategy(BackoffStrategy.EXPONENTIAL); service.build();按语言规则调整换行位置
很多语言允许在方法调用的.之后换行,只要别把标识符拆断就行,比如这样写:new RetryService() .setRetryCount(3) .setWaitTime(1000) .setBackoffStrategy(BackoffStrategy.EXPONENTIAL) .build();这种写法不需要额外括号,只要保证每一行开头是
.,编译器就能正确识别是同一条链式调用。
内容的提问来源于stack exchange,提问作者rubgra
相关产品推荐
相关产品推荐

