java语言作为一种人机交互的语言,会有很多固定的格式,这样计算机才能有效的按照这些固定的格式去读懂人给它的语言。在我的理解中这就是java语言的语法。这当然也是我们学习java语言的基础。java语法包括以下八大基本组成:

关键字、标示符、注释、常量变量、运算符、语句、函数以及数组


关键字


1、定义:是被java赋予了特殊含义的单词

2、特点:关键字中所有字母都小写,。关键字是已经被java语言赋予特殊含义的词语,也就不能用作其他用途。

3、常见关键字:private、 protected、 public、abstract 、final 、static 、synchronized、extends、 implements、if 、else、switch、true、false、null等。

4、特别需要注意的点:

1)main不是关键字,但是它是java程序默认的入口,因此也不可被用作其他用途

2)在写java程序时,一个java文件中只能存在一个公共类,也就是一个.java文件中只能有一个类被pulbic修饰

3)如果一个类被pulbic修饰,那么该类存在的java文件名一定要与该类名相同


标示符

 1、定义:在程序中自定义的一些名称。可由数字、字母、_、$组成。

2、特点:

1)不能以数字开头;

        2)不能使用关键字和保留字;如main,goto等。

        3)java严格区分大小写。最好不要使用大小写的不同来区别不同的标示符,容易出现混乱。

注意:虽然java语言容许任何符合以上规则的任意字符组作为标示符,但是为了提高阅读性,我们需要尽量使用有意义的字符组。

3、java命名规范:

1)包名:多单词组成时所有字母都小写。如: xxxyyyzzz
  2)类名接口名:多单词组成时,所有单词的首字母大写。如: XxxYyyZzz
3)变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。如:xxxYyyZzz
4)常量名:所有字母都大写。多单词时每个单词用下划线连接。如: XXX_YYY



注释

1、定义:用于注解说明和解释程序的文字就是注释 

2、作用:为了提高程序的可读性

3、Java中的注释格式分为三种:

1)单行注释          格式: //注释文字
2)多行注释          格式:/* 注释文字*/

3) 文档注释         格式:/** 注释文字*/


注意:在多行注释里面不允许多行嵌套。


使用javadoc.exe可把java程序中的文档注释转化成帮助文档。如java提供的jdk帮助文档就是这样做成的。


常量与变量

1、定义:

常量与变量是不可分割的两个概念,常量和变量都是用来存储数据或表示数据的抽象概念。但是常量是不能被改变值的,而变量则可以。 

2、常量的分类:

1)整数常量,所有整数  如1,-1

2)浮点数常量,所有小数  如1.1

3)布尔型常量,表示true   false

4)字符常量,将一个数字、字母或者符号用单引号'  '标识,如'3',只能放一个。

5)字符串常量,将一个或者多个字符用双引号"  "标识,"a","ab"。

6)null常量,只有一个数值就是null

3、变量的分类:

java语言的常用关键字 java语言的关键词有哪些_System

4、整数的表现形式

    二进制0--1 满2进1

十进制 0--9满10进1

八进制0--7 满8进1

十六进制 0--9 A B C D E F满16进1

由于计算机是通过电信号来存储数据的,因此计算机中数据都是以二进制的形式存在的。但是对与人类来讲十进制才是日常生活中最多的,二进制比较难理解,也难以书写,就出现八进制和十六进制

5、使用格式:

格式1: 数据类型 变量名 = 初始化值; 

格式2:数据类型 变量名;

变量名 = 初始化值;



理解:变量就如同数学中的未知数。 


内存中的一个存储区域,在该区域有自己的名称和类型,该区域内数据可以在同一类型范围内不断变化。


Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间。


运算符

1、算数运算符





         运算符

       运算

      范例

    结果

                +

正号

+3

3

                 -

负号

b=4,-b

-4

                 +


5+5

10

                 -


6-4

2

                  *


2*2

4

                  /


2/2

1

                  %

取模

5%5

0

                 ++

自增(前)

a=2,b=++a    

a=3,b=3           

                 ++

自增(后)

a=2,b=a++

a=3,b=2

                  --

自减(前)

a=2,b=--a

a=1,b=1

                  --

自减(后)

a=2,b=a--

a=1,b=2

                  +                

字符串相加     

"He"+"llo"

"Hello"

2、比较运算符








        运算符           

          运算     

范例

结果            

             ==

             相等于

4==3

false

             !=

             不等于

4!=3

true

             <

              小于

