java学习笔记(六)
开始学习java,并养成写博客的习惯,希望能够坚持下去,有志同道合的小伙伴可以一起学习java基础
二十一、方法
什么是方法
方法的定义
package mifan.method;
public class Demo01 {
//main方法
public static void main(String[] args) {
int sum = add(1,2);
System.out.println(sum);
test();
}
//加法
public static int add(int a,int b){ //a,b 为形式参数
return a + b;
}
public static void test(){
for (int i = 0; i <= 1000; i++) {
if(i%5==0){
System.out.print(i+"\t");
}
if(i%(5*3)==0){
//每三个换行
System.out.println();
}
}
}
}
方法调用
package mifan.method;
public class Demo02 {
public static void main(String[] args) {
int max = max(1,1);
System.out.println(max);
}
public static int max(int num1,int num2){
int result = 0;
if(num1==num2){
System.out.println("相等");
}else if(num1 > num2){
result = num1;
}else {
result = num2;
}
return result;
}
}
方法重载
package mifan.method;
public class Demo02 {
public static void main(String[] args) {
int max = max(1,1);
double max1 = max(10.0,52.0);
System.out.println(max);
System.out.println(max1);
}
//方法重载
public static double max(double num1,double num2){
double result = 0;
if(num1==num2){
System.out.println("相等");
}else if(num1 > num2){
result = num1;
}else {
result = num2;
}
return result;
}
public static int max(int num1,int num2){
int result = 0;
if(num1==num2){
System.out.println("相等");
}else if(num1 > num2){
result = num1;
}else {
result = num2;
}
return result;
}
}
命令行传参
- 编译 javac class文件名(注意加后缀)
- 执行,要先退回到src目录,然后执行
- 执行代码后需加上参数
可变参数
package mifan.method;
public class Demo04 {
public static void main(String[] args) {
// test(1);
printMax(1,2,3,4,5);
printMax(new double[]{1,2,12});
}
// public static void test(int... i){
// System.out.println(i[0]);
// }
public static void printMax(double... numbers){
if(numbers.length == 0){
System.out.println("No argument passed");
return;
}
double result = numbers[0];
//排序
for (int i = 1; i < numbers.length; i++) {
if(numbers[i] > result){
result = numbers[i];
}
}
System.out.println("The max value is "+ result);
}
}
递归
package mifan.method;
public class Demo06 {
//5!
public static void main(String[] args) {
int sum = f(5);
System.out.println(sum);
}
//递归适用于基数比较小的计算
//重在掌握思路
public static int f(int n){
if(n==1) {
return 1;
}else {
return n*f(n-1);
}
}
}
每一个牛逼人都有一段苦逼的时光,只要能像傻逼一样坚持下去,终会牛逼!