您的位置:首页 > 职场人生

黑马程序员---关键字,常量,变量,运算符

2015-06-29 10:50 441 查看
-----------android培训java培训、java学习型技术博客、期待与您交流!---------

关键字

关键字的定义:

被Java赋予了特殊含义的单词。

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

下面是关键字的分类:

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

class,interface,byte,short,int,long,float,double,char,boolean,viod

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

ture,false,null

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

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

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

private,protected,public

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

abstract,final,static,synchronized

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

extends,implements

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

new,this,super,instancdof

8. 用于异常处理的关键字:

try,catch,finally,throw,throws

9. 用于包类的关键字:

package,import

10. 其他修饰符关键字:

native,strictfp,transient,volatile,assert

标示符

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

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

定义合法的标示符规则:

1. 数字不可以开头。

2. 不可以使用关键字(想用也可以,在定义类名的时候可以把首字母设为大写使用,但是不建议)

Java中要严格区分大小写。


注意:在其名字是为了提高阅读性,要起得有意义。

Java中的名称规范:

1. 包名:多单词是所有小写,如:aaabbbccc 。

2. 类名,接口名:多单词时单词首字母大写,如:AaaBbbCcc。

3. 变量名和函数名:多单词时第一个单词首字母小写,余下单词首字母大写,如:aaaBbbCcc。

4. 常量名:所有字母大写,多个单词用下划线区分,如:AAA_BBB_CCC

常量与变量

常量表示不能改变的数值

分类:

1. 整数常量:所有整数。

2. 小数常量:所有小数。

3. 布尔型常量:特殊常量,只有两个值,true,false。

4. 字符常量:将数字、字母字符用(' ')标示。

5. 字符串常量:讲一个或多个字符用(" ")标示。

6. null常量:只有一个数值,null。

对于整数Java有三种表现形式。

1. 十进制:0—9,满十进一。

2. 八进制:0—7,满八进一,开头用0表示。

3. 十六进制:0—9,A—F,满十六进一,开头用0x表示,其中A—F=10—15.


我们生活中最常见的是十进制,但二进制才是记录数据的方式。



我们都知道字节是用来存贮数据的,八个二进制字符代表一个字符。



所以我们计算机上的存贮内容都与二进制相关。


进制之间的转换

十进制→二进制

原理:对十进制数进行除以2的运算。

如图所示:



二进制→十进制

原理:二进制乘以2次幂的运算。

如图所示:



二进制→十六进制

原理:四个二进制位就是一个十六进制位。

如图所示:



二进制建→八进制

原理:三个二进制代表一个十进制

如图所示:



二进制的负数表现形式

如-6的二进制就是6的二进制取反+1

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

变量的概念:

内存中的一个区域,该区域有自己的名称(变量名)和类型(数据类型)。

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

将不确定的数据进行存储。

也就是需要在内存中开辟一个空间。

为什么要定义变量?

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

使用变量注意:

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

定义变量的格式:

数据类型,变量名=初始化值。


注:格式是固定的,记住格式,以不变应万变。

如何开辟内存空间呢?

空间名称:变量名,空间类型:数据类型。

就是通过明确数据类型,变量名,数据来完成。

Java语言是强类型语言,对每一种数据都定义了名曲的具体数据类。

在内存中分配了大小不同的内存空间。

数据类型

如图所示:



byte:字节型,8个二进制位(一个字节)

short:短整型,16个二进制位

int:整型,32个二进制位(默认类型)

float:单精度,32个二进制位

double:双精度,64个二进制(默认类型)

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

定义变量的格式

数据类型 变量名=初始值

什么时候定义变量

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


数据类型不一样不能运算,但位数小的类型会从小到大自动提升类型。


如:


byte b = 3 ;

b = b + 2 ;

在byte范围内可一个b赋值。

但是在5给b赋值时会出错,

因为5为32个二进制位,byte只能表示8个二进制位。

可以通过 b =( byte)(
b + 2)


将b + 2的和强制转化成byte类型。

数据的自动提升

byte型,short型,char型→int型

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

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

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

运算符

算数运算符

a++:给变量中的值进行+1的操作并把+以后的是赋给a

在b = a++中

a++:先把a的值赋给b,a再自增。

在b = ++a中

++a:先自增再赋值给b。

在 “ a ” + “ b ”=ab中

“ + ”:字符串的连接号。

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

特殊字符

\n :换行。

\b:退格。

\r:回车键。

\t:制表符。

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

赋值运算符

+=:把符号左右两边数值的和赋给左边

注:+=可以用作加法的复制。

如:

short s = 5 ;

s = s + 6 ;

这样运算会丢失精度,在赋值时会出错。

short s = 5 ;

s += 6;

用 +=符号是一次运算所以会自动转换,

在赋值时不会出错。

比较运算符

== :等等于。(=是赋值,与==不同)

!= :不等于。

逻辑运算符

用于连接布尔类型的表达式。

&:与,只要两边的布尔表达式结果有一个结果为false,结果为false。

两边都为true结果才为true。

true& true = true

true& false = false

false& true = false

false& false = false

| :或,两边只要一个为true,结果就为true。

两边都为false结果为false。

true | true = true

true | false = true

false | true = true

false | false = false

^ :异或,当两边结果都相同为false。

两边不同结果为true。

&&:短路,左边错右边不运算。

注:& , &&和 |,
|| 的特点,



&无论左边是真是假右边都运算。


&&当左边为假时右边不运算。

| 两边都参与运算。

|| 当左边为true时右边不运算。

位运算符(二进制运算符)

<< :就是乘以2的位移数次幂。

>>:就是除以2的移动的位数次幂。

最高部位由原有数据的最高位置而定。

如果最高位数为0,有以后用0补空位。

如果最高位数为1,有以后用1补空位。

>>> :无论最高位是什么,右移后都用0来补位。

练习

对两个整数的值进行互换。

方法一:定义一个未知变量。

int a = 1, b = 2, x;

x= a;

a= b;

b= x;

方法二:不设置变量(但可能会超出int范围)

int a = 1, b = 2;

a= a + b;

b= a - b;

a= a - b;

方法三:技巧型(面试时会用到)

^:一个数异或同一个数两次,结果还是这个数。(可用于加密)

int a = 1, b = 2;

a= a ^ b;

b= a ^ b;

a= a ^ b;

三元运算符

三个元素参与运算的符号。

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

如果true,运算结果是表达式1。

如果false,运算结果是表达式2。

如:

int x = 3, y;

y = ( x > 1 )? 100:200;

输出结果为: y = 100


谢谢大家的观看~!

-----------android培训java培训、java学习型技术博客、期待与您交流!---------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: