IDEA使用小技巧

news2024/9/20 16:25:01

常用的基本设置

  • 界面字体
    • File | Settings | Appearance & Behavior | Appearance
  • 编辑区字体
    • File | Settings | Editor | Color Scheme | Color Scheme Font
      Use color scheme font instead of the default
  • 控制台字体
    • File | Settings | Editor | Color Scheme | Console Font
      Use console font instead of the default
  • 通过ctrl+鼠标滚轮控制字体大小
    File | Settings | Editor | General 勾选 change font size with Ctrl+Mouse Wheel
  • 将编码全部改为UTF-8
    在settings中搜索encode,将编码都改为utf-8
  • JDK设置
    Project Structure - Project Settings - Project - SDK
  • 单击目录的文件自动打开并定位在编辑区
    项目目录始终定位在编辑区打开的文件
    在这里插入图片描述
  • 自动导入(import)
    File | Settings | Editor | General | Auto Import
    在这里插入图片描述

编辑区设置

  • 显示行号
    File | Settings | Editor | General | Appearance
    Show line numbers
  • tabs位置
    File | Settings | Editor | General | Editor Tabs
    Tab placement
  • tabs排序
    File | Settings | Editor | General | Editor Tabs
    Sort tabs alphabetically

代码编辑

  • 复制
    复制一行代码时,可以直接把光标放在该行任意位置,Ctrl+C
    复制文件名时,直接在左侧的项目目录选择文件,Ctrl+C
    复制光标所在行,Ctrl+D
    复制多行,先选中多行,Ctrl+D
    查看复制历史,Ctrl+shift+V,双击即可粘贴内容

  • 粘贴
    普通粘贴,会自动格式化,Ctrl+V
    纯文本粘贴,不会格式化,Ctrl+alt+shift+V

  • 格式化代码
    文件格式化:Ctrl+alt+L
    局部格式化:选中需要格式化的部分,Ctrl+alt+L

  • 剪切
    剪切光标所在行(不需要选中),可以当删除用,Ctrl+X

  • 移动
    Alt+Shift+上/下:当前行向上/下移动一行
    Ctrl+Shift+上/下:带格式移动
    选中多行可以移动多行

快速跳转

  • 行内跳转
    Home键跳到行首,End键跳到行尾
    Ctrl+左/右:光标一次跳过一个词
    Ctrl+Shift+左/右:选中一个词
  • 根据行号定位
    Ctrl+G:跳到指定行
  • Tabs快速切换
    Alt+左/右:左/右切换Tabs
  • 查看最近浏览过的文件
    Ctrl+E

快速查找和替换

  • 当前文件查找
    Ctrl+F
  • 当前文件替换
    Ctrl+R
  • 全局搜索(Find in Files)
    Ctrl+Shift+F(可以选择项目或目录等)
  • 全局替换
    Ctrl+Shift+R
  • 万能查找
    Shift+Shift,可以查找文件、操作、文本等

万能快捷键

Alt+Enter
智能辅助提示。给出的提示与当前光标所在的位置有关系。

  • 见到红色报错就按
  • 见到波浪线警告就按
  • 没报错没警告也可以按(删除无用变量,自动生成构造方法)

键鼠配合

  • 竖向选择
    alt+鼠标左键拖动
  • 进入方法
    Ctrl+鼠标左键
    跳回刚才的位置:Ctrl+Alt+方向键左

调试项目

  • Step Over:执行到当前方法的下一句
  • Step Into:进入当前行调用的方法体里
  • Step Out:执行完当前的方法
  • Run to Cursor:运行到光标所在处
  • 删除断点、失效断点、条件断点
    在这里插入图片描述
  • Mute Breakpoints:失效所有断点
  • 异常断点:当抛出某个异常时执行断点在这里插入图片描述

代码生成Generate

在类中使用快捷键Alt+Insert 或者 右键-Generate
在这里插入图片描述

  • 生成Get/Set方法
    Getter and Setter
  • 生成构造函数
    Constructor
  • toString
    toString():默认使用+拼接,建议使用stringbuffer
    在这里插入图片描述
  • equals() and hashCode()
    生成时可以选择判断相等或生成哈希的属性

代码重构

  • 重命名
    选中后,Shift+F6或右键-Refactor-Rename
    变量、函数、类
    在改动函数名时,idea会同步选择项目中相同的地方进行修改,如果idea筛选的改动位置不是我们希望改动的,可以右键-exclude,排除当前行,如果某个包下都不想改,可以在包上右键-exclude,统一排除。
  • 抽取方法
    将部分代码抽取出一个新的方法
    选中代码-右键-Refactor-Extract Method
  • 生成变量
    Ctrl+Alt+V:调用方法自动生成返回值;实例化对象自动生成变量
  • 文件移动/复制/删除
    移动:选中文件,F6 或 右键-Refactor-Move
    复制:F5
    删除:Delete

