JAVA工作生活

Java基础语法

2019-06-30  本文已影响0人  JourWon

标识符

定义

组成规则

命名原则:见名知意

注意事项

关键字

定义

Java关键字(Java 8版本)

Java关键字(Java 8版本)

Java关键字(Java 8 以后版本)

Java关键字(Java 8 以后版本)

注意事项

注释

定义

分类

作用

注意事项

访问修饰符

定义

分类

访问修饰符图

访问修饰符图

分隔符

定义

分类

注意事项

转义字符

定义

常见转义字符表

常见转义字符表

Java中需要转义的字符

空行

空白行,或者有注释的行,Java编译器都会忽略掉

进制

定义

常用进制类型

进制转换

流程控制语句

定义

流程是指程序运行时,各语句的执行顺序。流程控制语句就是用来控制程序中各语句执行的顺序。

分类

顺序结构

定义

顺序结构是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的

举例
/*
 * 顺序结构:从上往下,依次执行
 */
public class OrderDemo {
    public static void main(String[] args) {
        System.out.println("开始");
        System.out.println("语句A");
        System.out.println("语句B");
        System.out.println("语句C");
        System.out.println("结束");
    }
}

分支结构(选择结构)

定义

条件语句可根据不同的条件执行不同的语句。包括if条件语句与switch多分支语句。

分类
if分支结构

第一种格式

格式

if(条件表达式){
执行的代码块;
}

执行流程

执行流程图

if语句格式1

执行流程说明

首先判断关系表达式看其结果是true还是false
如果是true就执行语句体
如果是false就不执行语句体

举例
public class IfDemo {
    public static void main(String[] args) {
        System.out.println("开始");
        // 定义两个变量
        int a = 10;
        int b = 20;

        if (a == b) {
            System.out.println("a等于b");
        }
    
        int c = 10;
        if (a == c) {
            System.out.println("a等于c");
        }
    
        System.out.println("结束");
    }
}
第二种格式
格式

if(条件表达式){
执行的代码块;
}else{
执行的代码块;
}

执行流程

执行流程图

if语句格式2

执行流程说明

首先判断关系表达式看其结果是true还是false
如果是true就执行语句体1
如果是false就执行语句体2

举例
public class IfDemo2 {
    public static void main(String[] args) {
        System.out.println("开始");
        // 判断给定的数据是奇数还是偶数
        // 定义变量
    int a = 100;
        // 给a重新赋值
    a = 99;

    if (a % 2 == 0) {
        System.out.println("a是偶数");
    } else {
        System.out.println("a是奇数");
    }
    
        System.out.println("结束");
    }
}
第三种格式
格式

if(条件表达式){
执行的代码块;
}else if(条件表达式){
执行的代码块;
}......(此处省略N个else if)
else{
执行代码块;
}

执行流程

执行流程图

if语句格式3

执行流程说明

首先判断关系表达式1看其结果是true还是false
如果是true就执行语句体1
如果是false就继续判断关系表达式2看其结果是true还是false
如果是true就执行语句体2
如果是false就继续判断关系表达式…看其结果是true还是false

如果没有任何关系表达式为true,就执行语句体n+1

举例
public class IfDemo3 {
    public static void main(String[] args) {
        // x和y的关系满足如下:
        // x>=3 y = 2x + 1;
        // -1<=x<3 y = 2x;
        // x<=-1 y = 2x – 1;
        // 根据给定的x的值,计算出y的值并输出。

        // 定义变量
        int x = 5;
        
        /*
        int y;
        if (x >= 3) {
            y = 2 * x + 1;
        } else if (x >= -1 && x < 3) {
            y = 2 * x;
        } else if (x <= -1) {
            y = 2 * x - 1;
        }else {
            y = 0;
        }
        */
        
        int y = 0;
        if (x >= 3) {
            y = 2 * x + 1;
        } else if (x >= -1 && x < 3) {
            y = 2 * x;
        } else if (x <= -1) {
            y = 2 * x - 1;
        }
        
        System.out.println("y的值是:"+y);
    }
}
注意事项

