IDEA简介及使用

2023-11-08

1、Intellij IDEA简介


Eclipse IBM公司开发

1.1、Jetbrains公司介绍

IDEAJetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。该公司旗下还有许多其他产品,如:

  • WebStorm:用于开发JavaScript、HTML5、CSS3 等前端技术
  • PyCharm:用于开发python
  • PhpStorm:用于开发PHP
  • RubyMine:用于开发Ruby/Rails
  • AppCode:用于开发Objective - C/swift
  • CLion:用于开发C/C+++
  • DataGrip:用于开发数据库和SQL
  • Rider:用于开发.NET
  • GoLand:用于开发 Go

1.2、Intellij IDEA介绍

IDEA 全称 IntelliJ IDEA,是java编程语言的集成开发环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构JavaEE支持、各类版本工具(gitsvn等)、JUnitCVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。

InteliJ IDEA曾在2015年的官网上这样介绍自己:

Excel at enterprise, mobile and web development with Java, Scala and Groovy,with all the latest modern technologies and frameworks available out of the box.

简译: IntelliJ IDEA主要用于支持Java、 Scala、 Groovy 等语言的开发工具,同时具备支持目前主流的技术和框架,擅长于企业应用、移动应用和Web应用的开发。

1.3、IDEA主要功能介绍

语言支持
安装插件后支持 SQL类 基本JVM
PHP PostgreSQL Java
Python MySQL Groovy
Ruby Oracle
Scala SQL Server
Kotlin
其他支持
支持的框架 额外支持的语言代码提示 支持的容器
Spring MVC H5 Tomcat
GWT CSS3 TomEE
WebServices SASS WebLogin
JSF LESS Jetty
Hibernate Node.js

1.4、IDEA主要优势(相较于Eclipse而言)

  1. 强大的整合能力。比如:Git、 Maven、 Spring 等
  2. 提示功能的快速、便捷
  3. 提示语言功能范围广
  4. 好用的快捷键和代码模板
  5. 精准搜索

1.5、IDEA下载地址

Download

IDEA 分为两个版本:旗舰版(Ultimate)社区版(Community)

  • 旗舰版收费(限 30 天免费试用),它为 Web 和企业开发提供了额外的工具和功能
  • 社区版免费且开源,它提供了 JVM 和 Android 开发的所有基本功能

该处提供了不同操作系统下的不同版本的安装文件

两个不同版本的详细对比,可以参照官网:versions compare

1.6、官网详细使用文档

Doc

2、window安装过程


2.1、安装准备

2.1.1、硬件要求(Hardware requirements)

建议配置:内存8G或以上,CPU最好 i5 以上,最好安装块固态硬盘(SSD),将IDEA安装在固态硬盘上,这样流畅度会加快很多

2.1.2、软件要求(Software requirements)

操作系统:Microsoft Windows 10/8/7/Vista/2003/XP (32 or 64 bit)

2.2、安装过程

  1. 将下载好的软件包程序双击打开
  2. 点击Next下一步,并选择相应安装路径,点击Next
  3. 选择对应操作系统位数,确认是否与.java、.groovy、.kt 格式文件进行关联,此处可选择不关联
  4. 点击Install稍等片刻即可安装完毕!点击Finish结束

2.3、安装总结

从安装上来看,IntelliJ IDEA 对硬件的要求似乎不是很高。可是在实际开发中其实并不是这样的,因为 IntelliJ IDEA 执行时会有大量的缓存、索引文件,所以如果你正在使用 Eclipse / MyEclipse,想通过 IntelliJ IDEA 来解决计算机的卡、慢等问题,这基本上是不可能的,本质上你应该对自己的硬件设备进行升级

2.4、查看安装目录结构

  • bin:容器,执行文件和启动参数等
  • help:快捷键文档和其他帮助文档
  • jre64:64 位java 运行环境
  • lib:idea 依赖的类库
  • license:各个插件许可
  • plugin:插件

3、启动应用后简单配置


3.1、是否导入已有设置

首次启动,会弹出如下的对话框。选择不导入已有的设置

tips:软件激活请自行百度

3.2、设置主题

这里根据个人喜好,进行选择,也可以选择跳过(skip all and set defaults)。后面在settings 里也可以再设置主题等。这里选择:Next:Default plugins

3.3、设置插件

设置 IDEA 中的各种插件,可以选择自定义设置、删除,或者安装本身不存在的插件(比如:支持 Scala 的插件)。这里不设置,后面也可以通过界面菜单栏的 settings 进行设置

插件官方下载地址

3.4、启动界面

4、创建 Java 工程,运行HelloWorld


4.1、创建Java工程

  • New Project:创建一个新的工程
  • Open:打开一个已有工程。比如:可以打开 Eclipse 项目
  • GET FROM VCS:可以通过服务器上的项目地址 check out Github上面项目或其他 Git 托管服务器上的项目

此处选择 New Project,需要明确一下概念:

IntelliJ IDEA 没有类似 Eclipse 的工作空间的概念(Workspaces),最大单元就是Project。这里可以把 Project 理解为 Eclipse 中的 Workspace

选择指定目录下的 JDK 作为 Project SDK,选择 jdk 的安装路径所在位置:

点击 OK 以后,选择 Next:

此处无需勾选。选择 Next,进入下一个页面:

给创建的工程起一个名字,点击 Finish即可

4.2、工程界面

工程下的 src 类似于 Eclipse 下的 src 目录,用于存放代码

工程下的.idea 和 project01.iml 文件都是 IDEA 工程特有的。类似于 Eclipse 工程下的.settings、.classpath、.project 等

4.3、创建package和 class

接着在 src 目录下创建一个 package:

在包下 new-class:

不管是创建 class,还是 interface,还是 annotation,都是选择 new – java class,然后在下拉框中选择创建的结构的类型。

接着在类 HelloWorld 里声明主方法,输出 helloworld,完成测试

tip:在IDEA中,编写完代码,不用点击保存。IDEA会自动帮助你保存代码

5、关于模块


5.1、创建模块(Module)

1、在 Eclipse 中有 Workspace(工作空间)和 Project(工程)的概念,在 IDEA中只有 Project(工程)和 Module(模块)的概念。这里的对应关系为:

IDEA官网说明:

An Eclipse workspace is similar to a project in IntelliJ IDEA

An Eclipse project maps to a module in IntelliJ IDEA

翻译:

Eclipse中 workspace 相当于 IDEA 中的Project

Eclipse中 Project 相当于 IDEA 中的Module

这也是初学者刚接触IDEA时理不清它们之间关系的原因

2、从 Eclipse 转过来的人总是下意识地要在同一个窗口管理 n 个项目,这在IntelliJ IDEA 是无法做到的。IntelliJ IDEA 提供的解决方案是打开多个项目实例,即打开多个项目窗口。即:一个 Project 打开一个 Window 窗口

3、在 IntelliJ IDEA 中 Project 是最顶级的级别次级别是 Module。一个 Project可以有多个 Module。目前主流的大型项目都是分布式部署的,结构都是类似这种多 Module 结构

这类项目一般是这样划分的,比如:core Module、web Module、plugin Module 等等,模块之间彼此可以相互依赖。通过这些 Module 的命名也可以看出,他们之间都是处于同一个项目业务下的模块,彼此之间是有不可分割的业务关系

4、相比较于多 Module 项目,小项目就无需搞得这么复杂。只有一个 Module 的结构 IntelliJ IDEA 也是支持的,并且 IntelliJ IDEA 创建项目的时候,默认就是单Module 的结构的。如何创建 Module?

接着选择 Next:

之后,我们可以在 Module 的 src 里写代码,此时 Project 工程下的 src 就没什么用了。可以删掉

5.2、删除模块(Module)

此时的删除,会从硬盘上将此 module 删除掉

5.3、查看项目配置

进入项目结构:

查看对应配置:

6、常用配置


IntelliJ IDEA 有很多人性化的设置供我们选择,也因为这些人性化的设置让那些 IntelliJ IDEA 死忠粉更加死心塌地使用它和分享它

进入设置界面:

目录结构如下:

6.1、Appearance & Behavior

6.1.1、设置主题

这里默认提供了三套主题:IntelliJ,Darcula,Windows。可根据自己的喜好进行选择

6.1.2、设置窗体及菜单的字体及字体大小

6.1.3、通过插件(plugins)更改主题

插件名称:Material Theme UI

点击按钮以后,在联网环境下搜索如下的插件-安装-重启 IDEA 即可:

如果对安装的主题插件不满意,还可以找到此插件,进行卸载 – 重启 IDEA 即可

6.1.4、默认启动项目配置

启动IDEA时,默认自动打开上次开发的项目?还是自己手动选择?

在这里插入图片描述

如果去掉Reopen last project on startup前面的对勾,每次启动IDEA就会出现如下界面:

在这里插入图片描述

