欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java基础语法(总结篇)

程序员文章站 2022-03-26 21:20:49
关键字&标识符 关键字的概念与特征 概念:Java关键字是事先定义好的对Java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名和参数。 特征: 完全小写 在增强版记事本中(例如Notepad++)有特殊颜色 标识符的概念与规则 凡是可以 ......

关键字&标识符

关键字的概念与特征

概念:java关键字是事先定义好的对java的编译器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名和参数。

特征:

  • 完全小写
  • 在增强版记事本中(例如notepad++)有特殊颜色

标识符的概念与规则

  1.   什么是标识符?

    凡是可以由自己命名的地方都称为标识符.

    例: 项目名 ,包名 ,类名 .方法名

        2.   命名规范

    ①    不可使用java关键字和保留字,但是可以包含关键字和保留字.

    ②    可以使用26个字母大小写,数字0-9,$和_.

    ③    可以使用数字,但不可放在首位.

    ④    长度理论上没有限制,但命名最好能反映出其作用,遵循”驼峰形式”,见命知意

    ⑤    包名全部小写,类名全部大驼峰式

    ⑥    变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写

              ⑦ 常量(特指被 final 修饰的常量)名全部大写,如果是单个字母,需要大写,如果是多个单词,需要用下划线分开。并且都大写

    例:写一个ajax的项目实例,

    项目名:ajaxtest        包名:com.liu.ajax       类名:ajaxdemo

常量&变量

常量的概念:在程序运行期间。固定不变的量。

常量的分类:

  1. 字符常量:凡是用单引号引起来的单个字符,就做字符常量。例如:、‘b'、9’、‘中
  2. 字符串常量:凡是用双引号引起来的部分,叫做字符串常量。例如:"abc"、"hello”、“123"
  3. 整数常量:直接写上的数字,没有小数点。例如:100、200、0、-250

  4. 浮点数常量:直接写上的数字,有小数点。例如:2.5、-3.14、0.0 

  5. 布尔常量:只有两种取值 true  |  false

基本数据类型:

 

           类型                                                                                                 字节数                       二进制位数

 

          byte (字节型)                                                                                   1                                   8

 

          short(短整型)                         char    (字符型)                             2                                  16

 

          int    (整型)                            float    (单精度浮点数)                   4                                  32

 

         long  (长整型)                        double(双精度浮点数)                   8                                   64

注意事项:

  • java中的默认类型:整数类型是 int 、浮点类型是double
  • 数据范围与字节数不一定相关,例如float数据范围比 long 更加广泛,但是float是4字节,1ong是8字节。
  • 浮点型可能只是一个近似值,并非精确的值。
  • 浮点数当中默认类型是double。如果一定要使用float类型,需要加上一个后缀f。
  • 字符串不是基本类型,而是引用类型
  • 如果是整数,默认为int类型,如果一定要使用long类型,需要加上一个后缀l。推荐使用大写字母后缀。

 

 变量: 程序运行期间,内容可以改变的量。

创建一个变量并且使用的格式:

 

  数据类型  变量名称; //创建了一个变量

  变量名称 = 数据值;  //赋值,将右边的数据值,赋值交给左边的变量

一步到位的格式:
  数据类型  变量名称 = 数据值; //在创建一个变量的同时,立刻放入指定的数据值

 注意事项:

  1.如果创建多个变量,那么变量之间的名称不可以重复。

   2.对于float和long类型来说,字母后缀f 和 l不要丢掉。

   3.没有进行赋值的变量,不能直接使用;一定要赋值之后,才能使用。

 

作用域 : 从定义变量的一行开始,一直到直接所属的大括号结束。 

 

数据类型转换

当效据类型不一样时,就会发生数据类型转换

自动类型转换(隐式)

  1.特点:代码不需要进行特殊处理,自动完成

  2.规则:数据范围从小到大

long num1 = 100;
system.out.println(num1)

 

 // 左边是long类型,右边是默认的int类型,左右不一样

 // int-->long,符合了数据范围从小到大的要求

 

强制类型转换(显式)

   1.特点:代码需要进行特殊的格式处理,不能自动完成

   2.格式:范围小的类型范围小的变量名=(范围小的类型)原本范围大的数据

 

int num=(int)100l;
system.out.print1n(num);

 

 //左边是int类型,右边是long类型,不一样

 //格式范围小的类型  范围小的变量名 =(范围小的类型) 原本范围大的数据 ;

