首页 > 解决方案 > 如何在java中用括号对长布尔表达式进行换行

问题描述

如何在 java 中包装这个表达式以提高可读性,并限制 (shouldSendSomething(x) && loooongFunctionName1(x) && looooongFunctionName2(x))括号内的子表达式太长而不能放在一行中?

!(loooongFunctionName0(x) && loooongFunctionName1(x) && looooongFunctionName2(x)) && looooongFunctionName3(x) && looooongFunctionName4(x) && looooongFunctionName5(x)

标签: javacoding-styleindentationline-breakscode-readability

解决方案


也许每个条件都在新行上?

if (!(loooongFunctionName0(x) 
                && loooongFunctionName1(x) 
                && looooongFunctionName2(x)) 
                && looooongFunctionName3(x) 
                && looooongFunctionName4(x) 
                && looooongFunctionName5(x)) {
            
        }

后期编辑:如果条件太多,通常意味着某处存在设计问题,可能需要进行一些重构。


推荐阅读