您的位置:首页 > 编程语言 > Java开发

java基础总结03-java基础语法2

2017-04-19 22:53 274 查看

1 流程控制(语句)

1.1 条件语句

1.1.1 if语句



1.1.2 分支语句(switch语句)



switch语句中表达式必须为int、char、枚举(Java5新特性)或字符串(Java7新特性)





1.2 循环语句

1.2.1 for循环语句



学会画内存分析图分析别人写的程序,这样就很容易分析出规律,分析出规律也就明白了别人的算法,也就很容易读懂别人的程序。

在内存中分析result=1!+2!……+10!的算法



 分析到i等于3以后,基本上已经得到规律了,这个程序要计算的就是:result = 1!+2!+3!……+10!。

  由此可以看出,懂得画内存去分析程序对读懂别人的程序是大有裨益的。以后读别人的程序的时候,觉得难读懂的时候就画内存分析。

  学习别人的算法的最好的途径是分析别人写的程序,分析的过程结合内存分析是最好的做法。

1.2.2 while循环和do while循环



1.2.3 break和continue语句



2 方法



方法执行到return语句后,这个方法的执行就结束了,方法可以有返回值,但可以不用这个返回值。方法首先要定义,然后才能调用。

public class TestMethod{
public static void main(String args[]){
m();
m1(3);
m2(2,3);
int i = m3(4,5);
System.out.println(i);
}
//以下定义的都是静态方法,静态方法可以在main()方法里面直接调用
public static void m(){
System.out.println("Hello!");
System.out.println("孤傲苍狼");
}

public static void m1(int i){
if(i==5){
return;
}
System.out.println(i);
}

public static void m2(int i,int j){
System.out.println(i+j);
}

public static int m3(int i,int j){
return i+j;
}
}


2.1 方法重载

方法重载是指在一个类中定义多个同名方法,但要求每个方法的参数列表必须不同。调用重载方法时,编译器通过检查调用的方法的参数列表选择一个合适的方法。

方法重载的知识点

- 方法重载和返回值类型与权限修饰符无关,不过可以任意改变它们

- 必须改变参数列表的个数、种类、顺序中至少一种

- 方法重载最常用的是构造方法重载

示例程序:

public class Test17 {
private String name;

//构造方法的方法重载
public Test17(){}
public Test17(String name){
this.setName(name);
System.out.println(name+" has been constructed!");
}

public static void main(String[] args) {
Test17 t=new Test17("k");
System.out.println(t.add(1, 1.1));//使用原始方法
System.out.println(t.add(1, 1.1, 1));//使用重载版一
System.out.println(t.add(1.1 , 1.1));//使用重载版二
System.out.println(t.add(1.1, 1));//使用重载版三
}

//方法重载
public double add(int a,double b){
return a+b;
}

public double add(int a,double b,int c){//参数列表的个数不同
return add(a,b)+c;
}

public int add(double a,double b){//参数列表的类型不同
return (int)(a+b);
}

protected double add(double a,int b){//参数列表的顺序不同
return a+b;
}

//私有变量的getter与setter
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}


3 递归调用

递归:在一个方法内部对自身的调用就称为递归





范例:使用递归计算第5个斐波那契数列数

/*计算第5个斐波那契数列数*/
/*
斐波那契数列特点:f(1)=1,f(2)=1,f(3)=f(1)+f(2),f(4)=(f2)+(f3)……依次类推。
即后一个数都是等于前两个数的和,这样的数列就是斐波那契数列。
*/
/*
使用递归调用的方法计算
*/
public class Fab{
public static void main(String args[]){
System.out.println(f(5));
}

public static int f(int n){
if(n==1||n==2){
return 1;
}else{
return f(n-1)+f(n-2);
}
}
}


整个在内存中执行过程如下图所示



4 程序的执行过程

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: