一、循环表达式的其他特点
先看一个例子:
/*
格式:
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句
}
*/
class ForTest
{
public static void main(String[] args)
{
int x=1;
for(System.out.println("a");x<3;System.out.println("c"))
{
System.out.println("d");
x++;
}
}
}
注意:
1. 如果for语句表达式多的情况下用逗号隔开
class ForTest
{
public static void main(String[] args)
{
for(int x=0,y=0;x<3;x++,y++)
{
System.out.println("x="+x+"y="+y);
}
}
}
2. for语句里面的表达式也可以不写,
class ForTest
{
public static void main(String[] args)
{
int x=0,y=0;
for(;x<3;)
{
System.out.println("x="+x+"y="+y);
x++;
y++;
}
}
}
3. 最简单的无限循环表现形式
for(;;){}
while(true){}
二、循环语句应用
/*
九九乘法表
*/
public class Multiplication
{
public static void main(String args[])
{
System.out.println("九九乘法表:");
for(int i=1;i<=9;i++)
{
for(int j=1;j<=i;j++)
System.out.print(i+"*"+j+"="+i*j+"\t");
System.out.print("\n");
}
}
}
三、break语句和continue语句
应用范围:Break(跳出):选择结构和循环结构。continue(继续):循环结构。
特殊写法:
w:for(int x=0;x<3;x++)
{
q:for(int y=0;y<3;y++)
{
System.out.println("x="+x);
break w; //跳出w层循环
}
}
说明:w只是标号,可以起任意标识符。
四、for语句练习
/*
效果图:
-----*
----* *
---* * *
--* * * *
-* * * * *
* * * * * *
*/
class Test
{
public static void main(String[] args)
{
for(int x=0;x<6;x++)//控制行
{
for(int y=x;y<6;y++)//控制空格数
{
System.out.print(" ");//输出空格
}
for(int z=0;z<=x;z++)
{
System.out.print("* ");//输出*
}
System.out.println();//换行
}
}
}
五、函数
为了提高代码复用性,对代码进行抽取,将其定义成一个独立的功能模块,方便调用。
格式:
修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,…)
{
执行语句;
return 返回值; //如果返回值类型为void 可以不写
}
如何定义一个函数?
1. 既然函数是一个独立的功能,那么该功能的运算结果是什么先要明确。因为这是在明确函数的返回值类型。
2. 在明确定义该功能的过程中是否需要未知的内容参与运算。因为是在明确函数的参数列表(参数的类型和参数的个数)。
六、函数的重载
什么时候用重载?
当定义的功能相同,但参与运算的未知内容不同。那么,这时就定义一个函数名称以表示其功能,方便阅读,而通过参数列表的不同类区分多个同名函数。
说明:
怎么区分同名函数?
只与函数的参数个数和参数类型有关。所以只能通过参数个数和参数类型进行同名函数调用,实现不同的功能。
练习:
/*
九九乘法表(调用函数)
*/
class Test
{
public static void main(String[] args)
{
print99();
print99(9);
}
public static void print99(int num)
{
for(int i=1;i<=num;i++)
{
for(int j=1;j<=i;j++)
System.out.print(i+"*"+j+"="+i*j+"\t");
System.out.print("\n");
}
}
public static void print99()
{
System.out.println("九九乘法表:");
}
}