V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
iFlicker
V2EX  ›  Android

Android Studio 如何补全所有的 if for 单行省略掉的大括号?

  •  
  •   iFlicker · Jan 2, 2020 · 15051 views
    This topic created in 2307 days ago, the information mentioned may be changed or developed.

    如题
    陈旧项目中代码风格紊乱 其他都都可以根绝 Code Style 进行 Reformat
    但是很多因为 if else for while 中只有单行 而省略了大括号的代码

    if(value){
    	if(lll){
        	for(xxx;xxx;xxx)
            	do something;
        } else
        	do something;
    }
    

    类似如上 影响阅读。。。
    有没有方便的工具给整个项目所有的省略掉的大括号给加上并强制要求不允许这种写法?

    8 replies    2020-01-04 08:51:50 +08:00
    gotonull
        1
    gotonull  
       Jan 2, 2020   ❤️ 1
    p3c 了解一下
    iFlicker
        2
    iFlicker  
    OP
       Jan 2, 2020
    @xzceprint 这个插件可以按照规范格式化吗? 我记得只是提醒
    acrisliu
        3
    acrisliu  
       Jan 2, 2020   ❤️ 1
    @iFlicker #2 我记得可以 alt + Enter 自动修正的,装个试下?
    iFlicker
        4
    iFlicker  
    OP
       Jan 2, 2020
    @acrisliu
    @xzceprint
    可以修正 并且可以扩展自定义规则 核心是 PMD
    thx
    zxCoder
        5
    zxCoder  
       Jan 2, 2020
    (手动改,改完就下班
    iFlicker
        6
    iFlicker  
    OP
       Jan 3, 2020
    @zxCoder 那完了 那得猴年马月
    9u1pMf37KSwB7Cum
        7
    9u1pMf37KSwB7Cum  
       Jan 3, 2020   ❤️ 2
    恰好最近研究了一下,到这里修改:
    Preferences/Settings > Editor > Code Style > Java > Wrapping and Braces > 'if ()' statement > Force braces > 设置为 Always
    这样 Reformat 的时候就会强制加 {},for 设置相似。

    要做到强制的话,可以考虑在 git hook 里加 Check Style 扫描
    iFlicker
        8
    iFlicker  
    OP
       Jan 4, 2020 via Android
    @luobo25L 谢谢 这个比用插件方便多了 我一开始想到在 codeStyle 改 但是以为没这个选项就没去研究 。。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2997 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 15:11 · PVG 23:11 · LAX 08:11 · JFK 11:11
    ♥ Do have faith in what you're doing.