注意事项:

  1.强制类型转换一般不推荐使用,因为有可能发生精度损失、数据溢出。

  2.byte / short / char这三种类型都可以发生数学运算,例如加法“+”.

  3.byte/short/char这三种类型在运算的时候,都会被首先向上提升成为int类型,然后再计算。符合ascii编码表。 

例3:
byte num4 = 40;//注意!右侧的数值大小不能超过左侧的类型范围
byte num5 = 50;
//当byte + byte,会先向上提升称为int类型,所以结果就是--> int + int  ,返回类型也应该是int
int result1 = num4 + num5;
system.out.println(result1);//90

 

 运算符 :进行特定操作的符号。例如:+

 表达式:用运算符连起来的式子叫做表达式。例如:20+5 。   又例如:a+b

 四则运算:加+      减 -      乘 *      除  /

 

  取模(取余数):%

 只有对于整数的除法来说,取模运算符才有余数的意义。

 

int x = 10;
int y = 3;
int resultl = x / y ;
system.out.println(result1);//3
int result2 = x % y ;
system.out.println(result2);//余数,模,1

 

 算术运算符

 Java基础语法(总结篇)

 

 

 

 四则运算当中的加号“+”有常见的三种用法:

  1.对于数值来说,+ 就是加法。

  2.对于字符char类型来说,在计算之前,char会被提升成为int,然后再计算。
  char类型字符,和int类型数字,之间的对照关系表:ascii、unicode

  3.对于字符串string来说,+ 代表字符串连接操作。   () 小括号的优先级最高

例3:
string str = "java";
//string + int --> string
system.out.println(str2+20);//java20

 

 

自增运算符:++

  例如:   a++;   先使用a值,再执行a = a + 1 ; 
int a = 1;
int b = 2;
b = a++;  //在这一步,a的值还没有改变,所以是将a=1的值赋给了b,然后再进行改变。
system.out.println("a:"+a); //a:2
system.out.println("b:"+b); //b:1

 

自减运算符:- -

  例如:   ++a; 先执行a = a + 1 ; 再使用a值。
int a = 1;
int b = 2;
b = --a;
system.out.println("a:"+a);
system.out.println("b:"+b);

 

a++ : 在变量值被使用之后才增加的值

++a : 在变量值在被使用之前增加它的值

- - 操作符的工作原理与此相同,只是它所执行的是减值操作而非增值操作。

 赋值运算符

赋值运算符是指为变量或常量指定数值的符号。如可以使用 “=” 将右边的表达式结果赋给左边的操作数。

java 支持的常用赋值运算符,如下表所示:

Java基础语法(总结篇)

 

 

 比较运算符

比较运算符用于判断两个数据的大小,例如:大于、等于、不等于。比较的结果是一个布尔值( true 或 false )。

java 中常用的比较运算符如下表所示:

Java基础语法(总结篇)

注意事项:

  1、  > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型

  2、  == 、 != 两边的操作数既可以是数值类型,也可以是引用类型

 

逻辑运算符

主要用于进行逻辑运算,连接两个boolean值,代表两个条件。

java 中常用的逻辑运算符如下表所示:

Java基础语法(总结篇)

我们可以从“投票选举”的角度理解逻辑运算符:

  1、 与:要求所有人都投票同意,才能通过某议题

  2、 或:只要求一个人投票同意就可以通过某议题

  3、 非:某人原本投票同意,通过非运算符,可以使其投票无效

  4、 异或:有且只能有一个人投票同意,才可以通过某议题

 

当使用逻辑运算符时,我们会遇到一种很有趣的 “短路” 现象    >> 如果根据左边已经可以判断得到最终结果,那么右边的代码将不再执行,从而节省一定的性能。

譬如:( 1 > 2 ) && ( 1 < 3 ) 中,如果能确定左边 1 > 2 运行结果为 false , 则系统就认为已经没有必要执行右侧的 1 < 3 啦。

 

条件运算符

条件运算符( ? : )也称为 “三元运算符”。

  • 一元运算符:只需要一个数据就可以进行操作的运算符。例如:取反!、自增++、自减--
  • 二元运算符:需要两个数据才可以进行操作的运算符。例如:加法+、赋值=
  • 三元运算符:需要三个数据才可以进行操作的运算符。

 

语法形式:布尔表达式 ? 表达式1 :表达式2

运算过程:如果布尔表达式的值为 true ,则返回 表达式1 的值,否则返回 表达式2 的值

例如 :

Java基础语法(总结篇)

 

 

 因为,表达式 8>5 的值为 true ,所以,返回: 8大于5

 

方法 ♦ ♦

所谓方法,就是用来解决一类问题的代码的有序组合,是一个功能模块。

一般情况下,定义一个方法的语法是:  