6.1.5、取消自动更新

默认会自动检查更新,建议检查IDE更新的√去掉,检查插件更新的√勾选上

在这里插入图片描述

6.2、Editor - General

6.2.1、设置鼠标滚轮修改字体大小

勾选此设置后,按住 Ctrl + 鼠标滚轮 快捷键来控制代码字体大小显示

6.2.2、设置自动导包功能

  • Add unambiguous imports on the fly:自动导入不明确的结构
  • Optimize imports on the fly:自动帮我们优化导入的包
6.2.3、设置显示行号和方法间的分隔符

6.2.4、忽略大小写提示

6.2.5、设置取消单行显示tabs的操作

在打开很多文件的时候,IntelliJ IDEA 默认是把所有打开的文件名 Tab 单行显示的。多行效率比单行高,因为单行会隐藏超过界面部分 Tab,不方便寻找文件

6.3、Editor – Font

6.3.1、设置默认的字体、字体大小、字体行间距

6.4、Editor – Color Scheme

6.4.1、修改当前主题的字体、字体大小、字体行间距

如果当前主题不希望使用默认字体、字体大小、字体行间距,还可单独设置:

6.4.2、修改当前主题的控制台输出的字体及字体大小

6.4.3、修改代码中注释的字体颜色

6.5、Editor – Code Style

6.5.1、设置超过指定 import 个数,改为 *

6.6、Editor – File and Code Templates

6.6.1、修改类头的注释信息

6.7、Editor – File Encodings

6.7.1、设置项目文件编码

tip:Transparent native-to-ascii conversion 主要用于转换 ascii,一般都要勾选,不然 Properties 文件中的注释显示的都不会是中文

6.8、Build,Execution,Deployment

6.8.1、设置自动编译

构建就是以我们编写的 java 代码、框架配置文件、国际化等其他资源文件、JSP 页面和图片等资源作为“原材料”,去“生产”出一个可以运行的项目的过程

Intellij Idea 默认状态为不自动编译状态,Eclipse 默认为自动编译,很多朋友都是从 Eclipse 转到 Intellij 的,这常常导致我们在需要操作 class 文件时忘记对修改后的 java 类文件进行重新编译,从而对旧文件进行了操作

6.8.2、取消双击shift搜索

平时我们按shift切换中英文输入方式,经常被按到,总是弹出搜索框,太麻烦了。可以取消它,另一种打开它的方式快捷键(Ctrl+N)

方式1:适用于IDEA 2022.1.2及之后版本

在这里插入图片描述

在2022.1及之前版本中,采用如下方式消双击shift出现搜索框:搜索double即可,勾选Disable double modifier key shortcuts,禁用这个选项

双击shift 或 ctrl + shift + a,打开如下搜索窗口:

在这里插入图片描述

选择registry…,找到"ide.suppress.double.click.handler",把复选框打上勾就可以取消双击shift出现搜索
框了

7、关于模板(Templates)


7.1、Editor – Live Templates 和 Editor – General – Postfix Completion

7.1.1、Live Templates(实时代码模板)

它的原理就是配置一些常用代码字母缩写,在输入简写时可以出现你预定义的固定模式的代码,使得开发效率大大提高,同时也可以增加个性化。最显而易见的就是在 Java 中输入 sout 会出现System.out.println();

在这里插入图片描述

7.1.2、Postfix Completion模板(后缀补全)

在这里插入图片描述

7.1.3、常用代码模板
  • 非空判断
    • 变量.null:if(变量 == null)
    • 变量.nn:if(变量 != null)
    • 变量.notnull:if(变量 != null)
    • ifn:if(xx == null)
    • inn:if(xx != null)
  • 遍历数组和集合
    • 数组或集合变量.fori:for循环
    • 数组或集合变量.for:增强for循环
    • 数组或集合变量.forr:反向for循环
    • 数组或集合变量.iter:增强for循环遍历数组或集合
  • 输出语句
    • sout:相当于System.out.println
    • soutm:打印当前方法的名称
    • soutp:打印当前方法的形参及形参对应的实参值
    • soutv:打印方法中声明的最近的变量的值
    • 变量.sout:打印当前变量值
    • 变量.soutv:打印当前变量名及变量值
  • 对象操作
    • 创建对象
      • Xxx.new .var :创建Xxx类的对象,并赋给相应的变量
      • Xxx.new .field:会将方法内刚创建的Xxx对象抽取为一个属性
    • 强转
      • 对象.cast:将对象进行强转
      • 对象.castvar:将对象强转后,并赋给一个变量
  • 静态常量声明
    • psf:public static final
    • psfi:public static final int
    • psfs:public static final String
    • prsf:private static final