4<3

false

              >

               大于

4>3

true

             <=

            小于等于

4<=3

false

             >=

           大于等于

4>=3

false

          instance of

 检查是否是类的对象

"Hello"

instance of String true




3、逻辑运算符




          运算符        

           运算  

范例

      结果      


        AND与

false&true 

false

               |

        OR或

false|true

true

               ^

      XOR异或

false^true

true

               !

      NOT非

!true

false

             &&

      AND短路

false&&true

false

              ||

      OR短路

false||true

true


4、位运算符



        位运算

        运算

               范例

            <<

左移

3<<2=12         ------3*2*2=12

            >>

右移

3>>1=1            ------3/2=1

            >>>

无符号右移

3>>>1=1           ------3/2=1

             &

与运算

6&3=2

              ||

或运算

6|3=7

              ^

异或运算

6^3=5

              ~

反码

~6=-7

为一

5、三元运算符 

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

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

如果条件表达式结果为flase,则运算后的结果是值2 ,


语句

1、判断结构:

1)if语句格式如下,
 

  if(条件表达式)                          

 

    {                                                    

 
 执行语句;                                    

 

    }                                                   

 
条件表达式)                                               

 

    { 

 
 
 

    } 

 
 
 

  else 

 

  { 

 
 
 

  }


在实际运用中根据需要可以不要else if或else中的任意语句段。且else if可以有多个。


使用实列:



<span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px; text-indent: 28px; background-color: rgb(240, 240, 240);">class IfTest </span>{
	public static void main(String[] args) 
	{
		//需求1:根据用户定义的数值不同。打印对应的星期英文。
		/*
		int num = 1;

		if(num==1)
			System.out.println("monday");
		else if(num==2)
			System.out.println("tsd");
		else
			System.out.println("nono");
		*/
		//需求2:根据用于指定月份,打印该月份所属的季节。
		//3,4,5 春季 6,7,8 夏季  9,10,11 秋季 12, 1, 2 冬季

		int x = 4;

		if(x==3 || x==4 || x==5)
			System.out.println(x+"春季");
		else if(x==6 || x==7 || x==8)
			System.out.println(x+"夏季");
		else if(x==9 || x==10 || x==11)
			System.out.println(x+"秋季");
		else if(x==12 || x==1 || x==2)
			System.out.println(x+"冬季");
		else
			System.out.println(x+"月份不存在");


		if(x>12 || x<1)
			System.out.println(x+"月份不存在");
		else if(x>=3 && x<=5)
			System.out.println(x+"春季");
		else if(x>=6 && x<=8)
			System.out.println(x+"夏季");
		else if(x>=9 && x<=11)
			System.out.println(x+"秋季");
		else
			System.out.println(x+"冬季");

	}
}



2、选择语句


switch(表达式) 

 

  { 

 

  case 取值1: 

 
执行语句; 
 
 
 
 break; 
 
 

  case 取值2: 

 
 执行语句; 
 
 
 

           break; 
 
 
 

    …… 
 
 
 

   default: 
 
 
 

             执行语句; 
  
 
  

             break; 
  
 
  

    }



选择语句的特点:



1)switch语句判断的表达式的类型只能是以下四种:byte,short,int,char。



2)case之间与default有顺序。从第一个case开始依次执行,如取值与表达式相等则执行case下的执行语句。没有则执行下一条。


3)遇到break则跳出选择语句,不再执行选择语句下面的语句。



使用实列:



class  SwitchTest
{
	public static void main(String[] args) 
	{

		//需求2:根据用于指定月份,打印该月份所属的季节。
		//3,4,5 春季 6,7,8 夏季  9,10,11 秋季 12, 1, 2 冬季

		int x = 4;

		switch(x)
		{
			case 3:
			case 4:
			case 5:
				System.out.println(x+"春季");
				break;
			
			case 6:
			case 7:
			case 8:
				System.out.println(x+"夏季");
				break;
			case 9:
			case 10:
			case 11:
				System.out.println(x+"秋季");
				break;
			case 12:
			case 1:
			case 2:
				System.out.println(x+"冬季");
				break;
			default:
				System.out.println("nono");

		}

		/*
		if和switch语句很像。
		具体什么场景下,应用哪个语句呢?
		如果判断的具体数值不多,而是符合byte short int char这四种类型。
		虽然两个语句都可以使用,建议使用swtich语句。因为效率稍高。

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

		*/
		System.out.println("Hello World!");
	}
}