IDEA安装包下载Other Versions - IntelliJ IDEA
IDEA安装教程
IDEA常用快捷键
快捷键 | 功能 |
---|---|
Alt+Enter | 导入包,自动修正代码 |
Ctrl+Y | 删除光标所在行 |
Ctrl+D | 复制光标所在行的内容,插入光标位置下面 |
Ctrl+Alt+L | 格式化代码 |
Ctrl+/ | 单行注释,再按取消注释 |
Ctrl+Shift+/ | 选中代码注释,多行注释,再按取消注释 |
Alt+Ins | 自动生成代码,toString,get,set等方法 |
Alt+Shift+上下箭头 | 移动当前代码行 |
/* * 复习一下此前学习的方法基础入门知识 * 定义格式: * public static void 方法名称(){ * 方法体 * } * * 调用格式 * 方法名称(); * * 注意事项: *1.方法定义的先后顺序无所谓。 *2.方法定义必领是挨着的。不能在一个方法的内部定交另外一个方法。 *3.方法定义之后。自己不会执行的:如具希望执行,一定要进行方法的调用。 * */ public class Demo01Method { public static void main(String[] args) { printMethod(); } public static void printMethod(){ for (int j = 0; j < 5; j++) { for (int i = 0; i < 20; i ++){ System.out.print("*"); } System.out.println(); } } }
/* * 方法其实就是若干语句的功能集合 * * 方法好比是一个工厂 * 蒙牛工厂 原料:奶牛、饲料、水 * 产出物:奶制品 * * 参数(原料):就是进入方法的数据 * 返回值(产出物):就是从方法中出来的数据 * * 定义方法的完整格式: * 修饰符 返回值类型 方法名称(参数类型 参数名称,……){ * 方法体 * return 返回值; * } * * 修饰符:现阶段的固定写法,public static * 返回值类型:也就是方法最终产生的数据结果是什么类型 * 方法名称:方法的名字,规则和变量一样,小驼峰 * 参数类型:进入方法的数据是什么类型 * 参数名称:进入方法的数据对应的变量名称 * PS:参数如果有多个,使用逗号进行分隔 * 方法体:方法需要做的事情,若干行代码 * return:两个作用,第一停止当前方法, * 第二将后面的返回值还给调用处返回值:也就是方法执行后最终产生的数据结果 * 注意:return后面的“返回值”,必须和方法名称前面的“返回值类型”,保持对应。 * * 定义一个两个int数字相加的方法,三要素 * 返回值类型:int * 方法名称:sum * 参数列表:int a, int b * * 方法的三种调用格式: * 1.单独调用:方法名称(参数); * 2.打印调用:System.out.println(方法名称(参数)); * 3.赋值调用:数据类型 变量名称 = 方法名称(参数); * * 注意:此前学习的方法,返回值类型固定写为void,这种方法只能够单调调用, 不能进行打印调用或者赋值调用。 * */ public class Demo02MethodDefine { public static void main(String[] args) { System.out.println("==========="); System.out.println(sum( 10, 20));//30 int number = sum(15, 25); System.out.println("变量的值:" + number); } public static int sum(int a, int b){ System.out.println("方法执行啊!"); int result = a + b; return result; } }
/* * 有参数:小括号当中有内容,当一个方法需要一些数据条件,才能完成任务的时候,就是有参数。 * 例如两个数字相加,必须知道两个数字是各自多少,才能相加。 * * 无参数:小括号当中留空,一个方法不需要任何数据条件,自己就能独立完成任务,就是无参数。 * 例如定义一个方法,打印固定10次HelloWorld。 * */ public class Demo03MethodParam { public static void main(String[] args) { method1(10, 20); method2(); } //两个数字相乘,做乘法,必须知道两个数字各自是多少,否则无法进行计算 //有参数 public static void method1(int a, int b){ int result = a * b; System.out.println("结果是:" + result); } //例如打印输出固定10次文本字符串 public static void method2(){ for (int i = 0; i < 10; i++) { System.out.println("Hello,World" + i); } } }
/* * 题目要求:定义一个方法,用来求出两个数字之和,(你帮我算,算完之后把结果告诉我。) * 题目变形:定义一个方法,用来打印两个数字之和,(你来计算,算完之后你自己负责显式结果,不用告诉我。) * * 注意事项: * 对于有返回值的方法,可以使用单独调用、打印调用或者赋值调用 * 但是对于无返回值得方法,只能使用单独调用,不能使用打印调用或者赋值调用。 * */ public class Demo04MethodRetum { public static void main(String[] args) { int num = getSum(10, 20); System.out.println("返回值是:" + num); System.out.println("================="); printSum(100, 200); } //我是一个方法,我负责两个数字相加 //我有返回值int,谁调用我,我就把计算结果告诉谁 public static int getSum(int a, int b){ int result = a + b; return result; } //我是一个方法,我负责两个数字相加。 //我没有返回值,不会把结果告诉任何人,而是我自己进行打印输出。 public static void printSum(int a, int b){ int result = a + b; System.out.println("结果是:" + result); } }
/* * 题目要求: * 定义一个方法,用来判断两个数字是否相同。 * */ public class Demo01MethodSame { public static void main(String[] args) { System.out.println(isSame(1, 1)); System.out.println(isSame(1, 0)); } /* * 三要素: * 返回值类型:boolean * 方法名称:isSame * 参数列表:int a, int b * */ public static boolean isSame(int a, int b){ boolean same; if(a == b){ same = true; }else{ same = false; } //same = a == b ? true : false; //same = a == b; return same; } }
/* * 题目要求: * 定义一个方法,用来求出1-100之间所有数字的和值 * */ public class Demo02MethodSum { public static void main(String[] args) { System.out.println(getSum()); } /* * 三要素: * 返回值:有返回值,计算结果是一个int数字 * 方法名称:getSum * 参数列表:数据范围已经确定,是固定的,所以不需要告诉我任何条件,不需要参数 * */ public static int getSum(){ int sum = 0; for (int i = 0; i < 101; i++) { sum += i; } return sum; } }
/* * 题目要求: * 定义一个方法,用来打印指定次数的HelloWorld。 * */ public class Demo03MethodPrint { public static void main(String[] args) { printCount(10); } /* * 三要素 * 返回值类型:只是进行一大堆打印操作而已,没有计算,也没有结果要告诉调用处 * 方法名称:printCount * 参数列表:到底要打印多少次?必须告诉我,否则我不知道多少次,没法打印,次数,int * */ public static void printCount(int num){ for (int i = 0; i < num; i++) { System.out.println("HelloWorld" + (i + 1)); } } }
/* * 对于功能类似的方法来说,因为参数列表不一样,却需要记住那么多不同的方法名称,太麻烦。 * 方法的重载(Overload),多个方法的名称一样,但是参数列表不一样。 * 好处,只要记住唯一一个方法名称,就可以事项类似的多个功能。 * * 方法重载与下列因素相关: * 1.参数个数不同 * 2.参数类型不同 * 3.参数的多类型顺序不同 * * 方法重载与下列因素无关: * 1.与参数的名称无关 * 2.与方法的返回值类型无关 * */ public class Demo01MethodOverload { public static void main(String[] args){ System.out.println(sum(1, 2)); System.out.println(sum(1, 2, 3)); System.out.println(sum(1, 2, 3, 4)); } public static int sum(int a, int b){ return a + b; } public static int sum(int a, int b, int c){ return a + b + c; } public static int sum(int a, int b, int c, int d){ return a + b + c + d; } }
/* *题目要求: *比较两个数据是否相等。 *参数类型分别为两个byte类型,两个short类型,两个int类型,两个Long类型,并在main方法中进行测试。 */ public class Demo02MethodOverloadSame { public static void main(String[] args) { byte a = 10; byte b = 20; System.out.println(isSame(a, b)); System.out.println(isSame((short)a, (short)b)); System.out.println(isSame(10, 20)); System.out.println(isSame(10L, 20L)); } public static boolean isSame(byte a, byte b){ boolean same; if(a == b){ same = true; }else{ same = false; } return same; } public static boolean isSame(short a, short b){ boolean same = a == b ? true : false; return same; } public static boolean isSame(int a, int b){ boolean same = a == b; return same; } public static boolean isSame(Long a, Long b){ boolean same = a == b; return same; } }