7.1.4、自定义Live Templates模板

IDEA 提供了很多现成的 Templates。但也可以根据自己的需要创建新的Template

先定义一个模板的组:

选中自定义的模板组,点击”+”来定义模板

  • Abbreviation:模板的缩略名称
  • Description:模板的描述
  • Template text:模板的代码片段
  • 应用范围,比如点击 Define。选择如下:

按照如上方式定义个测试方法,然后在 java 类文件中测试即可,可根据需求多创建几个Template!

7.1.5、自定义后缀补全模板

在这里插入图片描述
在这里插入图片描述

8、常用插件(plugins)


插件1:Material Theme UI(主题插件)

插件2:GsonFormatPlus(根据 json 生成对象)快捷键:alt + s

插件3:Alibaba Java Coding Guidelines(阿里巴巴Java编码规范检查插件)

插件4:Translation(翻译)

插件5:Rainbow Brackets(彩虹括号)

插件6:CodeGlance Pro(代码缩略图)

插件7:Key Promoter X(快捷键提示)

插件8:Presentation Assistant(显示快捷键操作的按键)

插件9:jclasslib bytecode viewer(可视化字节码查看器)使用方式:idea中打开“view” 菜单,选择“Show Bytecode With jclasslib” 选项

插件10:JavaDoc(文档注释)使用方式:idea中按 alt+insert ,执行操作

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IDEA简介及使用 的相关文章

  • 插入最大日期(独立于数据库)

    在我的本地设置中 我使用一个简单的 H2 数据库 托管 解决方案将有另一个 类似但不相同 数据库 我需要将最大可能日期插入到日期时间列中 我尝试使用 Instant MAX 但是 这会导致列中出现 169104626 12 11 20 08
  • 如何创建一个显示 Spinners 的 x 和 y 值的表格?

    我想创建一个位于图表右侧的表格 其中显示 2 列 x 和 y 值已输入到xSpin and ySpin旋转器 我已经画了一张我想要桌子放置的位置的图 我尝试过在网格窗格布局中使用文本框来创建表格并将值直接输入到文本框网格中 但是我无法将它们
  • SAML 服务提供商 Spring Security

    当使用预先配置的服务提供者元数据时 在 Spring Security 中 是否应该有 2 个用于扩展元数据委托的 bean 定义 一份用于 IDP 元数据 一份用于 SP 元数据
  • org.apache.sling.api.resource,version=[2.3,3) -- 无法解析

    您好 我无法访问我的项目内容 我已经上传了从 CQ 访问内容所需的所有包 我唯一能看到的是 org apache sling api resource version 2 3 3 无法解析 这是否是异常的原因 如果是 请告诉我如何解决 中Q
  • 比较两个文本文件的最快方法是什么,不将移动的行视为不同

    我有两个文件非常大 每个文件有 50000 行 我需要比较这两个文件并识别更改 然而 问题是如果一条线出现在不同的位置 它不应该显示为不同的 例如 考虑这个文件A txt xxxxx yyyyy zzzzz 文件B txt zzzzz xx
  • 如何在不超过最大值的情况下增加变量?

    我正在为学校开发一个简单的视频游戏程序 我创建了一个方法 如果调用该方法 玩家将获得 15 点生命值 我必须将生命值保持在最大值 100 并且由于我目前的编程能力有限 我正在做这样的事情 public void getHealed if h
  • 当从服务类中调用时,Spring @Transactional 不适用于带注释的方法

    在下面的代码中 当方法内部 是从内部调用的方法外部 应该在交易范围内 但事实并非如此 但当方法内部 直接从调用我的控制器class 它受到事务的约束 有什么解释吗 这是控制器类 Controller public class MyContr
  • 如何安全地解决这个 Java 上下文类加载器问题?

    我的数百名用户中只有一位在启动我的 Java 桌面应用程序时遇到问题 他只有大约三分之一的时间开始 另外三分之二的时间在启动时抛出 NullPointerException Exception in thread AWT EventQueu
  • 使用 AES SecretKey 的 Java KeyStore setEntry()

    我目前正在 Java 中开发一个密钥处理类 特别是使用 KeyStore 我正在尝试使用 AES 实例生成 SecretKey 然后使用 setEntry 方法将其放入 KeyStore 中 我已经包含了代码的相关部分 The KS Obj
  • 画透明圆,外面填充

    我有一个地图视图 我想在其上画一个圆圈以聚焦于给定区域 但我希望圆圈倒转 也就是说 圆的内部不是被填充 而是透明的 其他所有部分都被填充 请参阅这张图片了解我的意思 http i imgur com zxIMZ png 上半部分显示了我可以
  • 匿名类上的 NotSerializedException

    我有一个用于过滤项目的界面 public interface KeyValFilter extends Serializable public static final long serialVersionUID 7069537470113
  • Java 8 流 - 合并共享相同 ID 的对象集合

    我有一系列发票 class Invoice int month BigDecimal amount 我想合并这些发票 这样我每个月都会收到一张发票 金额是本月发票金额的总和 例如 invoice 1 month 1 amount 1000
  • 使用 SQLITE 按最近的纬度和经度坐标排序

    我必须获得一个 SQLite SQL 语句 以便在给定初始位置的情况下按最近的纬度和经度坐标进行排序 这是我在 sqlite 数据库中的表的例句 SELECT id name lat lng FROM items EXAMPLE RESUL
  • Delphi 2009 IDE结构视图折叠功能

    现在有谁知道折叠 Delphi 2009 IDE 结构视图中的所有项目吗 我不知道折叠所有项目 这使我很难从视图中找到我的课程 Thanks 选择根节点 类 并按数字键盘上的 除号 那会让一切崩溃 然后按数字键盘上的 加号 键 第一级将展开
  • 测试弱引用

    在 Java 中测试弱引用的正确方法是什么 我最初的想法是执行以下操作 public class WeakReferenceTest public class Target private String value public Targe
  • HQL Hibernate 内连接

    我怎样才能在 Hibernate 中编写这个 SQL 查询 我想使用 Hibernate 来创建查询 而不是创建数据库 SELECT FROM Employee e INNER JOIN Team t ON e Id team t Id t
  • Eclipse 中 Spring MVC 模型对象的 (jsp /jstl) 视图中的代码辅助

    在 Spring MVC 中 当将对象放置在视图模型中时 如下所示 public String getUser Model model fetch user model addAttribute user user return viewN
  • FileOutputStream.close() 中的设备 ioctl 不合适

    我有一些代码可以使用以下命令将一些首选项保存到文件中FileOutputStream 这是我已经写了一千遍的标准代码 FileOutputStream out new FileOutputStream file try BufferedOu
  • 在 RESTful Web 服务中实现注销

    我正在开发一个需要注销服务的移动应用程序 登录服务是通过数据库验证来完成的 现在我陷入了注销状态 退一步 您没有提供有关如何在应用程序中执行身份验证的详细信息 并且很难猜测您在做什么 但是 需要注意的是 在 REST 应用程序中 不能有会话
  • GUI Java 程序 - 绘图程序

    我一直试图找出我的代码有什么问题 这个想法是创建一个小的 Paint 程序并具有红色 绿色 蓝色和透明按钮 我拥有我能想到的让它工作的一切 但无法弄清楚代码有什么问题 该程序打开 然后立即关闭 import java awt import