1、一旦满足某个条件表达式,则进入其执行语句块执行,执行完毕后不会执行其一下的条件语句。
2、如果多个条件表达式之间为“互斥”关系,多个语句之间可以上下调换顺序,一旦是包含关系,要求条件表达式范围小的写到范围大的上边;

switch分支结构
执行流程

执行流程说明

首先计算出表达式的值
其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。
最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

执行流程图

switch执行流程
举例
public class SwitchDemo {
    public static void main(String[] args) {
        //创建键盘录入对象
        Scanner sc = new Scanner(System.in);
        
        //接收数据
        System.out.println("请输入一个数字(1-7):");
        int weekday = sc.nextInt();
        
        //switch语句实现选择
        switch(weekday) {
        case 1:
            System.out.println("星期一");
            break;
        case 2:
            System.out.println("星期二");
            break;
        case 3:
            System.out.println("星期三");
            break;
        case 4:
            System.out.println("星期四");
            break;
        case 5:
            System.out.println("星期五");
            break;
        case 6:
            System.out.println("星期六");
            break;
        case 7:
            System.out.println("星期日");
            break;
        default:
            System.out.println("你输入的数字有误");
            break;
        }
    }
}
注意事项

1、swich(表达式)中表达式的返回值必须是以下几种类型之一:
  byte,short,char,int,枚举(jdk1.5),String(jdk1.7)

2、case子句中的值必须是常量,且所有case子句中的值应是不同的;

3、default子句是可任选的,当没有匹配的case时,执行default;

4、break语句用来在执行完一个case分支后使程序跳出swich语句块;如果没有break程序会顺序执行到swich结尾;

if分支结构和switch分支结构区别

if和swich语句很想,如果判断的具体数值不多,而且复合byte、short、int、char这四种类型。建议使用swich语句,因为效率稍高;

其他情况:对区间进行判断,对结果为boolean类型进行判断,使用if,if的使用范围比较广泛。

循环结构

定义

循环语句就是在满足一定条件的情况下反复执行某一个操作。包括while循环语句、do···while循环语句和for循环语句。

分类
for循环语句
执行流程

执行流程图

for循环语句的执行流程图

执行流程说明

A:执行初始化语句
B:执行判断条件语句,看其结果是true还是false
如果是false,循环结束。
如果是true,继续执行。
C:执行循环体语句
D:执行控制条件语句
E:回到B继续

格式

for(初始化语句;判断条件语句;控制条件语句) {
循环体语句;
}

举例
public class ForDemo {
    public static void main(String[] args) {
        //原始写法
        System.out.println("HelloWorld");
        System.out.println("HelloWorld");
        System.out.println("HelloWorld");
        System.out.println("HelloWorld");
        System.out.println("HelloWorld");
        System.out.println("HelloWorld");
        System.out.println("HelloWorld");
        System.out.println("HelloWorld");
        System.out.println("HelloWorld");
        System.out.println("HelloWorld");
        System.out.println("-------------------------");
        

        //用循环改进
        for(int x=1; x<=10; x++) {
            System.out.println("HelloWorld");
        }
    }
}
foreach循环语句
执行流程

执行流程说明

和for循环执行流程相似

格式

for (声明语句 : 表达式) {
  //代码句子
}

举例
public class Test {
    public static void main(String args[]) {
        int [] numbers = {10, 20, 30, 40, 50};
        
        for ( int x : numbers ) {
            System.out.print( x );
            System.out.print(",");
        }
        
        System.out.print();
        String [] names = {"James", "Larry", "Tom", "Lacy"};
        
        for ( String name : names ) {
            System.out.print( name );
            System.out.print(",");
        }
    }
}
定义

它是Java5后新增的for语句的特殊简化版本,并不能完全替代for语句,但所有foreach语句都可以改写为for语句。foreach语句在遍历数组等时为程序员提供了很大的方便。

while循环语句
格式

基本格式
while(判断条件语句) {
循环体语句;
}
扩展格式
初始化语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
}