访问修饰符  返回值类型  方法名(参数列表){

  方法体

}

 其中:

  1、 访问修饰符:方法允许被访问的权限范围, 可以是 public、protected、private 甚至可以省略 ,其中 public 表示该方法可以被其他任何代码调用

  2、 返回值类型:方法返回值的类型,如果方法不返回任何值,则返回值类型指定为 void ; 如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用 return 语句返回值

  3、 方法名:定义的方法的名字,必须使用合法的标识符

  4、 参数列表:传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开 

 

 根据方法是否带参、是否带返回值,可将方法分为四类:

 

   无参无返回值方法

  如果方法不包含参数,且没有返回值,我们称为无参无返回值的方法。

  方法的使用分两步:

  第一步,定义方法

  例如:下面代码定义了一个方法名为 show ,没有参数,且没有返回值的方法,执行的操作为输出 “ welcome to imooc. ”

  Java基础语法(总结篇)

 注意 :

  1、 方法体放在一对大括号中,实现特定的操作

  2、 方法名主要在调用这个方法时使用,需要注意命名的规范,一般采用第一个单词首字母小写,其它单词首字母大写的形式

 

  第二步,调用方法

  当需要调用方法执行某个操作时,可以先创建类的对象,然后通过  对象名.方法名();  来实现

  例如:在下面的代码中,我们创建了一个名为 hello 的对象,然后通过调用该对象的 show( ) 方法输出信息

  Java基础语法(总结篇)

  运行结果为:  welcome to imooc.

 

 

  无参带返回值方法

  如果方法不包含参数,但有返回值,我们称为无参带返回值的方法。

  例如:下面的代码,定义了一个方法名为 calsum ,无参数,但返回值为 int 类型的方法,执行的操作为计算两数之和,并返回结果

  Java基础语法(总结篇)

    在 calsum( ) 方法中,返回值类型为 int 类型,因此在方法体中必须使用 return 返回一个整数值

  调用带返回值的方法时需要注意,由于方法执行后会返回一个结果,因此在调用带返回值方法时一般都会接收其返回值并进行处理。如下:第6行

  Java基础语法(总结篇)

  运行结果为: 两数之和为:17

 

 不容忽视的“小陷阱”:

  1、 如果方法的返回类型为 void ,则方法中不能使用 return 返回值!

  

  2、 方法的返回值最多只能有一个,不能返回多个值

  Java基础语法(总结篇)

  3、 方法返回值的类型必须兼容,例如,如果返回值类型为 int ,则不能返回 string 型值

  Java基础语法(总结篇)

 

   带参无返回值方法

 有时方法的执行需要依赖于某些条件,换句话说,要想通过方法完成特定的功能,需要为其提供额外的信息才行。

 例如,现实生活中电饭锅可以实现“煮饭”的功能,但前提是我们必须提供食材,如果我们什么都不提供,那就真是的“巧妇难为无米之炊”了。

 我们可以通过在方法中加入参数列表接收外部传入的数据信息,参数可以是任意的基本类型数据或引用类型数据。

 

 我们先来看一个带参数,但没有返回值的方法:

 Java基础语法(总结篇)

  上面的代码定义了一个 show 方法,带有一个参数 name ,实现输出欢迎消息。

 

  调用带参方法与调用无参方法的语法类似,但在调用时必须传入实际的参数值

  Java基础语法(总结篇)

 例如:

  Java基础语法(总结篇)

  运行结果为: 欢迎您,爱慕课!

  很多时候,我们把定义方法时的参数称为形参,目的是用来定义方法 需要传入参数的个数和类型;把调用方法时的参数称为实参,是传递给方法真正被处理的值。

 

  一定不可忽视的问题:

  1、 调用带参方法时,必须保证实参的数量、类型、顺序与形参一一对应

 

  Java基础语法(总结篇)

 

2、 调用方法时,实参不需要指定数据类型,如 

 

  3、 方法的参数可以是基本数据类型,如 int、double 等,也可以是引用数据类型,如 string、数组等           

 

 

 

                         第10行,array.tostring()方法将数组转换为字符串输出

 

 4、 当方法参数有多个时,多个参数间以逗号分隔

 

 带参带返回值方法

  如果方法既包含参数,又带有返回值,我们称为带参带返回值的方法。

  例如:

下面的代码,定义了一个 show 方法,带有一个参数 name ,方法执行后返回一个 string 类型的结果

  Java基础语法(总结篇)

调用带参带返回值的方法:

  Java基础语法(总结篇)

  运行结果为: 欢迎您,爱慕课!