2.java基本语法

一.关键字&标识符

1.关键字:被java语言赋予特殊含义的字符串(或单词),

2.保留字:被java语言占用,但是还没有具体含义。关键字保留字都小写


2.java基本语法_第1张图片
关键字

3.标识符:凡是可以自己命名的地方,都是标识符。

    定义合法标识符规则:

        >由26个英文字母大小写,0-9 ,_或 $ 组成

        >数字不可以开头。

        >不可以使用关键字和保留字,但能包含关键字和保留字。

        >Java中严格区分大小写,长度无限制。

        >标识符不能包含空格。

4.java命名规范

    包名:多单词组成时所有字母都小写:xxxyyyzzz

    类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz

    变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz(驼峰

    常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ

    在起名字时,为了提高阅读性,要尽量有意义,“见名知意”。


二.变量

1.变量的声明格式:数据类型 变量名 = 初始化值;  必须先声明后使用,都有其作用域。

2.变量类型的分类

2.java基本语法_第2张图片
变量分类1
2.java基本语法_第3张图片
变量分类2

3.每种数据类型的使用

    1).整型 : byte(1字节) short(2字节) int(4字节) long(8字节)   一般使用int型

                byte b1 = 127;

                b1 = 128;//编译不通过,超出了byte的取值范围

                定义一个long型的变量,以"l"或者"L"结尾    long l = 1243124L;

     2)浮点型:float(4字节) double(8字节),表示带小数的数值 

                比较常用的是double      double d1 = 123.3;

                定义float型变量时,需要末尾添加"f"或者"F"    float f1 = 123.2f;

     3)boolean型:取值只有两个:true 或 false。不能取值为null

     4)字符型:char(2字节)

        一个char型变量,表示一个字符

            char c1 = 'a';

            char c2 = 'ab';//编译不通过

            char c3 = '1';

            char c4 = '中';

            char c5 = '\n';     c5 = '\t';   //转义字符

            System.out.println("abcd" + c5 + "def");

            char c6 = '\u1234';   //用的不多

            System.out.println("c6:" + c6);

4.变量间的运算

    ①自动类型提升:容量小(表数范围)的变量与容量大的变量间做运算,结果的数据类型与容量大的变量的类型一致。

            byte、short、char ---> int --->long---->float----> double

            当byte\short\char三者之间的变量做运算的话,结果都为int型。

    ②强制类型转换:是自动类型提升的逆过程:将容量大的数据类型的变量转换为容量小的数据类型的变量

            使用强制类型转换符:()

            double d1 = 123.3;

            int i = (int)d1;//123

            byte b = (byte)i;

            注意:强转时,可能会导致精度损失。


三.运算符

    1. 算术运算符:+(正)  -(负)     + - * / % (前)++ (后)++ (前)-- (后)-- +(字符串连接运算)

            1) int i = 12;

                  int j = i / 5;

                  System.out.println(j);//2

            2)取模运算与被模数符号一样。

                      int i = 12;

                      int j = 3;

                      if(i % j == 0){....}

            3)(前)++ :先+1,后运算

               (后)++:先运算,后+1

    2.赋值运算符: = += -= *= /= %=

        运算结果不改变原有变量的数据类型

            int i = 12;

            i += 10;//i = i + 10;

            short s = 10;

            s += 2;//s = (short)(s + 2);

            int m = 12;

            m *= 0.1;//编译能通过。

            m = m * 0.1;//编译不通过

    3.比较运算符(关系运算符): == > < >= <= intanceof

        >比较运算符的结果都为boolean类型!

        >通常使用在条件判断和循环语句中

    4.逻辑运算符 且: & && 或: | ||   ! ^

            >运算符处理的都是boolean类型的变量

            >& 与 && 区别:当符号左边是false时,& 继续执行右边的运算;&& 不再执行右边的运算

            >|  与 || 区别:当符号左边是true时,| 继续执行右边的运算;|| 不再执行右边的运算

            >开发时,常用&&  和 ||

    5.位运算符: <<     >>  >>>  &    |    ^  ~

        >处理的是数值型的变量

        >在一定范围内,左移一位,相当于这个数值 * 2。

            int i = 6;

            int j = ~i; //-7

    6.三元运算符:(条件表达式)? 表达式1 : 表达式2

         注:1.表达式1和表达式2的类型要一致

              2.表达式1和表达式2的类型,决定了运算符的类型

              3.凡是使用三元运算符的操作都可以转换为if-else结构。反之不成立.

               如果二者都可以使用的情况下,建议使用三元运算符,效率高。


四.流程控制

1.分支结构

    if(){}else{}   if(){}else if(){}...else{}

    1).如果多个条件表达式是"互斥"关系,那么执行结构谁上谁下都可以。

         如果多个条件表达式是"包含"关系,要求将范围小的写在范围大的上面

     2)如果条件判断的执行语句只有一行的话,可以省略一对{}.建议不省略

        switch(变量){

                case 值1:

                    语句1;

                    break;

                        ...

                default:

                    语句;

               }

    1)default:可选的,同时位置是灵活的。

    2)switch中的变量只能是如下的类型之一:byte short int char 枚举类 String(JDK1.7新加入的)

    3)使用switch-case的结构都能转换为if-else结构。反之,不成立

    4)如果switch-case和if-else结构都可以使用,建议使用switch-case,因为效率高

    5)case中只能写取值(常量),不能表示范围


2.循环结构

       1. 循环结构的4个要素:

            ①初始化条件

            ②循环条件(是boolean类型的结果)

            ③循环体

            ④迭代条件

    2.三种循环结构:

            for(①;②;④){

                        ③

                }

            ①

            while(②){

            ③;

            ④;

            }

            ①

            do{

                    ③;

                    ④;

                   }while(②);

    注:三种循环间都可以相互转换

    区别:①for循环的初始化条件执行完循环以后就不可再在循环外调用。而while循环的初始化条件在循环结束以后,初始化变量声明所在的{}内还可以被调用

                ②do-while至少会被执行一次。

3.两个特殊的循环结构:

    while(true) 或者 for(;;)

        第一种情况:当某次执行时,②循环条件返回false,进而结束当前循环

        第二种情况:在循环结构内,执行到break语句,调出当前循环。

        明确:若循环结构没有出现上述两种情况之一,那这个循环就是死循环!

                  死循环是我们写程序要避免的!


五.break和continue关键字的使用

    break:①可以使用在switch-case或者循环结构中

              ②:如果在循环结构中使用:结束当前循环结构(默认结束的是离break最近的循环结构)

    continue:①只能使用在循环结构中

                   ②:如果在循环结构中使用:结束当次循环(默认结束的是离break最近的循环结构)

说明:在break和continue关键字后面不能有任何的操作语句。否则编译不通过。


2.java基本语法_第4张图片
示例1


2.java基本语法_第5张图片
示例2

你可能感兴趣的:(2.java基本语法)