随机推荐

  • iar中 让代码在sram中运行

    环境 iar 8 40 1 MCU mk64 1 关键字 ramfunc iar中可以利用关键字 ramfunc将函数放在ram中 带 ramfunc的函数调用不带 ramfunc的函数会出现警告 同时cpu 执行速度会变慢 ramfunc
  • 机器人教育怎么培养双商皆高的孩子

    相信每个孩子在老师眼中 都不只是学生 更代表着一个个充满希望的未来 机器人教育除了关注孩子的综合科学素养之外 也会反复强调对道德层面的培养 格物斯坦小坦克就来聊聊机器人教育是如何培养双商皆高的孩子 在越来越强调升学率的大环境下 道德层面的教
  • TCP 协议十大相关特性总结

    目录 一 TCP特性 二 报文格式 TCP十大核心特性 1 确认应答 2 超时重传 3 连接管理 三次握手 四次挥手 三次握手 四次挥手 4 滑动窗口 情况一 接收方的ACK丢失 情况二 发送方的数据包丢失 5 流量控制 6 拥塞控制 7
  • 微信获取JS-SDK的一些注意事项

    历时两天多 取到了JS SDK 可以开始调用微信提供的网页功能接口 遇到了很多的问题 在这里记录并分享 首先是设置安全域名的问题 要注意添加完ip白名单后 注意JS接口安全域名的设置 这里设置不当会报错 invalid url domain
  • 最大熵学习笔记(零)目录和引言

    生活中我们经常听到人们说 不要把鸡蛋放到一个篮子里 这样可以降低风险 深究一下 这是为什么呢 其实 这里边包含了所谓的最大熵原理 The Maximum Entropy Principle 本文为一则读书笔记 将对最大熵原理以及由此导出的最
  • 2023年欧亚计算机科学与信息技术国际会议(FCSIT 2023)

    IEEE出版 2023年欧亚计算机科学与信息技术国际会议 FCSIT 2023 重要信息 会议网址 www ecfcsit org 会议时间 2023年7月21 23日 召开地点 中国成都 出版社 IEEE CPS 截稿时间 2023年5月
  • 16、Spring Boot——JdbcTemplate多数据源

    什么是多数据源 多数据源就是 在一个应用中想要去操作多个数据库的数据 比如说一个应用有订单表放在一个数据库里面 用户表放在另一个数据库里面 那么同一个应用就要连接不同的数据源 这种架构并不多见 但它也是一种技术 以后有这种需求 一般都是通过
  • HTTP 和 HTTPS详解

    HTTP 和 HTTPS详解 目录 HTTP 和 HTTPS详解 1 http 和 https 概述 1 1 什么是http 1 2 什么是https 1 3 两者之间的区别 2 工作原理 2 1 Http工作原理 2 2 Https工作原
  • IntelliJ IDEA 官方网站 idea官网 http://www.jetbrains.com/idea/

    idea下载官网一键直达 点击跳转
  • c++子类访问父类保护成员,只能通过子类对象

    1 前言 我们知道 对外部来讲 一个类的private和protected成员 外部都不能直接访问 那么 对子类来说呢 子类如果以public方式继承父类 它还是不能直接访问private成员 并且虽然它可以访问protected成员 也是
  • [Spring学习]06 Spring Bean的生命周期

    目录 一 Spring bean的生命周期 二 连接池配置 三 延时加载机制 一 Spring bean的生命周期 传统的Java应用中 bean的生命周期为 使用new 进行Bean的实例化 然后使用该Bean 一旦bean不再被使用 则
  • js addEventListener监听scroll滚动条 距离底部一定距离,加载数据,超过最大高度移除监听事件

    测试dmeon testBox height 450px border 1px solid rebeccapurple width 500px color blueviolet overflow y auto 在这里插入代码片 div cl
  • pycharm远程linux服务器的plt.show()不显示

    仅作为记录 博主关闭pycharm重启 即可
  • 数学资源大全

    发信站 水木社区 Wed Apr 30 13 14 00 2008 站内 http www math org cn forums index php showtopic 4427 建议看此贴时 如果找某专题用ie查找 因为网站太多了 好不容
  • Open3D(C++) 法线定向(3)——朝向点云内部

    目录 一 朝向点云内部 二 代码实现 三 结果展示 一 朝向点云内部 如题 算法极其简单 无需做原理介绍 看代码即可 二 代码实现 include
  • 无聊的时候看了下科学计数法..

    作用 当我们要标记或运算某个较大或较小且位数较多时 用科学记数法免去浪费很多空间和时间 概念 科学记数法是一种记数的方法 把一个数表示成a与10的n次幂相乘的形式 这种记数法叫做科学记数法 例 19971400000000 1 99714
  • linux下的npm安装

    NPM Node Package Manager 即node包管理器 是用Javascript编写 最初由Isaac Z Schlueter开发 它会随着node js一起安装 用户可以通过npm把自己设计的模块分发到registry上 也
  • AD设置覆铜的过孔连接方式

    参考链接 https wenku baidu com view 15666e13f18583d049645956 过孔和焊盘有三种连接状态 noconnect 不连接 reliefconnect 十字形连接 directconnect 直接
  • VS2019 C++ SQL Server 数据库连接

    总体来说有VS有两种配置SQL Server的方式 一种是ADO 另一种是ODBC 这两种方式的查询我都有问题 查询到了结果数据不是乱码就是显示在list control上时值变了 我也不知道为什么 ADO 1 什么是ADO 以下ADO概念
  • IDEA简介及使用

    1 Intellij IDEA简介 Eclipse IBM公司开发 1 1 Jetbrains公司介绍 IDEA是JetBrains公司的产品 这家公司总部位于捷克共和国的首都布拉格 开发人员以严谨著称的东欧程序员为主 该公司旗下还有许多其