Java语言基础组成(运算符,关键字,语句if,whle,for)


2.1 关键字

被JAVA赋予了特俗含义的单词




2.2 标识符

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

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

定义合法标识符规则:

1.数字不可以开头。

2.不可以使用关键字。

Java中严格区分大小写。

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

JAVA 中的名称规范:

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

xxxyyyzzz

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

XxxYyyZzz

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

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

XXX_YYY_ZZZ


2.3 注释

注解声明程序

//

/* */

2.4 常量和变量

常量表示不能改变的数值。

JAVA中常量的分类:

  1. 整数常量。所有整数
  2. 小数常量。所有小数
  3. 布尔型常量。较为特有,只有两个数值。true false。
  4. 字符常量。将一个数字字母或者符号用单引号('')标识。
  5. 字符串常量。将一个或者多个字符用双引号标识。
  6. null常量。只有一个数值就是:null.


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

十进制:0-9,满10进1.

八进制:0-7,满8进1.用0开头表示。

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


二进制和十进制之间的转换。

十进制--》二进制。6的二进制。

6/2=3 余0

3/2=1 余1


0110


返回String类型字符串, Integer.toBinaryString(6);将整数转为二进制字符串


二进制--》十进制

原理:每位二进制数乘以他所在位置的2的n次方之和

110

0*2^0+1*2^1+1*2^2

=0+2+4

=6

其他进制转换

4个2进制位代表一个十六进制

3个2进制位代表一个八进制位


负数二进制表现形式

6=0110;

-6:其实就是6的二进制取反+1.

java的整数在内存中占用4个字节,1个字节是8位bit所以6在内存中的形式是:

0000-0000 0000-0000 0000-0000 0000-0110

取反后:   1111-1111 1111-1111 1111-1111 1111-1001  加1

-6            1111-1111 1111-1111 1111-1111 1111-1010


负数的最高位是1,正数的最高位是0


2.5 运算符

算术运算符


1%-5=1

-1%5=-1

赋值运算符



short s=4;

s=s+5;//两次运算,先计算右侧值再赋给左侧,会导致精度丢失,编译失败,5是int类型,s是short类型

s+=5;//一次运算,只做一次赋值运算(自动完成强制转换动作),将两侧和的值赋给s

比较运算符




逻辑运算符




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

^异或:就是和|有点不一样。当true^true=false;

true^true=false;

true^false=true;

false^true=true;

false^false=false;

两边相同结果是false.

两边不同结果是true.


&&,|| 会使代码短路,即运算时前边的条件成立后就不再对后边的条件进行运算。

int x=5;

x>2 && x<3;//有一个为假就为假,因为第一个为true还会继续运算,x<3为假,得出结果,false

x<3 && x>2;//第一个为false,&&运算有一个false,整个结果就为false。x>2将不参与计算.


位运算符



>>> 无符号右移用0补位

>>右移最高位用原数补

^一个数异或 另一个数 再异或一次 会得到他自己

5^7^7=5


三元运算符


表达式?值1:值2

当表达式为true,整个语句的结果为值1

当表达式为false, 整个语句的结果为值2



转义字符

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

\n:换行

\t:制表

\":"号

\b:退格

\r:按下回车键

\\:\号


2.6 语句

判断结构

if(条件表达式)

{

执行语句;

}


if(条件表达式)

{

执行语句;

}

else

{

执行语句;

}


if(条件表达式)

{

执行语句;

}

else if(条件表达式)

{

执行语句;

}

else

{

执行语句;

}


选择结构

switch(表达式)

{

case 数值1:

执行语句;

break;

case 数值2:

执行语句;

break;

......

default:

执行语句;

break;

}

循环结构

代表语句:while,do while,for

while语句格式:

定义初始化表达式


while(条件表达式)

{

执行语句;

}

do while语句格式: 特点是条件无论是否满足,循环体至少被执行一次。


do

{

执行语句;

}while(条件表达式);


for语句格式:


for(初始化表达式 A; 循环条件表达式 B; 循环后的操作表达式 C)

{

执行语句 D;

}

for语句执行顺序:

初始化时 先执行A,再执行B,再执行  D,再执行 C

之后一直执行  B->D->C ,

注:

1.  for里面的两个表达式运行顺序,初始化表达式只读一次,判断循环条件为真

就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件。

重复整个过程,直到条件不满足为止。

2.while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放。而while循环使用的变量在循环结束后还可以继续使用。

3.最简单无限循环格式:while(true),for(;;),无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环。

for(int i=0;i<3;i++){

System.out.println("i="+i);

}

System.out.println(i);//错误: 找不到符号


类型转换

byte b=2;

b=(byte)(b+2);

强制类型转换


b=b+(byte)2;//出错,错误: 不兼容的类型: 从int转换到byte可能会有损失


交换两个变量的值:

方法1:

int x=2,y=3,z;

z=x;

x=y;

y=z;


方法2:

int x=2,y=3;

x=x+y;//如果x和y值非常大,容易超出Int范围。

y=x-y;

x=x-y;


方法3(技巧):


x=x ^ y;//x=2^3;

y=x ^ y;//   y=(2^3)^3      得y=2;    x=2^3;

x=x ^ y;//  x=2^3^2   得x=3;

//实现交换


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值