java基础语法及流程控制

概述

       学习任何语言都需要先学习该语言的基础语法,本篇文章在了解Java语言基础概念的前提下进一步对java的语法进行总结,适合初学者进行参看学习。

一、java的基本语法:

       Java语言是严格区分大小写的,这个和C语言一样。而我们熟知的HTML是不用区分大小写的,格式书写自由。java的语句大体可以分为结构定义语句和功能执行语句,比如类名定义,main函数定义等就是结构定义语句,输出语句就是一个功能执行语句。结构定义语句后一般跟大括号,功能执行语句后面加分号。

public class Test
{
    //结构定义语句
    public static void main(String [] args)
    {
        //功能执行语句
        System.out.println("Hello World!");
    }
}

2、Java语言的注释:

(1)通过//来注释一行。

(2)通过/*......*/来注释多行。

(3)通过/**......*/也可以用来注释多行,一般用于文档注释,说说明类,方法等的作用及参数如下所示

public class Test
{
    private String userName;

    private String passWord;

    public String getUserName()
    {
        return userName;
    }

    public String getPassWord
    {
        return passWord;
    }

    /**    
     * main函数,文档注释
     */
    public static void main(String [] args)
    {
        //创建对象,单行注释
        Test test = new Test();
        test.userName = "jwang";
        System.out.println(test.getUserName);
        
        /*用于多行注释
        test.passWord = "lihua";
        System.out.println(test.getPassWord);
         */
    }

}

注意:eclipse快捷键Ctrl+Shift+/可以实现第二种注释,shift+Alt+J可以实现第三种注释

3、Java的标示符:

     (1)Java语言的标示符(即包,类,方法,变量等的名字)可以由字母,数字,下划线,以及美元符号$来组成,但是首字母不能是数字,而且标识符不能是Java语言中的关键字,严格区分大小写,一般为了阅读方便最好做到见名知意。

     (2)转义字符:转义字符是指一些有特殊含义的,很难用一般方式表达的字符,如回车,换行等。所有的转义字符都以(\)开头,后面跟着一个字符来表示某个特定的转义字符。常见的转义字符如下:

引用方法

含义

\b

退格

\t

水平制表符tab

\n

换行

\r

回车

\f

表格符

\

单引号

\

双引号

\\

反斜线

4、数据类型、变量与常量:

       Java编程语言定义了八种基本的数据类型,可以分为四类:整形(byte,short,int,long),文本类(即字符类char),浮点类(float,double)和逻辑类(Boolean)。

    (1)整数类:采用三种进制,八进制,十进制,十六进制。

首位以0开始,数字从0-7表示这是一个八进制的数;首位以0x开始,数字从0-f表示这是一个十六进制的数。用byte关键字定义字节型整数,占一个字节。Short关键字定义短整形数据,占两个字节。用int关键字定义整形数据,占用四个字节。用long关键字定义长整形的数据,占用8个字节。

    (2)文本类(字符型):用char关键字来定义字符型的常量与变量,定义的字符必须用单引号,如‘a’等。字符型数据占用两个字节的内存。用string关键字来定义字符串,字符串必须用双引号。但是String不是基本数据类型。

    (3)浮点型:如果一个数字包括小数部分和指数部分,或者在数字后面带有字母f,F(float)或者D,d(double)则该数字称为浮点型数。按照占用字节大小可以分为float(单精度浮点型)和double(双精度浮点型)。一般默认的都是双精度,如果是单精度则数字后面必须加一个f。如2E3f表示2×103等。Float型占用4个字节;double型占8个字节。

     (4)逻辑类:用关键字Boolean来定义逻辑型的数据,占一个字节,定义的数据可能有两种值,true或者false。如boolean flag=true等。

注:1个字节等于8个二进制位。

说明:java中除了以上8中基本的数据类型之外针对以上8中基本数据类型提供了基本数据类型的包装对象类型,比如int型的包装对象为Integer。除此次之外还有各种引用数据类型,比如数组,String等。

5、数据类型的转换:

数据类型的转换有两种类型:自动类型转换和强制类型转换。

    (1) 自动类型转换:自动类型转换也称为是隐式类型转换;将一种类型的变量赋值给另一种类型的变量时,只要满足以下条件就会发生自动类型转换。第一:两种类型之间兼容;第二:目标类型的字节大于源类型的字节。比如double a;a=3.14f.类型转换自动发生,无需显示说明。

表达式的数据类型自动提升:(注意是相对于表达式而言的)

① 所有的byte,short,char都自动转换为int型。

② 如果有一个long型,计算结果就是long型。

③ 如果有一个float型,计算结果就是float型。

④ 如果有一个double型,计算结果就是double型。

     (2) 强制类型转换:强制类型转换也称作显式类型转换;如果被转换的值的数据类型大于其目标类型,将会丢失部分信息。如:int x=65;char ch=x;这样的语句将会报错,因为char类型小于int类型,编译器将不能自动转换类型,只能进行强制类型转换。如:int x=65; char ch=(char)x.

例子程序:

class wj21
{
   public static void main(String[] args)
   {
      short x=1;
      x=x+1;//这样编译时会出现错误,因为表达式的结果会自动转化成int型,
      //将int型变量赋值给short型的变量,必须进行强制类型转换
      x+=1;//这样是可以的,相当于x=short(x+1);一定要注意与上面的区别。
      System.out.println(x);
   }
}

6.Java中的运算符和表达式:

java中常用的运算符分为5类:算数运算符、赋值运算符、关系运算符、逻辑运算符、位运算符。

表达式是由常量变量对象方法调用运和操作符组成的式子。根据运算符的不同,表达式相应的分为下面几种:算数表达式、关系表达式、逻辑表达式、赋值表达式,这些都属于数值表达式。

