zoukankan      html  css  js  c++  java
  • IntelliJ Idea 工具

     IntelliJ Idea 优化:

    1.如何取消文件自动保存

    File->Settings -> Appearance&Behavior -> System Settings标签项里

    取消“Synchronize file on frame activation” 和“Save files on framedeactivation”的选择
    同时我们选择"Save files automatically", 并将其设置为30秒,这样IDEA依然可以自动保存文件,也就是在30s内不会帮你自动保存文件,需要手动ctrl+s保存,超过30s会自动帮你保存。
     

    如果想让修改时,在文件右边显示*号标志,File->Settings -> Editor –> General ->Editor Tabs

    选中"Mark modifyied tabs with asterisk"

     

    2.如何让代码编辑区显示行号

    File->Settings->Editor->Appearance标签项,勾选Show line numbers

     

    3.如何设置字体 

    File->Settings->Editor->Colors&Fonts->Font标签项,默认是无法修改字体的,需要先点击Save As...,会弹出一个对话框,然后命名自己的名字,点击OK,即可编辑字体了,也可以设置控制台字体。

     

    4.如何让IntelliJ IDEA动的时候不打开工程文件

    File->Settings -> Appearance&Behavior -> System Settings标签项里去掉Reopen last project on startup即可

     




    编码设置
    FILE -> SETTINGS -> FILE ENCODINGS -> IDE ENCODING
    FILE -> SETTINGS -> FILE ENCODINGS -> DEFAULT ENCODING FOR PROPERTIES FILES
    FILE -> SETTINGS -> COMPILER -> JAVA COMPILER -> ADDITIONAL COMMAND LINE PARAMETERS


    显示行号 
    如何显示行号:Settings->Editor->Appearance标签项,勾选Show line numbers
     

    自定义键盘快捷方式 
    如果默认代码提示和补全快捷键跟输入法冲突,如何解决:Settings->Keymap

    如何让光标不随意定位 
    Settings->Editor中去掉Allow placement of caret after end of line。  



    部分常用快捷键:

    Intellij idea

    作用

    查找

    Ctrl+F

    查找

    Ctrl+R

    替换

    F3

    查找下一个

    Shift+F3

    查找上一个

    Ctrl+Shift+F

    在路径中查找

    Ctrl+Shift+R

    在路径中替换

    代码

    Alt+Insert

    代码生成器(编辑器视图),新建文件(导航视图)

    Ctrl+J

    常用代码如:psvm/sout,main/System.out.println(); 

    Ctrl+空格

    代码提示(与系统输入法快捷键冲突)

    alt+enter

    快速修复

    Ctrl+Alt+T

    可以把代码包在一个块内,例如:try/catch

    Ctrl+P

    可以显示方法参数信息

    Ctrl+O

    提示可重写方法

    Ctrl+I

    自动实现接口方法

    Ctrl+Shift+Space

    自动补全代码

    Ctrl+Alt+Space

    类名自动完成

    类文件

    Ctrl+F7

    显示当前文件的结构

    Ctrl+H

    显示类结构图(类的继承层次)

    Alt+F1

    查找代码所在位置

    Ctrl+N

    可以快速打开类

    Ctrl+Shift+N

    可以快速打开文件

    Ctrl+B/Ctrl+Click

    跳转到方法内

    Ctrl+Alt+B

    跳转到方法的实现处

    Ctrl+U

    跳转到父类

    编辑

    Ctrl+D

    复制行

    Ctrl+X

    剪切当前行

    Ctrl+Y

    删除当前行

    Ctrl+/或Ctrl+Shift+/

    注释(//或者/**/)

    Ctrl+G

    定位行

    Ctrl+[ OR ]

    可以跑到大括号的开头与结尾

    Alt+Up/Down

    在方法间快速移动定位

    Alt+left/right

    切换代码视图

    F2 或 Shift+F2

    快速定位错误处

    Shift+Enter

    向下插入一行,并将光标移到新行

    Shift+Alt+Enter

    向上插入一行,并将光标移到新行

    Alt+Shift+Up/Down

    向上/下移动语句

    Ctrl+Shift+Up/Down

    向上/下移动语句(只在方法内)

    Ctrl+Shift+J

    整合缩进上下两行

    Ctrl+W

    可以选择单词继而语句继而行继而函数

    Ctrl+Shift+W

    取消选择光标所在词

    Alt+Shift+Insert

    开启多列同时编辑功能,用ctrl+up/down选中

    Ctrl+Alt+left/right

    返回至上次浏览的位置

    Ctrl+Shift+Backspace

    跳转到上次编辑的地方

    Ctrl+E

    最近的文件

    Ctrl+Shift+E

    最近更改的文件

    系统编辑

    Alt+Left/Right

    往左、往右跳走一个单词

    Alt+Shift+Left/Right

    往左、往右跳选一个单词

    Alt+Backspace

    删除一个单词

    调试

    F7

    步入

    F8

    步过

    F9

    下一个断点

    Shift+F7

    智能步入

    Shift+F8

    步出

    Alt+F8

    计算表达式

    Alt+F9

    运行至光标处

    Alt+F10

    定位到断点

    Ctrl+F8

    切换行断点(添加取消断点)

    Ctrl+Shift+F8

    查看断点,可以添加断点条件

    重构

    Shift+F6

    重命名

    Ctrl+Alt+Shift+T

    弹出重构菜单

    辅助

    Ctrl+Enter

    导入包,自动修正

    Ctrl+Alt+L

    格式化代码

    Ctrl+Alt+O

    优化导入的类和包

    Ctrl+Alt+Shift+S

    打开项目模块设置

    Ctrl+Alt+S

    打开设置对话框


    破解注册码文件代码:

     
    import java.math.BigInteger;
    import java.util.Date;
    import java.util.Random;
    import java.util.Scanner;
    import java.util.zip.CRC32;
    public class KeyGen {
        public static short getCRC(String s, int i, byte bytes[]){
            CRC32 crc32 = new CRC32();
            if (s != null)
            {
                for (int j = 0; j < s.length(); j++)
                {
                    char c = s.charAt(j);
                    crc32.update(c);
                }
            }
            crc32.update(i);
            crc32.update(i >> 8);
            crc32.update(i >> 16);
            crc32.update(i >> 24);
            for (int k = 0; k < bytes.length - 2; k++)
            {
                byte byte0 = bytes[k];
                crc32.update(byte0);
            }
            return (short) (int) crc32.getValue();
        }
        public static String encodeGroups(BigInteger biginteger){
            BigInteger beginner1 = BigInteger.valueOf(0x39aa400L);
            StringBuilder sb = new StringBuilder();
            for (int i = 0; biginteger.compareTo(BigInteger.ZERO) != 0; i++)
            {
                int j = biginteger.mod(beginner1).intValue();
                String s1 = encodeGroup(j);
                if (i > 0)
                {
                    sb.append("-");
                }
                sb.append(s1);
                biginteger = biginteger.divide(beginner1);
            }
            return sb.toString();
        }
        public static String encodeGroup(int i){
            StringBuilder sb = new StringBuilder();
            for (int j = 0; j < 5; j++)
            {
                int k = i % 36;
                char c;
                if (k < 10)
                {
                    c = (char) (48 + k);
                }
                else
                {
                    c = (char) ((65 + k) - 10);
                }
                sb.append(c);
                i /= 36;
            }
            return sb.toString();
        }
        public static String MakeKey(String name, int days, int id){
            id %= 100000;
            byte bkey[] = new byte[12];
            bkey[0] = (byte) 1; // Product type: IntelliJ IDEA is 1
            bkey[1] = 14; // version
            Date d = new Date();
            long ld = (d.getTime() >> 16);
            bkey[2] = (byte) (ld & 255);
            bkey[3] = (byte) ((ld >> 8) & 255);
            bkey[4] = (byte) ((ld >> 16) & 255);
            bkey[5] = (byte) ((ld >> 24) & 255);
            days &= 0xffff;
            bkey[6] = (byte) (days & 255);
            bkey[7] = (byte) ((days >> 8) & 255);
            bkey[8] = 105;
            bkey[9] = -59;
            bkey[10] = 0;
            bkey[11] = 0;
            int w = getCRC(name, id % 100000, bkey);
            bkey[10] = (byte) (w & 255);
            bkey[11] = (byte) ((w >> 8) & 255);
            BigInteger pow = new BigInteger("89126272330128007543578052027888001981", 10);
            BigInteger mod = new BigInteger("86f71688cdd2612ca117d1f54bdae029", 16);
            BigInteger k0 = new BigInteger(bkey);
            BigInteger k1 = k0.modPow(pow, mod);
            String s0 = Integer.toString(id);
            String sz = "0";
            while (s0.length() != 5)
            {
                s0 = sz.concat(s0);
            }
            s0 = s0.concat("-");
            String s1 = encodeGroups(k1);
            s0 = s0.concat(s1);
            return s0;
        }
        public static void main(String[] args){
            System.out.println("请输入用户名:");
            Scanner scanner = new Scanner(System.in);
            String username = scanner.next();
            Random r = new Random();
            System.out.println(MakeKey(username, 0, r.nextInt(100000)));
        }
    }
     


     



  • 相关阅读:
    JavaScript
    94.Binary Tree Inorder Traversal
    144.Binary Tree Preorder Traversal
    106.Construct Binary Tree from Inorder and Postorder Traversal
    105.Construct Binary Tree from Preorder and Inorder Traversal
    90.Subsets II
    78.Subsets
    83.Merge Sorted Array
    80.Remove Duplicates from Sorted Array II
    79.Word Search
  • 原文地址:https://www.cnblogs.com/chenglc/p/7512022.html
Copyright © 2011-2022 走看看