1.idea快捷键
Ctrl+空格的快捷键,可以帮助我们补全代码,但是这个快捷键和Windows中的输入法切换快捷键冲突,需要修改IDEA中的快捷键;
File->Settings->keymap->Main menu->code->Completion->Basic
再次双击Basic->Add Keyboard->键入 Alt+/->点击OK
2.定义方法
练习1:
比较两个整数是否相同
分析:定义方法实现功能,需要有两个明确,即返回值和参数列表;
明确返回值:比较整数,比较的结果只有两种可能,相同或不同,因此结果是布尔类型,比较的结果相同为true;
明确参数列表:比较的两个整数不确定,所以默认定义两个int类型的参数;
public static void main(String[] args) { //调用方法compare,传递两个整数 //并接收方法计算后的结果,布尔值 boolean i = compare(5, 6); System.out.println(i); } public static boolean compare(int a, int b){ if (a == b){ System.out.println("相同"); return true; } return false; }
练习1:
计算1+2+3...+100的和
分析:定义方法实现功能,需要有两个明确,即返回值和参数。明确返回值:1~100的求和,计算后必然还是整数,返回值类型是int
明确参数:需求中已知到计算的数据,没有未知的数据,不定义参数
public static void main(String[] args) { //调用方法getSum //并接收方法计算后的结果,整数 int sum = getSum(2); System.out.println(sum); } /* 定义计算1~100的求和方法 返回值类型,计算结果整数int 参数:没有不确定数据 */ public static int getSum(int a){ int b = 0; for (int i = 0; i <= a; i++){ b +=i; } return b; }练习3:
分析:定义方法实现功能,需要有两个明确,即返回值和参数。
明确返回值:方法中打印出HelloWorld 即可,没有计算结果,返回值类型void;
明确参数:打印几次不清楚,参数定义一个整型参数;
public static void main(String[] args) { //调用方法print,传递整数 printA(2); } /* 定义打印He方法 返回值类型,计算没有结果 void 参数:不确定打印几次 */ public static void printA(int a){ for (int i = 1; i <= a; i++){ System.out.println("yixia"); } }
3.注意事项
定义位置,类中方法外面;
返回值类型,必须要和return 语句返回的类型相同,否则编译失败;
4.方法重载
指在同一个类中,允许存在一个以上的同名方法,只要它们的参数列表不同即可,与修饰符和返回值类型无关;参数列表:个数不同,数据类型不同,顺序不同;
重载方法调用:JVM通过方法的参数列表,调用不同的方法;
练习1:
比较两个数据是否相等。参数类型分别为两个byte 类型,两个short 类型,两个int 类型,两个long 类型,并在main 方法中进行测试;
public class Method_Demo { public static void main(String[] args) { //定义不同数据类型的变量 byte a = 10; byte b = 20; short c = 10; short d = 20; int e = 10; int f = 10; long g = 10; long h = 20; // 调用 System.out.println(compare(a, b)); System.out.println(compare(c, d)); System.out.println(compare(e, f)); System.out.println(compare(g, h)); } // 两个byte类型的 public static boolean compare(byte a, byte b) { System.out.println("byte"); return a == b; } // 两个short类型的 public static boolean compare(short a, short b) { System.out.println("short"); return a == b; } // 两个int类型的 public static boolean compare(int a, int b) { System.out.println("int"); return a == b; } // 两个long类型的 public static boolean compare(long a, long b) { System.out.println("long"); return a == b;}}
练习2:
模拟输出语句中的println 方法效果,传递什么类型的数据就输出什么类型的数据,只允许定义一个方法名println;
public class Method_Demo{ public static void println(byte a) { System.out.println(a); } public static void println(short a) { System.out.println(a); } public static void println(int a) { System.out.println(a); } public static void println(long a) { System.out.println(a); } public static void println(float a) { System.out.println(a); } public static void println(double a) { System.out.println(a); } public static void println(char a) { System.out.println(a); } public static void println(boolean a) { System.out.println(a); } public static void println(String a) { System.out.println(a); } }