(1).算数运算符:主要用于数学计算。

运算符

说明

 

-

一元减,即取负

一元运算符

++

自增,如++a等价于a=a+1

--

自减,如--a等价于a=a-1

 

 

 二元运算符

    +

加法,返回两个操作数的和

     -

减法,返回两个操作数的差

     *

乘法,返回两个操作数的积

 /

除法,返回两个操作数的商

%

   求余(取模),只对整数适用

(2)关系运算符:关系运算符可以测试两个操作数的关系(但不改变两个操作数的值)关系表达式的结果为Boolean型。

运算符

说明

==

等价,检查两个操作数是否相等

!=

不等于,检查两个操作数是否不相等

大于,检查左操作数是否大于右操作数

〉=

大于等于,检查左操作数是否大于等于右操作数

小于,检查左操作数是否小于右操作数

〈=

小于等于,检查左操作数是否小于等于右操作数

(3).逻辑运算符

运算符

说明

Java

C语言

一元

逻辑非(not)

逻辑取非 (not)

 

 

 

 二元

&

逻辑与(and)与C语言中的&&相同

按位与

|

逻辑或(or)与C语言中的||相同

按位或

&&

短路与,如果左操作数为false,则不运算右操作数

逻辑与(and)

||

短路或,如果左操作数为true,则不运算右操作数

逻辑或(or)

(4)位运算符:java中常用的位运算符如下:

~

位求反

&

按位与

|

按位或

^

按位异或

<<

左移

>>

右移

>>>

不带符号右移

注:右移运算符对应的表达式为x>>a,运算的结果是操作数x被2的a次方来除,左移运算符对应的表达式为x<<a,运算的结果是操作数x乘以2的a次方。

(5)赋值运算符:

运算符

说明

=

赋值,将右侧的值赋给左侧的变量

+=

相加并赋值,如:a+=b,相当于a=a+b

-=

相减并赋值,如:a-=b,相当于a=a-b

*=

相乘并赋值,如:a*=b,相当于a=a*b

/=

相除并赋值,如:a/=b,相当于a=a/b

%=

求余并赋值,如:a%=b,相当于a=a%b

(6)条件运算符:条件运算符是三元运算符,他的一般形式是:

   表达式1?表达式2:表达式3

如果表达式1的结果是真,则执行表达式2,否则执行表达式3.条件运算符在某些情况下能够代替小型的if-else语句。

二、java语言流程控制:

流程控制一般可以分为顺序结构,选择结构,还有循环结构三种。

1、顺序结构:顾名思义顺序结构就是程序从上到下一条一条的按照顺序进行执行,没有语句的判断和跳转,直到程序结束。

2、选择结构:主要分为if语句和switch语句两种类型

If语句又可以分为以下几种:

① If(表达式){语句};

② If(表达式){语句1};else{ 语句2};

③ If(表达式1){语句1};

else if(表达式2){语句2};

else if(表达式3){语句3};

.......................

else {语句n};

④ 嵌套if语句:

If(表达式1){

      If(表达式2){语句1};

      else {语句2};

      }

else{

      If(表达式3){语句3};

      else{语句4};

        }

注意:在使用时if后面必须是一条语句,如果是多条语句,必须使用大括号将其组成复合语句。否则编译的时候可能会出现错误。

switch选择结构的格式如下:

switch(表达式){

 case 常量表达式1: 语句1;

 case 常量表达式2: 语句2;

 .............

 case 常量表达式n: 语句n;

 default: 语句n+1;

}

注:

① default语句是可选的,他接受除了上面接受的值,通俗的讲谁都不要的归他。

② case后面只能跟一条语句,如果有多条语句必须将其写成复合语句的形式。

  switch判断语句只可以接受byte,short,char,int型,不能接受其他的类型 

④ 一旦第一次遇到与case匹配的语句,就直接执行这条语句以及后面的所有语句。

⑤  case语句遇到break就会跳出,所以通常与break配合使用。 

3、Java中的循环语句与C语言中的循环语句相同,有for循环,while循环语句,以及do-while循环。

(1)for循环语句格式如下:

 for(表达式1;表达式2;表达式3){循环体语句};

注:表达式1一般都是变量赋初值,表达式2是判断语句,表达式3是控制变量增减的语句。执行过程是先执行表达式1,然后判断表达式2,表达式2成立的话再执行循环体语句,然后判断表达式3.直到表达式2条件不成立时跳出循环。循环体语句必须是一条语句,如果是多条语句必须用{ }括起来,组成符合语句。

(2)while循环语句格式如下:

while(表达式){

      循环语句;

}

while语句一般是在不知道循环次数的情况下使用,执行过程是先判断表达式,当表达式成立时再执行循环体语句,如果表达式不成立,则直接跳出循环。一般变量赋值在while语句之前给出。

(3)do-whlle循环语句格式如下:

do{

   语句;

  }while(表达式);

do-while语句无论表达式是否成立都会执行一次,也就是先执行后判断。

总结:当已知循环的次数时优先选择for循环,当循环的次数不知,而且循环条件比较明显时用while循环,当无论循环条件是否成立,循环体语句至少被执行一次时,选择do-while。

4、break与continue关键字:

(1)break关键字不仅可以用于switch语句,还可以用于循环语句,当满足某个条件时直接跳出循环。

(2)continue关键字可以用于循环语句,经常与if配套使用,当满足if条件时,就不再执行continue后面的语句,而是进入下一次的循环。

猜你喜欢

转载自blog.csdn.net/m0_38045882/article/details/81480145
今日推荐