黑马程序员-----java基础概述之关键字、运算符

来源:互联网 发布:大势至usb端口 编辑:程序博客网 时间:2024/04/27 04:25

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------

java基础概述

一、关键字

被java赋予了特殊含义的单词,所有字母都为小写。



二、标识符

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

②由26个字母(大小写)、数字0~9、和—以及$组成。

③数字不能开头,不可以使用关键字作为标识符。

④严格区分大小写,选取有意义的名字,增加阅读性。

名称规范:

1. 包名:多单词组成时所有字母小写(例xxxyyyzzz) 

2. 类名和接口:多个单词组成时所有单词的首字母大写(例XxxYyyZzz)

3. 变量和函数名:多单词组成时第一个单词首字母小写,其他首字母大写(xxxYyyZzz)

4. 常量名:多个单词组成时,字母全部大写,多单词之间使用_分隔(XXX_YYY_ZZZ

三、注释

①对于单行和多行注释,不会被JVM执行

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

③注释是一个程序员必须要具有的良好编程习惯。先写注释,后写代码。

④将自己的思想通过注释先整理出来,再用代码去体现,

⑤代码仅仅是思想的一种体现形式而已。

四、常量

1、整数常量  所有整数

2、小数常量  所有小数

3、布尔型常量  较为特有,只有两个数值,truefalse

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

5、字符串常量   将一个或多个字符用双引号标识

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

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

十进制:0-9 八进制:0-7,用0开头表示

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

五、进制的特点和转换

8个二进制位代表一个字节,计算机中存放的都是二进制数据。进制越大,表现形式越短。

十进制转换成二进制 原理:对十进制数进行除2运算。

二进制转换成十进制     原理:二进制乘以2的过程。

二进制转换成十六进制   原理:四位一组,四个二进制位最大值为15

二进制转换成八进制     原理:三个二进制代表一位,最大值为7

负数的二进制   原理:绝对值的二进制形式取反加1

例:6=110

    -66的二进制取反加1.

    取反,将二进制的1变成00变成1.

    0000 0000 0000 0000 0000 0000 0000 0110

    1111 1111 1111 1111 1111 1111 1111 1001

    1111 1111 1111 1111 1111 1111 1111 1010=-6

    四个字节,负数的最高位都是1

六、变量

     内存中的一个存储区域,该区域有自己的名称(变量名)和类型(数据类型)。 该区域的数据可以在同一类型范围内不断变化。用来不断地存放同一类型的常量,并可以重复使用。

     使用范围:在一对{}之间有效,注意初始化值。

     格式:数据类型 变量名 =初始化值(格式固定)

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

通过明确数据类型,变量名称以及数据来开辟空间。

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

基本数据类型:

1)数值型

     ①整数类型(byteshortintlongbyte一个字节八个二进制位-128~127short两个字节-32768~32767int四个字节;long八个字节。(默认int

     ②浮点类型:(floatdoublefloat四个字节,double八个字节。(默认double)

2)字符型(char0~65535

3)布尔型(booleantruefalse

当数据不确定的时候,需要对数据进行存储时,就定义一个变量来完成存储的动作。

   引用数据类型:

   ①类(class

   ②接口(interface

   ③数组([]

七、数据类型的转换

① 自动类型转换(也叫隐式类型转换)

   可以将一个数赋值给更大数值范围的变量,例如可以经byte 变量赋值给short变量可以将short变量赋值给int变量可以将int变量赋值给long变量。

   Java内部其实做了工作就是自动将数值进行了类型提升,就叫做自动类型转换 (也叫隐式类型转换),要实现自动类型的转换,需要满足两个条件,第一两种类型彼此兼容,第二目标类型取值范围必须大于源类型。所有的数字类型,包括整形和浮点型彼此 都可以进行转换。

②当两种类型彼此不兼容,或者目标类型取值范围小于源类型(目标是byte源 是int)无法自动转换,此时就需要进行强制类型转换。比如小数部分只想保留 整数部分一定要清楚要转换的数据在转换后数据的范围内否则会损失精度

算术表达式,逻辑表达式

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

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

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

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

不同类型间不能直接运算,必须经过自动类型提升,以大的为主,小的向大的 提升。字符型可以和整数进行运算。

八、运算符

1.8.1运算符

      ①算数运算符+-*\%++--、(%取模看左边)

      ②赋值运算符

      ③比较运算符

      ④逻辑运算符

      ⑤位运算符

      ⑥三元运算符

  字符串数据和任何数据使用+都是相连接,最终都会变成字符串。

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

      \n代表换行。

      \b 代表退格。相当于backspace

      \r 按下回车键。Windows系统,回车符是由两个字符表示,\n\r

      \t 制表符,相当于tab键。

      \转义其后的字符。 

1.8.2赋值和比较运算符

     赋值运算符:符号:=+=-=*=/=%=(是一次运算)

     比较运算符==、!=<><=>=instanceof

     比较运算符的结果都是boolean型,比较运算符不能误“==”写成“=”。

1.8.3逻辑运算符

     &(与)只要两边一个为假,结果为假。

     |(或)其中一个为真,结果为真。

     ^(异或)异于或,两边一样为假。

     !(非NOT

     &&(短路AND)左边为假,右边不运算。

     ||OR短路)  左边为真,右边不运算。

     逻辑运算符用于连接boolean类型的表达式。

1.8.4位运算符

位运算符

     <<(左移)乘以2的移动位数次幂(补零)

     >>(右移)除以2的移动位数次幂(原来最高位定)

     >>>(无符号右移)(空位补零)

     &(与)

     |(或)

     ^(异或)一个数异或同一个数两次为其本身。

     ~(反码)取反

位运算符练习

最有效率的方式运算2乘以8。  2<<3

对两个整数的值进行交换。不使用第三方变量。

int n=3int m=4

   n=n+m//nm的值非常大,容易超出范围。

   m=n-m

   n=n-m;局限性在于int的值有范围。

n=n^m;

   m=n^m;

   n=n^m;

1.8.5三元运算符

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

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

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

示例:

获取两个数中大数。

int x=3,y=4,z;

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

0 0
原创粉丝点击