一.程序的逻辑控制与结构
1.分支结构
<1.if
if(布尔表达式){
}
if(布尔表达式){
}else{
}
if(布尔表达式){
}
else if{
}
else{
}
<2.switch
switch(数字|枚举|字符串){
case内容1:{
满足时的执行语句
break;
}
case 内容2:{
满足时的执行语句
break;}
....
default:{
不满足时的执行语句
break;
}
2.循环语句
<1.while
while(布尔表达式){
}
<2.do-while
do{
循环语句
}while(布尔表达式);
<3.for
for(循环初始化;循环结束判断;修改循环结束条件){
循环体;
}
foreach循环
for(int v:a){//a为数组,将数组a的元素均赋值给变量v
Sysyem.out.println(v);
}
3.循环控制
<1.break
1.break 可用于switch循环中跳出某个分支
2.可用于for的多级循环中跳出其相应级的循环
<2.continue(跳出当前循环,继续执行接下来的语句)
二.方法的定义及使用
1.方法的定义
public static 返回值类型 方法名 (形参列表 异常列表){
方法体
返回值
}
2.方法重载
方法重载:具有相同方法名,不同参数列表的方法
签名:java 中的签名是指其名字及参数列表,而在c中默认函数名为签名,换句话说
在c中当函数名相同时认为是一个函数
如下例:
public class Test{
public static void main(String[] args) {
System.out.println(add(5,5));
System.out.println(add(5,5,55));
}
public static int add(int x,int y){
return x+y;
}
public static int add(int x,int y,int z){
return x+y+z;
}
}
3.方法递归(指一个方法自己调用自己的方式)
特点:
1.方法必须有递归的结束条件
2.⽅法在每次递归处理的时候⼀定要作出⼀些变更
练习题:
<1.打印9*9乘法表
public class HelloWorld{
public static void main (String[]args){
int i=1;
int j=1;
for(i=1;i<10;i++)
{
for(j=1;j<i;j++)
{
System.out.printf("%d*%d=%d",i,j,i*j);
}
System.out.println();
}
System.out.println(n);
}
}
<2.计算1+1/1!+1/2!+1/3!....
public class HelloWorld{
public static void main (String[]args){
double sum=0;
int n=4;
for(int i=1;i<n;i++){
for(int j=1;j<i;j++){
j=j*j;
sum=sum+1.0/j;
}
}
System.out.println(sum);
}
}
<3.计算PI/4=1-1/3+1/5-1/7...
public class HelloWorld{
public static void main (String[]args){
double sum=0;
int n=5;
int k=1;
for(int i=1;i<n;i++){
int j=2*i-1;
sum=sum+k*(1.0/j);
k=k*(-1);
}
double PI=sum*4;
System.out.println(PI);
}
}
<4.利用递归计算10!
public class HelloWorld{
public static void main (String[]args){
int n=10;
int sum=mult(10);
System.out.println(sum);
}
public static int mult(int n)
{
if(n==1)
{
return n;
}
else
{
int Mult=n*mult(n-1);
return Mult;
}
}
}