一.流程控制
1.if语句
格式一:
if(条件表达式)
{
执行语句;
}
注意:如果if语句中只有一条语句那么可以不写大括号,也就是if只能控制离他最近的单条语句。
格式二:
if(条件表达式)
{
执行语句;
}
else
{
执行语句;
}
格式三:
if(条件表达式)
{
执行语句;
}
else if(条件表达式)
{
执行语句;
}
···· ···
else
{
执行语句;
}
注意:if()或者else if()后面不要加分号。
2.switch语句
格式:
switch(表达式)
{
case 取值1:
执行语句;
break;
case 取值2:
执行语句;
break;
··· ···
default:
执行语句;
break;
}
switch语句特点:
1、switch语句选择的类型只有四种:byte,short,int,char。
2、case与default没有顺序。先执行第一个case,没有匹配的case执行default。
3、结束switch语句的两种情况:①遇到break,②执行到switch语句结束。
4、如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇 到break或者switch结尾结束。
5、进入switch语句后,执行顺序是先执行case,然后从上到下,最后再执行default。即使default放在case
上面,执行顺序也不变。
1.while语句格式:
while(条件表达式)
{
执行语句;
}
do
{
执行语句;
}
while(条件表达式);
while和do while 的区别是:do while 是先执行后判断,while是先判断后执行。
2.for语句格式:
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;(循环体)
}
for和while的异同:两者都是条件循环,
区别在于for为了循环而定义的变量在for循环结束就在内存中释放,而while循环使 用的变量在循环结束后还可以继续使用。
二.函数
1.函数的定义和特点
函数就是定义在类中的具有特定功能的一段独立小程序,函数也称为方法。
java中的函数的格式为:
修饰符 返回值类型函数名(参数类型 形式参数1,参数类型 形式参数2,。。)
{
{
执行语句;
return 返回值;
}
返回值类型:函数运行后的结果的数据类型
参数类型:是形式参数的数据类型
形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数
实际参数:传递给形式参数的具体数值
return:用于结束函数
返回值:该值会返回给调用者
return 返回值;
}
返回值类型:函数运行后的结果的数据类型
参数类型:是形式参数的数据类型
形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数
实际参数:传递给形式参数的具体数值
return:用于结束函数
返回值:该值会返回给调用者
函数的特点:
1) 定义函数可以将功能代码进行封装
2) 便于对该功能进行复用
3) 函数只有被调用才会被执行
4) 函数的出现提高了代码的复用性
5) 对于函数没有具体返回值的情况,返回值类型用关键字void表示,那么该函数中的return语句如果在最后一行可以省略不写,系统会帮你自动加上。
1) 定义函数可以将功能代码进行封装
2) 便于对该功能进行复用
3) 函数只有被调用才会被执行
4) 函数的出现提高了代码的复用性
5) 对于函数没有具体返回值的情况,返回值类型用关键字void表示,那么该函数中的return语句如果在最后一行可以省略不写,系统会帮你自动加上。
2.函数的应用
需要明确该功能最后返回的结果类型以及该功能在运行时,否则要未知内容参与运算。
当没函数运算后没有具体的返回值时,函数关键字应该使用void。所以当返回值为void时,函数中的return语句可以不写。
3.函数的重载
重载意思就是,在同一个类中,允许一个或多个同名的函数,只要他们的参数个数或者参数类型不同。
重载与返回值的类型无关,只看参数列表。重载的好处就是方面阅读,优化了程序设计。
例如:
返回两个整数的和
int add(int x,int y){return x+y;}
返回三个整数的和
int add(int x,int y, int z){return x+y+z;}
返回两个小数的和
double add(double x,double y){return x+y;}
什么时候用重载?
当定义的功能相同,但参与运算的未知内容不同。
int add(int x,int y){return x+y;}
返回三个整数的和
int add(int x,int y, int z){return x+y+z;}
返回两个小数的和
double add(double x,double y){return x+y;}
什么时候用重载?
当定义的功能相同,但参与运算的未知内容不同。
class FunctionOverload
{
public static void main(String[] args)
{
add(4,5);
add(4,5,6);
//两个函数名称一样,参数不同,重载
print99();
}
public static void print99(int num)
{
for(int x=1; x<=num; x++)//for循环
{
for(int y=1; y<=x; y++)
{
System.out.print(y+"*"+x+"="+y*x+"\t");
}
System.out.println();
}
}
//打印99乘法表
public static void print99()
{
print99(9);
}
//定义一个加法运算,获取两个整数的和。
public static int add(int x,int y)
{
return x+y;
}
//定义一个加法,获取三个整数的和。
public static int add(int x,int y,int z)
{
return add(x,y)+z;
}
}