IDEA中设置Tab健为4个空格的方法

 更新时间:2021年03月09日 16:27:35   作者:PC君  
这篇文章给大家介绍了代码缩进用空格还是Tab?(IDEA中设置Tab健为4个空格)的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

  大家敲代码的时候习惯是用Tab还是空格呢?个人还是习惯用Tab,毕竟敲一下跟敲四下比。还是有质的飞跃的。

  但是最近看到一个叫做David Robinson的家伙,根据Stack Overflow开发者调查的原始数据,使用线性回归模型进行分析。研究发现,在控制了国家、编程经验年限、开发人员类型和语言、教育水平、公司规模等等要素后,使用空格的人比使用Tab的人薪水高出8.6%。如图:

  吓的我赶紧开始使用空格,哈哈哈。

  事实上,空格确实比Tab会更好一点。

(1)在不同的编辑器里Tab的长度可能会不一致。这会导致有Tab的代码,用不同的编辑器打开时,格式可能会乱。

(2)代码压缩时,空格会有更好的压缩率。这里面是信息量的问题,使用了Tab的代码,仍然会有空格,比如代码注释、运算符之间的间隔等等,但使用了空格的代码,是可以没有Tab的。Tab也是一个字符,这就决定了,用Tab的代码虽然不压缩的时候更小,但熵更高,因此压缩率会较差,压缩之后反而更大。

  看上去空格似乎完胜,但毕竟还有一个致命的弱点,就是开头提到的,使用空格的话。你得敲四下才顶的上Tab一下,显然不科学啊。那么,有没有更好的方式呢?显然是有的!在IDEA中,可以设置Tab键为4个空格(效果就是,你敲一下Tab键,出来的不是一个Tab字符,而是4个空格),是不是完美了?方法如下:

一、选择File→Settings→Editor→Code style→Java,再点击右边的Tabs and Indents。

1、将Use tab character的勾选去掉。

2、将Indent设置为4(即缩进为4个空格)。

二、验证效果。

1、可以选中代码,使用快捷键Ctrl+Alt+L格式化代码,发现缩进部分可以部分选中,证明是空格不是Tab字符,设置有效。

2、直接按Tab健,发现缩进部分可以部分选中,证明是空格不是Tab字符,设置有效。

如何?是不是很方便!

到此这篇关于IDEA中设置Tab健为4个空格的方法的文章就介绍到这了,更多相关idea tab空格内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • spring mvc url匹配禁用后缀访问操作

    spring mvc url匹配禁用后缀访问操作

    这篇文章主要介绍了spring mvc url匹配禁用后缀访问操作,具有很好的参考价值,希望对大家有所帮助。以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家
    2021-07-07
  • RabbitMQ 3.9.7 镜像模式集群与Springboot 2.5.5 整合

    RabbitMQ 3.9.7 镜像模式集群与Springboot 2.5.5 整合

    今天我们来聊聊 RabbitMQ 3.9.7 镜像模式集群与Springboot 2.5.5 整合,本文通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2021-10-10
  • SpringBoot原理之自动配置机制详解

    SpringBoot原理之自动配置机制详解

    Springboot遵循“约定优于配置”的原则,使用注解对一些常规的配置项做默认配置,减少或不使用xml配置,让你的项目快速运行起来,下面这篇文章主要给大家介绍了关于SpringBoot原理之自动配置机制的相关资料,需要的朋友可以参考下
    2021-11-11
  • 详解SpringBoot中异步请求的实现与并行执行

    详解SpringBoot中异步请求的实现与并行执行

    这篇文章主要为大家详细介绍了在SpringBoot中如何是实现异步请求、并行执行,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-02-02
  • Java并发编程示例(九):本地线程变量的使用

    Java并发编程示例(九):本地线程变量的使用

    这篇文章主要介绍了Java并发编程示例(九):本地线程变量的使用,有时,我们更希望能在线程内单独使用,而不和其他使用同一对象启动的线程共享,Java并发接口提供了一种很清晰的机制来满足此需求,该机制称为本地线程变量,需要的朋友可以参考下
    2014-12-12
  • java.lang.UnsatisfiedLinkError: %1 不是有效的Win32应用程序错误解决

    java.lang.UnsatisfiedLinkError: %1 不是有效的Win32应用程序错误解决

    这篇文章主要给大家介绍了关于java.lang.UnsatisfiedLinkError: %1 不是有效的Win32应用程序错误的解决方法,文中介绍的非常详细,需要的朋友们可以参考学习,下面来一起看看吧。
    2017-03-03
  • SpringBoot2.0集成WebSocket实现后台向前端推送信息

    SpringBoot2.0集成WebSocket实现后台向前端推送信息

    这篇文章主要介绍了SpringBoot2.0集成WebSocket实现后台向前端推送信息,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • SpringBoot自定义监听器的项目实践

    SpringBoot自定义监听器的项目实践

    Spring Boot提供了强大的事件模型,其中包括多种内置监听器,同时也支持开发者自定义监听器,下面就来介绍下SpringBoot自定义监听器,感兴趣的可以了解一下
    2024-03-03
  • SpringMVC实现上传下载文件

    SpringMVC实现上传下载文件

    这篇文章主要为大家详细介绍了SpringMVC实现上传下载文件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-09-09
  • java8 利用reduce实现将列表中的多个元素的属性求和并返回操作

    java8 利用reduce实现将列表中的多个元素的属性求和并返回操作

    这篇文章主要介绍了java8 利用reduce实现将列表中的多个元素的属性求和并返回操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08

最新评论