执行流程

执行流程图

while循环语句的执行流程图

执行流程说明

while循环语句的循环方式为利用一个条件来控制是否要继续反复执行这个语句。

举例
public class WhileDemo {
    public static void main(String[] args) {
        //输出10次HelloWorld
        /*
        for(int x=1; x<=10; x++) {
            System.out.println("HellloWorld");
        }
        */
        
        //while循环实现
        int x=1;
        while(x<=10) {
            System.out.println("HellloWorld");
            x++;
        }
    }
}
do…while循环语句
格式

基本格式
do {
循环体语句;
}while((判断条件语句);
扩展格式
初始化语句;
do {
循环体语句;
控制条件语句;
} while((判断条件语句);

执行流程

执行流程图

do...while循环语句的执行流程图

执行流程说明

A:执行初始化语句;
B:执行循环体语句;
C:执行控制条件语句;
D:执行判断条件语句,看是true还是false
如果是true,回到B继续
如果是false,就结束

举例
public class DoWhileDemo {
    public static void main(String[] args) {
        //输出10次 HelloWorld
        /*
        for(int x=1; x<=10; x++) {
            System.out.println("HelloWorld");
        }
        */
        

        //do...while改写
        int x=1;
        do {
            System.out.println("HelloWorld");
            x++;
        }while(x<=10);
    }
}
三种循环的区别

虽然可以完成同样的功能,但是还是有小区别:
do…while循环至少会执行一次循环体。
for循环和while循环只有在条件成立的时候才会去执行循环体
for循环语句和while循环语句的小区别:
使用区别:控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。

跳转语句(控制循环结构)
定义

Java语言中提供了3种跳转语句,分别是break语句、continue语句和return语句。

分类

break

break的使用场景

break的使用场景:
在选择结构switch语句中,在循环语句中
离开使用场景的存在是没有意义的
break的作用:跳出单层循环

举例

/*
 * break:中断的意思
 * 使用场景:
 *      A:switch语句中
 *      B:循环中
 * 注意:
 *      离开使用场景是没有意义的。
 * 作用:
 *      跳出循环,让循环提前结束
 */
public class BreakDemo {
    public static void main(String[] args) {
        //break;
        
        for(int x=1; x<=10; x++) {
            if(x == 3) {
                break;
            }
            System.out.println("HelloWorld");
        }
    }
}
continue

continue的使用场景

continue的使用场景:
在循环语句中
离开使用场景的存在是没有意义的
continue的作用:
单层循环对比break,然后总结两个的区别
break 退出当前循环
continue 退出本次循环

举例

/*
 * continue:继续的意思
 * 使用场景:
 *      循环中
 * 注意:
 *      离开使用场景是没有意义的
 * 作用:
 *      结束一次循环,继续下一次的循环
 * 区别:
 *      break:退出循环
 *      continue:结束一次循环,继续下一次的循环
 */
public class ContinueDemo {
    public static void main(String[] args) {
        //continue;
        
        for(int x=1; x<=10; x++) {
            if(x == 3) {
                //break;
                continue;
            }
            System.out.println("HelloWorld");
        }
    }
}
return

return的使用场景

return的使用场景:
在循环语句中
在方法中
return的作用:可以从一个方法返回,并把控制权交给调用它的语句。
直接结束整个方法,从而结束循环。

举例

public class ReturnDemo {
    public static void main(String[] args) {
        getStr();
    }

    public String getStr() {
                return "Hello";
        }

}

表达式

定义

类型和值

运算顺序

举例

运算符

定义

分类

运算符的优先级

运算符的优先级

变量

定义

分类

定义格式

public class Variable{
    // 类变量
    static int allClicks=0;    
     // 实例变量
    String str="hello world";  
    public void method(){
            // 局部变量
        int i =0;  
    }
}

注意事项

常量

定义

分类

举例

注意事项

数据类型

定义

分类

计算机存储单元

Java基本数据类型图

Java基本数据类型

数据类型转换

上一篇 下一篇

猜你喜欢

热点阅读