代码模板

File | Settings | Editor | Live Templates(可以自定义)
live templates (直接打快捷键)

  • 生成Main函数
    psvm
  • 生成输出语句
    sout
  • 生成for循环
    fori

File | Settings | Editor | General | Postfix Completion(不能自定义)
postfix(先打变量或表达式,再打.快捷键)

  • 10.fori:for (int i = 0; i < 10; i++) { }
  • i==1.if:if (i==1) { }
  • user.null:if (user == null) { }
  • user.sout:System.out.println(user);

更多实用技巧

  • tab分屏和独立
    右键-split
    tab变为独立窗口:拖动出idea/选择文件 Shift+F4
  • 本地修改历史
    选择文件-右键Local History-Show History
  • 查看方法调用情况
    选择方法 Ctrl+Alt+H 或 点击Hierarchy窗口
    Caller:调用该方法的
    Callee:该方法调用的
  • 多选
    选择文件中出现的所有同一字符串:选择字符串-Ctrl+Alt+Shift+J

常用插件

git插件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1304430.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

UCOS-II/III移植及相关问题【2】

移植过程中的问题&#xff1a; 提示&#xff1a;基于正点原子移植文档操作&#xff1a; STM32F767移植UCOS-II object file renamed from ‘.o‘ to ‘_1.o 提示&#xff1a;网络海淘大致就是文件重复了 解决方案&#xff1a; 将出问题的相关文件夹中文件删除重新添加 移…

大数据Vue项目必备|Window下安装并使用nvm(含卸载node、卸载nvm、全局安装npm)

大数据Vue项目必备|Window下安装并使用nvm&#xff08;含卸载node、卸载nvm、全局安装npm&#xff09; 一、卸载旧版本 如果已经安装了node&#xff0c;那么需要先卸载node&#xff0c;如果没有安装那可以直接跳过这一步。 卸载&#xff1a;   打开控制面板 -> 打开程序和…

Git篇---第五篇

系列文章目录 文章目录 系列文章目录前言一、提交对象包含什么?二、如何在Git中创建存储库?三、怎样将 N 次提交压缩成一次提交?前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分…

李飞飞携斯坦福联袂谷歌推出比肩Pika的视频生成模型W.A.L.T

英国数据保护监管机构敦促公司在使用人工智能&#xff08;AI&#xff09;时认真考虑人们的隐私权&#xff0c;否则不仅可能面临罚款&#xff0c;还可能失去公众对该技术的信任。信息专员约翰爱德华兹在周三的一次演讲中表示&#xff0c;公司在使用AI时必须在所有情况下保护客户…

网易有道强力开源中英双语语音克隆

项目地址&#xff08;基于PromptTTS&#xff09;&#xff1a; https://github.com/netease-youdao/EmotiVoice EmotiVoice Docker镜像 尝试EmotiVoice最简单的方法是运行docker镜像。你需要一台带有NVidia GPU的机器。先按照Linux和Windows WSL2平台的说明安装NVidia容器工具…

以企业架构为中心的SABOE数字化转型五环法

文章目录 01 传统企业数字化转型面临诸多挑战02 SABOE数字化转型五环法为企业转型破除迷雾 01 传统企业数字化转型面临诸多挑战 即将过去的2023年&#xff0c;chatGPT大模型、数据资产入表等事件的发生&#xff0c;标志着数字经济正在加速发展。数字经济是人类社会继农业经济、…

C++ Qt开发:LineEdit单行输入组件

Qt 是一个跨平台C图形界面开发库&#xff0c;利用Qt可以快速开发跨平台窗体应用程序&#xff0c;在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置&#xff0c;实现图形化开发极大的方便了开发效率&#xff0c;本章将重点介绍LineEdit单行输入框组件的常用方法及灵活运用…

【面试总结】Java面试题目总结(一)

&#xff08;以下仅为个人见解&#xff0c;如果有误&#xff0c;欢迎大家批评并指出错误&#xff0c;谢谢大家&#xff09; 1.项目中的验证码功能是如何实现的&#xff1f; 第一步&#xff1a;在项目的pom.xml文件中导入 EasyCaptcha 的依赖&#xff1b; <dependency>…

【教程】app备案流程简单三部曲即可完成

APP备案流程包括以下步骤&#xff1a; 1. 开发者实名认证&#xff1a;在提交备案申请之前&#xff0c;开发者需要通过移动应用开发平台进行实名认证。这个步骤需要提供身份证号码、姓名、联系方式等信息&#xff0c;并上传相关证件照片或扫描件。 2. 应用信息登记&#xff1a…

