流程控制练习
-
调试debug
//打印三角形 5行 for (int i = 1; i <= 5; i++) { for (int j = 5; j >= i; j--) {//for内层循环 System.out.print(" ");//增加空格键的距离 } for(int j = 1;j <= i; j++){//与第一个for循环输出星号的位置相反 输出三角形的一半 System.out.print("*");//打印星号 } for (int j = 1; j < i; j++) {//输出三角形的另一半 System.out.print("*");//打印星号 } System.out.println();//换行 } /* * *** ***** ******* ********* */
一、java方法:
//main方法 (这个方法是交给程序管的)
public static void main(String[] args) {
int sum=add(1,2);
System.out.println(sum);
/*
- System.out.println();
//系统类 输出对象 方法
public 修饰符
int 返回值类型 void
*/
}
//加法
public static int add(int a,int b){
return a+b;
/*
3
*/
1.方法的定义
2.方法调用
- 值传递(Java)
3.方法的重载
//方法重载
public static void main(String[] args) {
float sum = add(1,2,3,4);
System.out.println(sum);
}
public static int add(int aaaa,int bbbb){
return aaaa+bbbb;
}
public static double add(double aaaa,double bbbb,double cccc){
return aaaa+bbbb+cccc;
}
public static float add(float aaaa,float bbbb,float cccc,float dddd){
return aaaa+bbbb+cccc+dddd;
}
/*
10.0
*/
二、命令行传参
三、可变参数
(不定项参数)
Demo05 demo05 = new Demo05();//创建一个新的类 newDemo05
demo05.test(1,2,3,4,5);//对象.方法
//传递1
}
/*public void method(){}
public void method(int i){}
public void method(int i,int j){}
public void method(double i,double i2){}
*/
public void test(int...i){//可变参数 传递多个i
System.out.println(i[0]);//通过下标取第0个值
System.out.println(i[1]);
System.out.println(i[2]);
System.out.println(i[3]);
System.out.println(i[4]);
}
/*
1
2
3
4
5
*/
遍历:
遍历就是把每个元素都访问一次.比如一个二叉树,遍历二叉树意思就是把二叉树中的每个元素都访问一次
public static void main(String[] args) {
//调用可变参数的方法
printMax(1,2,3,4,5);
printMax(new double[]{1,2,3});
}
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);
}
/*
The max value is 5.0
The max value is 3.0
*/
四、递归
public class Demo08 {
public static void main(String[] args) {
System.out.println(f(5));
//阶乘
// 1! 1
//2! 2*1
// 5! 5*4*3*2*1
}
public static int f(int n){
if(n==1){
return 1;
}else{
return n*f(n-1);
}
}
}
/*
120
*/