Java_day02

1.Java书写规范:注释、命名规范、书写格式

2.标识符(标识符的命名规范)

         标识符:给类、变量、方法名、接口、常量命名是所用的字符序列

         组成部分:英文字母大小写、数字、$、_;

         不能以数字开头;

不能包含特殊字符处$、_;

不能是java关键字;

区分大小写

3.关键字

         关键字:Java给我们定义好的具有特殊意义的单词(public、void、static、class)

4.变量(可变的量)

5.基本数据类型的划分(画图)

         数据类型包括:

                  1*引用数据类型:类、接口、数组、枚举;

                  2*基本数据类型:

                          ·字符型  char :长度0~65535;2个字节;

                           ·布尔型  Boolean :true、false;1个字节

·数值型

         整数型:

  • byte :长度 -128~127 ; 1个字节
  • short:2个字节
  • int :长度 -21亿~21亿;4个字节
  • long:8个字节  数字字面量:long l = 12345678901L;

浮点型

  • float :4个字节;数字字面量:float fl = 1.0F;
  • double :8个字节
  • 范围大小:byte < short < int < long < float < double
  • 自动转换:取值范围为小的转范围大的-----------强制转换:取值范围大的转小的(会损失精度)如:byte、short坑:byte b = 1;

b = b+1; // 1为-int型数字字面量,会损失精度,报错。Short一样

应写为:b = (byte)(b+1);

  • 转换的特殊点

案例一:

//取值范围,如未超出,直接赋值,如果超出,必须转型

byte b2 = 128; //byte b2 = (byte)128;

 

案例二:

int i = 12345678901; // 超出范围,报错

 

案例三:

long l = 12345678901; // 12345678901数字字面量为-int型,超出int类型的取值范围,故报错

long l = 12345678901L; // 12345678901L 数字字面量为long型,不会报错

 

案例四:

Float fl = 1;  // 1为数字字面量int类型,int 转 float 为自动转型,输出结果为1.0

Float fl2 = 1.0; // 1.0数字字面量为double类型,double转float强转

//解决方案一:直接将1.0认为是float类型,在赋值

Float fl2 = 1.0F;

//解决方案二:将1.0将转为float类型后,在赋值;

Float fl2 = (float)1.0;

 

 

6.基本数据类型的那些坑(1.必须先初始化再使用,2.同一个作用域不能重复声明变量,3.数据转型)

        

7.运算符(算数、赋值、关系、逻辑、三目、字符串拼接)

  • 算数运算符:+、-、*、/、&、++、--

Int num = 10;

++num;  //   先自增,再使用;11

Num++ ;  //   先使用,再自增; 10

 

 

预习:位运算、if、switch

  • 面试题一:

Int a = 8;

Int b = (a++)+(++a)+(a*10);

// b = 8 + 10 + 100 = 118

  • 面试题二:

Int i = 0;

i = ++i;

//底层实现 :I = int(i+1)               // 1

 

Int I = 0;

I = i++;

//底层实现:int temp = I ;  I = (int)(i+1); I = temp;            // 0;

  • 赋值运算符: =、+=、-=、*=、/=、&=
  • 关系运算符:==、+=、>、<、>=、<=(关系运算符比较结果都是boolean类型)

面试题一:

Int x = 10;

Int y = 10;

Boolean = flag = ( x = y); //报错,y赋值给x,int类型的x无法赋值给boolean的flag(boolean不兼容其他的数据类型)

 

面试题二:

Boolean b1 = true;

Boolean b2 = false;

 

Boolean b3 = (b1 == b2);//false

Boolean b3 = (b1 = b2); // false;

  • 逻辑运算符:

&与          &&短路与

|非           ||短路非

^ 异或

! 非

//&:前后两个有一个为false,结果都为false;前者为false,还会判断后者

//&&: 前后两个有一个为false,结果都额外false;前者为false,不会判断后者;效率更高

// | :前后两者,有一个为true,结果都为true

// || :前后两者,有一个为true,结果都为true;效率更高

 

// ^ : 前后两者相同,结果为false;

//

  • 三元运算符 or 三目运算符

语法结构:(表达式)?值1:值2;

面试题:

Int a = 5;

 (a < 5) ? 10.9 : 9;  // 9.0

总结:

  1. 前提:值1和值2都是常量或者变量时,值1和值2不同类型,会向上转型成取值范围较大的类型
  2. 值1和值2其中有一个为常量,另一个为变量,要看变量的类型是否包含常量的值

包含就按照变量类型返回

不包含就按常量类型返回

例:

Char c = ‘x’; // 120

Int I = 10;

False  ?  I  :  c;  //  120

False  ?  100 : c;  //  x

False  ?  65536 : c ; // 120;

  • 字符串拼接符

+:两侧为数值,次符号为算数运算符

         如果有一侧为字符串,此符号为字符串拼接符

         1 + 2 +“acb”+ 2+1  // 3acb21

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值