1 方法
什么是方法
方法是程序中最小的执行单元。
方法作用:
- 提高代码的复用性。
- 提高代码的可维护性。
方法的格式
public class MethodDemo1 {
public static void main(String[] args) {
playGame();
playGame();
}
//定义一个方法
public static void playGame(){
System.out.println("选人物");
System.out.println("准备开具");
System.out.println("对线");
System.out.println("崩盘");
System.out.println("骂队友");
System.out.println("GG");
}
}
练习:
public class MethodDemo2 {
public static void main(String[] args) {
grintGInfo();
}
//定义一个方法
public static void grintGInfo(){
System.out.println("小李");
System.out.println("哈哈哈");
System.out.println("18岁");
}
}
练习二:
a c d b
练习三:
a d e c b
练习五:
public class MethodTest1 {
public static void main(String[] args) {
sum();
}
public static void sum(){
int num1 = 10;
int num2 = 20;
int result = num1+num2;
System.out.println(result);
}
}
public static void main(String[] args) {
sum(15,23);
}
public static void sum(int num1,int num2){
int result = num1+num2;
System.out.println(result);
}
练习一:
public static void main(String[] args) {
getlenght(10,30);
}
public static void getlenght(int chang,int kuan){
int Long = (chang+kuan)*2;
System.out.println(Long);
}
练习二:
public static void main(String[] args) {
getarea(12.4);
}
public static void getarea(double r){
double area = 3.14*r*r;
System.out.println(area);
}
练习一:
public static void main(String[] args) {
// //直接调用
// getSun(10,20,30);
// // 赋值调用
// double sun = getSun(20, 30, 40);
// System.out.println(sun);
// //输出调用
// System.out.println(getSun(20, 30, 40));
//计算全年的数据
double num1 = getSun(10,20,30);
double num2 = getSun(10,20,30);
double num3 = getSun(10,20,30);
double num4 = getSun(10,20,30);
double sum = num1+ num2+num3+num4;
System.out.println(sum);
}
public static double getSun(double num1,double num2,double num3){
double result = num1+num2+num3;
return result;
}
练习一:
public static void main(String[] args) {
double getarea = getarea(20.3, 12.4);
double getarea1 = getarea(12.5, 23);
if (getarea>getarea1){
System.out.println("第一个大");
}else {
System.out.println("第二个大");
}
}
public static double getarea(double len,double weith){
double area = len*weith;
return area;
}
方法的重载
练习一:
public static void main(String[] args) {
//两个数求和
int sum1 = getarea(12, 13);
//三个数求和
int sum2 = getarea(12, 13,14);
//四个数求和
int sum3 = getarea(12, 13,14,15);
System.out.println(sum1);
System.out.println(sum2);
System.out.println(sum3);
}
public static int getarea(int a,int b){
int sum = a+b;
return sum;
}
public static int getarea(int a,int b,int c){
int sum = a+b+c;
return sum;
}
public static int getarea(int a,int b,int c,int d){
int sum = a+b+c+d;
return sum;
}
方法的重载:
- 在同一个类中,定义了多个同名的方法,这些方法具有相同的功能。
- 每个方法有不同的参数类型或参数个数,这些同名的方法,就构成了重载关系。
简单记:在同一个类中,方法名相同,参数不同的方法,与返回值无关。
参数不同:个数不同,类型不同 ,顺序不同。
练习二:
public static void main(String[] args) {
int a = 10;
int b = 20;
boolean equse = equse(a, b);
System.out.println(equse);
byte c = 100;
byte d = 100;
System.out.println(equse(c,d));
}
public static boolean equse(byte a ,byte b){
if (a==b){
return true;
}else
return false;
}
public static boolean equse(short a ,short b){
if (a==b){
return true;
}else
return false;
}
public static boolean equse(int a ,int b){
if (a==b){
return true;
}else
return false;
}
public static boolean equse(long a ,long b){
if (a==b){
return true;
}else
return false;
}
练习三:
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
printarr(arr);
}
public static void printarr(int[] arr){
System.out.print("[");
for (int i = 0; i < arr.length; i++) {
if (i==arr.length-1){
System.out.print(arr[i]);
}else {
System.out.print(arr[i]+", ");
}
}
System.out.println("]");
}
练习四:
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
int maxarr = Maxarr(arr);
System.out.println(maxarr);
}
public static int Maxarr(int[] arr){
int max = arr[0];
for (int i = 1; i < arr.length; i++) {
if (max<arr[i]){
max = arr[i];
}
}
return max;
}
练习五:
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
boolean exist = isExist(arr, 6);
System.out.println(exist);
}
public static boolean isExist(int[] arr,int n){
for (int i = 1; i < arr.length; i++) {
if (n==arr[i]){
System.out.println(i);
return true;
}
}
return false;
}
练习六:
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
int[] ints = copyOfRange(arr, 2, 4);
for (int i = 0; i < ints.length; i++) {
System.out.println(ints[i]);
}
}
public static int[] copyOfRange(int[] arr,int form,int to){
int[] brr = new int[to-form];
for (int i = form,j=0;i<to;i++,j++){
brr[j] = arr[i];
}
return brr;
}