Android 等待view 加载布局完成 (包括动态生成View)

前言 在实际开发中&#xff0c;有很多组件需要 根据数据&#xff0c;动态生成&#xff0c;或者 追加 / 减少 子view&#xff0c;由于View布局需要时间&#xff0c;此时想要获取父View的最新宽高值&#xff0c;要么手动测量&#xff0c;要么等待布局完成后再获取&#xff1b; …

QEMU源码全解析 —— virtio(1)

接前一篇文章&#xff1a; 本文内容参考&#xff1a; 《趣谈Linux操作系统》 —— 刘超&#xff0c;极客时间 《QEMU/KVM》源码解析与应用 —— 李强&#xff0c;机械工业出版社 特此致谢&#xff01; virtio简介 对于一台虚拟机而言&#xff0c;除了要虚拟化CPU和内存&…

【大模型】800万纯AI战士年末大集结,硬核干货与音乐美食12月28日准时开炫

文章目录 WAVE SUMMIT五载十届&#xff0c;AI开发者热血正当时酷炫前沿、星河共聚&#xff01;大模型技术生态发展正当时 回望2023年&#xff0c;大语言模型或许将是科技史上最浓墨重彩的一笔。从技术、产业到生态&#xff0c;大语言模型在突飞猛进中加速重构万物。随着理解、生…

【 TES720D】基于国内某厂商的FMQL20S400全国产化ARM核心模块

板卡概述 TES720D是一款基于国内某厂商FMQL20S400的全国产化核心模块。该核心模块将FMQL20S400&#xff08;兼容FMQL10S400&#xff09;的最小系统集成在了一个50*70mm的核心板上&#xff0c;可以作为一个核心模块&#xff0c;进行功能性扩展&#xff0c;特别是用在控制领域&a…

STM32CubeIDE 移植 RT-ThreadNano问题总结

问题汇总 用STM32CubeIDE新建工程时&#xff0c;用STM32CubeMX勾选了RTThread系统&#xff0c;但是生产的工程中没有MiddleWare。 原因&#xff1a;因为更换过workspace,更换完成后配置Firmware and software package时选择到了D:\STM32Cube。 解决&#xff1a;STM32CubeIDE系…

【自定义Source、Sink】Flink自定义Source、Sink对redis进行读写操作

使用ParameterTool读取配置文件 Flink读取参数的对象 Commons-cli&#xff1a; Apache提供的&#xff0c;需要引入依赖ParameterTool&#xff1a;Flink内置 ParameterTool 比 Commons-cli 使用上简便&#xff1b; ParameterTool能避免Jar包的依赖冲突 建议使用第二种 使用Par…

038.Python面向对象_三大特性综合案例1

我 的 个 人 主 页&#xff1a;&#x1f449;&#x1f449; 失心疯的个人主页 &#x1f448;&#x1f448; 入 门 教 程 推 荐 &#xff1a;&#x1f449;&#x1f449; Python零基础入门教程合集 &#x1f448;&#x1f448; 虚 拟 环 境 搭 建 &#xff1a;&#x1f449;&…

书-二分查找找某个数字p155

#include<stdio.h> int main(){int a[10]{1,4,5,6,7,8,23,34,90,14567};int mid;int low0;int high9;while(low<high){mid(lowhigh)/2;//数组分成两段&#xff0c;前一段low-mid&#xff0c;后一段mid-highif (a[mid]<23)//因为已经是排序好的了&#xff0c;所以如…

Android获取Wifi网关

公司有这样一个应用场景&#xff1a;有一台球机设备&#xff0c;是Android系统的&#xff0c;它不像手机&#xff0c;它没有触摸屏幕&#xff0c;所以我们对球机的操作很不方便&#xff0c;于是我们搞这样一个设置&#xff1a;点击球机电源键5次分享出一个热点&#xff0c;然后…

高德地图已达成全球最大规模车道级导航覆盖

近日&#xff0c;高德地图宣布旗下基于北斗卫星导航系统、深度学习模型、惯性导航、泛在信号等前沿技术研发的车道级导航服务&#xff0c;截止目前已支持在国内99%以上的城市和乡镇道路使用。 这意味着即日起&#xff0c;用户在驾车导航时&#xff0c;无论是在城市还是乡镇&am…

AI大模型专题报告:AI大模型及应用加速落地,持续带动算力产业链发展

今天分享的AI系列深度研究报告&#xff1a;《AI大模型专题报告&#xff1a;AI大模型及应用加速落地&#xff0c;持续带动算力产业链发展》。 &#xff08;报告出品方&#xff1a;长城证券&#xff09; 报告共计&#xff1a;23页 1.行业观点 在 TMT 各子板块&#xff1a;电子…