【02】常用关键字,常量和变量,运算符,判断语句

来源:互联网 发布:javascript 常用 对象 编辑:程序博客网 时间:2024/05/17 13:42

Java语言基础组成

---------------------------------------------------------------------------------------------------------------------------

1.      关键字

2.      标示符

3.      注释

4.      常量和变量

5.      运算符

6.      语句

7.      函数

8.      数组

 

 

1.       关键字

 


2.标示符

         定义规则:由26个英文字母大小写,数字:0-9符号:_$组成

         注意1.数字不可以开头;2.不可以使用关键字。

 

         Java中严格区分大小写

         注意:在起名字时,为了提高阅读星,要尽量有意义。

 

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

                            xxxyyyyzzzz;

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

                            XxxYyyZzz;

         变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每隔单词首字母大写。

                            XxxYyyZzz;

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

                            XXX_YYY_ZZZ;

 

3.常量与变量

         常量表示不能改变的数值

         Java中常量的分类:

                   整数常量:所有整数

                   小数常量:所有小数

                   布尔型常量:较为特有,只有两个值 true false

                   字符常量:将一个数字字母或者符号用单引号(’ ’)标识‘4’ ‘a’ ‘6’

                   字符串常量:将一个或者多个字符用双引号标识  “abcd”  “1234”

                   null常量:只有一个数值就是null

         对于整数:Java有三种表现形式

                   十进制:0-9,满10进1

                   八进制:0-7,满8进1,用0开头表示

                   十六进制:0-9,A-F,满16进1,用0x开头表示

 

 

进制的基本转换

         十进制 二进制 互转

                   十进制转化成二进制,除以2取余数

                   二进制转换成十进制,乘以2的幂数

         十进制 八进制   互转

         十进制 十六进制 互转

 

         负数的二进制表现形式

                   对应的整数二进制取反加1

 

4.变量

         概念:就是将不确定的数据进行存储,也就是需要在内存中开辟一个空间。


类型的转换原理

         自动类型转换(也叫隐士类型转换)

         强制类型转换(也叫显示类型转换)

 

表达式的数据类型自动提升

         所有的byte型、short型和char的值被提升到int型

         如果一个操作数是long型,计算结果就是long型;

         如果一个操作数是float型,计算结果就是float型;

         如果一个操作数是double型,计算uo就是double型

分析1

         System.out.println(‘a’)与System.out.println(‘a’+1)的区别

         输出结果分别是:a   98

System.out.println(‘a’+1)

解析:’a’在做运算时进行了类型提升,转换成了int型,int型的’a’在ASCII码表上对应的数字是97,所以输出的结果是98

 

分析2

         byteb = 3;

         b= b + 2;

         输出结果报错:

         解析:

 

5.运算符

         算数运算符

         赋值运算符

         比较运算符

         逻辑运算符

         位运算符

         三元运算符

 

算数运算符


转移字符:

通过\ 来转变后面字母或者符号的含义

         如:\n:转换

                   \b:退格 相当于backspace

                   \r:按下回车键,widow系统,回车符是由两个字符来表示\r\n

                   \t:制表符,相当于table键

 

赋值运算符:

        

         Shorts =3;

         s= s + 5;

//s+5中s会自动提升成int型的值,赋给short类型装不下会丢失数据,输出结果会报错

s+ = 5;//输出结果为5

        



         比较运算符



        

/*true & true = true;true & false = false;false & true = false;false & false = false; & : 只要两边的boolean表达式结果,有一个为false,那么结果就是false。只有两边都为true,结果才为true true | true = true;true | false = true;false |true = true;false |false = false; | : 两边只要有一个为true,结果为true。只有两边都是false时,结果才为false ^ : 异或:就是和|有点不一样,当true ^true = false;true ^ true = false;true ^ false = true;false ^ true = true;false ^ false = false;  &和&&的区别:&:无论左边是true是false,右边都运算&&:当左边卫false时,右边不运算 | 和 ||的区别| : 两边都参与运算|| : 当左边为true,右边不运算 */


 

位运算符



练习:

1.       最有效率的方式算出2乘以8等于几?

2<<3

2.       对两个整数变量的值进行互换(不需要第三方变量)

//通过用第三方变量,进行变量互换temp = n;n = m;m = temp; //不通过第三方变量n = n + m ;//如果n和m的值非常大,容易超出int范围m = n – m;n = n – m ; //不用地方放变量,技巧型互换n = n ^ m ;m = n ^m;//(n^m)^mn = n ^ m;//n^(n^m)


 

 

三元运算符

         格式:

                   (条件表达式)?表达式1 : 表达式2;

                   如果条件为true,运算后的结果是表达式1;

                   如果条件为false,运算后的结果是表达式2;

         示例:

                   获取两个数中大数

                   Intx = 3 ;y = 4, z;

                   z= (x>y)?x:y;//z变量存储的就是两个数的大数

 

程序流程控制:

判断结构

选择结构

循环结构

 

判断结构

If语句的三种格式:

1.

if(//条件表达式){                   //执行语句}        2.         if(//条件表达式){                   //执行语句}else{         //执行语句}        3.if(//条件表达式){                   //执行语句}else if(//条件表达式){         //执行语句}         …else{         //执行语句}


 

switch语句

         特点:1. switch语句选择的类型只有四种:byte  short int  char

2.case之间与default没有顺序,先执行第一个case,没有匹配的case执行default

          3.结束switch语句的两种情况:遇到break,执行到switch语句结束

          4.如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,知道遇到break或者结尾结束

格式:

     

    switch(表达式)//{         case 取值1:         执行语句;         break;case 取值2:         执行语句;         break;         ……         default://如果缺省,则执行default里的执行语句         执行语句;         break;} 

if和switch语句很像,具体什么场景下,应用哪个语句?

如果判断的具体数值不多,而是符合 byte short int char 这四种类型

虽然两个语句都可以使用,建议使用setich语句,因为效率稍高

其他情况:对区间判断,对结果为boolean类型的判断,使用if,if的使用范围更广