Java语言的基础组成

 

①  关键字 ②标识符 ③注释 ④常量和变量 ⑤运算符 ⑥语句 ⑦函数 ⑧数组

1.       关键字

定义:被java语言赋予了特殊含义的单词

特点:关键字中所有字母都为小写

用于定义数组类型的关键字:

class、interface、byte、short、int、long、float、double、char、boolean、void

用于定义数据类型值的关键字:

true、false、null

用于定义流程控制的关键字:

if、else、switch、case、default、while、do、for、break、continue、return

用于定义访问权限修饰符的关键字:

private、protected、public

用于定义类、函数、变量修饰符的关键字:

abstract、final、static、synchronized

用于定义类与类之间关系的关键字:

extends、implements

用于定义建立实例及引用实例,判断实例的关键字:

new、this、super、instanceof

用于异常处理的关键字:

try、catch、finally、throw、throws

用于包的关键字:

package、import

其它修饰关键字:

native、strictfp、transient、volatile、assert

注:main不是关键字但main是JVM的入口。

2.       标识符

在程序中自定义的一些名称。

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

定义合法标识符规则:

1>数字不可以开头。2>不可以使用关键字

Java中严格区分大小写

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

Java中的名称规范:

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

         xxxyyyzzz

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

         XxxYyyZzz

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

         XXX_YYY_ZZZ

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

         xxxYyyZzz

3.       注释

用于注解说明解释程序的文字就是注释。

提高了代码的阅读性。

Java中的注释格式:

单行注释:

                     格式: //注释文字

多行注释:

                     格式: /*注释文字*/

文档注释:

                     格式: /**注释文字*/

注:文档注释为java特有的注释,其中注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序的说明文件。

eg:

            /**

                    

                     版本:V1.0

                     这个类是用于演示Hello World。

            */

//写代码先写注释思想

            /*

                     需求:定义一个Hello World小程序

                    

                               1.……

                               2.……

                    

1.       class关键字定义一个类,将代码都编写到该类中。

2.       为了保证该类的独立运行,在类中定义个主函数,格式:

public static void main(Stirng[] args){ }

3.       java的文件。

4.       dos控制台中通过javac工具对java文件进行编译。

5.       java命令对生成的class文件进行执行。

*/

此处写程序……

4.       常量与变量

常量表示不能改变的数值

Java中敞亮的分类:

1.       整数常量。所有整数

2.       小数常量。所有小数

3.       true false

4.       ’’标识。

5.       ””标识。

6.      null常量。只有一个数值就是null。

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

                           十进制:0-9,满10进1.       eg:1,2,3,4,5,6

                           八进制:0-7,满8进1.                  eg:00,01,02,03,04,05

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

1>     2运算”。

“十进制→二进制”:十进制6转二进制2

把余数倒着输出就好。即结果是:110

 

java语言的关键字数据类型 java语言的关键字是_java

“二进制→十进制”原理:二进制乘以2的过程。

110二进制转成十进制。0*2^0+1*2^1+1*2^1=6

2>     其它进制的转换(先转成二进制)

四个二进制位对应16进制一个位,eg:0101→5、1010→A

三个二进制位对应8进制一个位,eg:001→1、011→3、010→2

3>     负数的二进制表示:

6=110 【占四个字节:0000 0000 0000 0000 0000 0000 0000 0110】

-6,其实就是6的二进制取反+1【1111 1111 1111 1111 1111 1111 1111 1010】

负数的最高位都是1.

                  变量的概念

                            1>内存中的一个存储区域

                            2>该区域有自己的名称(变量名)和类型(数据类型)

                            3>该区域的数据可以在同一类型范围内不断变化

                           为什么要定义变量?

                           用来不断的存放同一类型的常量,并可以重复使用。

                           使用变量的注意:

                            1>变量的作用范围(一对{ }之间有效)

                            2>初始化值

                           定义变量的格式:

                           数据类型变量名 =初始化值;   //格式固定

                           理解:

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

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

java语言的关键字数据类型 java语言的关键字是_基础_02

整数默认:int                           小数默认:double

注:不同数据类型,不可运算。  eg:byte b = 3; b = b+2:;【因为此时2为int类型,b被自动提升成了int,低的向高的提升。】  如果非要这样计算,则:b = (byte)(b+2);【强制转换】。用处:在不要小数位时,如:double→int转换,去小数位。

System.out.println(‘a’);                               //a

System.out.println(‘a’+1);                          //98

System.out.println((char)(‘a’+1));            //b

 

5.

算术运算符

赋值运算符

比较运算符

逻辑运算符

位运算符

三元运算符


5.1

int x =4270;
x = x/1000*1000;
System.out.println(x);   //4000
% 取模运算(余数)
左小于右,=左。右边为1时,结果为0。-1%5 = -1,5%-1 = 0,1%-5 =1 即出现负数,只看左边。
++(同理有--)
   int a = 3,b;
   b=++a;
   System.out.println(b);  //4
   System.out.println(a);  //4
   如果是:
   int a = 3,b;
   b=a++;
   System.out.println(b);  //3
   System.out.println(a);  //4
“+”字符串+
   字符串数据和任何数据使用+都是相连接,最终都会变成字符串。
   System.out.print(”5+5=”+(5+5));   //5+5=10
   System.out.print(”5+5=”+5+5);   //5+5=55
   System.out.print(”a=”+a+”,b=”+b);
转义字符
   通过\来转变后面字母或者符号的意义。
   \n:换行。
   eg:System.out.println(”Hello \nWorld”);    //结果为:Hello
                                                                                                                     World
   \b:退格。相当于backspace
 \r:按下回车键,windows系统中,回车符是由两个字符来表示\r\n
   \t:制表位。相当于tab键。
   eg://想打印:”Hello”
            System.out.println(”\”Hello\””);
            //想打印:\Hello\
            System.out.println("\\Hello\\");
char c=’你’; 【中文占两个字节,char类型2字节】


5.2

符号
=,+=,-=,*=,/=,%=
int a=1; 
a+=3;            //既a=a+3;
eg:
short s=4;
s = s+5;        //这里报错,因为s已经自动提升为int,且是两步运算,先+后赋值
s +=5;           //正确,因为“+=”为一步运算,只做赋值。


5.3

运算符                运算                                    范例                                             结果

==                          相等于                                 4==3                                              false

!=                          不等于                                 4!=3                                               true

<                            小于                                     4<3                                                 false

>                            大于                                     4>3                                                 true

<=                          小于等于                            4<=3                                               false

>=                          大于等于                            4>=3                                               false

instanceof           检查是否是类对象         ‘Hello’ instanceof String           true

注:比较运算符都是boolean类型


5.4

&                   And(与)                false & true               false                  同真才真

|           or(或)                   false | true                true          同假才假(两边都运算)

^           XOR(异或)           true ^ false                true          一真一假才真

!           Not(非)                       !true                            false

&&      AND(并)                     false && true            false                  左假右不运算,否则运算

||         OR(短路)             false || true              ture          左为真,右边不运算


5.5

<<        左移                   3<<2 = 12        3*2*2=12  其实就是:*2^(移动位数)

>>        右移                   3>>1 = 1            3/2=1                正数的话:/2^(移动位数)

>>>      无符号右移     3>>>1=1            3/2=1

&                  与运算              6&3 = 2            

|           或运算              6|3=7

^           异或运算         6^3=5       一个数异或同一个数两次,结果还是那个数(加密)

~           反码                   ~6=-7       

位运算是直接对二进制进行运算

eg:

3<<2=12;

00|00 0000 0000 0000 0000 0000 0000 0011

00 0000 0000 0000 0000 0000 0000 0011|00

 

class OperateDemo
{
	public static void main(String args[])
	{
		System.out.println("-6>>2 ="+(-6>>2));
		System.out.println("-6/4 ="+(-6/4));
		System.out.println("-6>>1 ="+(-6>>1));
		System.out.println("-3/2 ="+(-3/2));
		System.out.println("6>>2 ="+(6>>2));
		System.out.println("-16>>2 ="+(-16>>2));
		System.out.println("16>>2 ="+(16>>2));
		System.out.println("-6>>>2 ="+(-6>>>2));
	}
}


java语言的关键字数据类型 java语言的关键字是_基础_03

&:
6&3 = 2;
110
                    &  011
                        010
                     |:
                            6|5 = 7
            110
          | 101
            111
                     ^:
                            6^5=3
                             110
                    ^  101
                             011
                     ~:
                            ~6=-1
                            0000 0000 0000 0000 0000 0110
                            1111 1111 1111 1111 1111 1001 =-7

                  题一:n=3 m=8【交换n和m的值】

                  方法一:

                  用第三个变量

                   z=n;n=m;m=z;

                  方法二:

                  用和【不借助第三方,有局限性,如果想加超出int范围,就不准确了】

                   n=n+m;

                   m=n-m;

                   n=n=m;

                  方法三:

                  用异或^【不借助第三方】

                   n=n^m;

                   m=n^m;

                   n=n^m;

                  题二:获取60的最低四位

                   int num = 60;

                   num & 15 = 12;

                  题三:获取下一组四位,将60右移4位。

                   int temp = 60>>>4;

                   temp&15=3;

1.2    三元运算符

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

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

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

eg:

获取两个数中大数。

int x=3, y=4, z;

z=(x>y)?x:y;