标识符,关键字,变量,数据类型 转换

1.什么是标识符:标识符是程序员用于给变量、常量、类、函数(方法)、属性等命名的名字。

2.标识符命名规则

①标识符只能由数字、字母、下划线、“—”、美元符号“$”组成,不能含有其他符号。
②标识符不能以数字开头。
③java关键字和保留字不能作为标识符。
④标识符严格区分大小写。
⑤标识符理论上没有长度限制。

关键字指的是java官方已经使用过的特殊的拥有特殊含义的词。
例如说:public static void main  class 
关键字是编程语言事先定义的,有特殊意义的单词,关键字不能用作标识符
保留字指的是java官方虽然目前没有使用,但已经占有了,占有的目的是方便
未来使用,禁止用户使用。例如:goto 

3.① 标识命名必须望文生义

		 		例如: int age = 20;
     			      String name = "张三";
			   反例:  String aabb = "男";
		望文生义,例如:Student表示学生,User 表示用户

② 遵循驼峰命名法

	2.1 类名、接口名每个单词的首字母大写,之后其它字母全部小写;
	例如:UserInfo
	2.2变量名、方法名第一个单词的首字母小写,后面每个单词首字母大写;
	例如:getName
	3.3常量名全部大写,单词和单词之间使用“_”衔接,为了表示清楚含义,
	不要怕单词长,例如	INT_MAX_VALUE 则表示 int 类型最大值


驼峰命名法:UserInterface
    SE  :SystemEnginer

变量

1.变量概念:其值可以改变的量。

变量本质是对内存空间的引用。将数据放到内存当中,给这块内存空间起一个名字,这就是变量。

这块空间有名字、有类型、有值,这也是变量必须具备的三要素

int age = 20;

2.变量的定义:

数据类型 变量名;

数据类型 变量名 = 值;

变量的赋值用=

1.定义一个变量而不赋值
 int i;
 i = 10;
2.变量的定义和赋值合并到一步完成

 int i = 10;

3.一次可以定义多个相同类型变量
int j,k,l;
j = 10;
k = 20;
l = 30;

4.一次可以定义多个相同类型变量并且为最后一个变赋值
String a,b,c = "test";

3.变量分类:局部变量和成员变量(根据作用域划分,口诀:出了大括号就不认识了)
成员变量的默认值

3.1 成员(全局)变量

  {} 大括号表示界限, { 左大括号表示开始,而 } 右大括号表示结束

3.2 局部变量

  3.2.1 方法传入的值
	3.2.2 方法内部定义的变量
	3.2.3 块内部定义的变量 
	3.2.4 异常块内部定义的变量

4.在同一作用域不允许出现变量命名的冲突

5.不同作用域的就近原则

6.常量

数据类型分3种:

1.基本数据类型

1.1 整数类型

 	 byte   字节   1个字节  8位  [-128,127]
	short  短整型 2个字节  16位  
	int    整型   4个字节  32位
	long   长整型 8个字节  64位

1.2 浮点类型

    float  单精度 4个字节  32位
	double 双精度 8个字节  64位

1.3 字符类型

  char  字符型  2个字节   16位  

1.4 布尔类型

  boolean 布尔类型 1个字节 8位

2.引用(对象,类)类型

String 字符串类型

3.复合类型

  数组类型 

4.全局变量的默认值:

   类型  默认值
4.1 byte   0
4.2 short  0
4.3 int    0
4.4 long   0L
4.5 float  0.0F
4.6 double 0.0D
4.7 char   ''   ascii: 0
4.8 boolean false

引用类型   null

数据类型转换

1.隐式(自动)转换

1.1 int 整数型  字面量没有超出 byte,short,char 的取值范围,
可以直接将其赋值给
byte,short,char 类型的变量

1.2 小转大
	
1.3 byte,short,char做计算时,先转成int再做计算

1.4 小与大做计算,结果一定是大类型


1.整数型字面量没有超出 byte,short,char 的取值范围,可以直接将其赋值给
 byte,short,char 类型的变量
 
     byte b =  -1;// 1 是int 类型
     byte b2 = 2;
     byte b3 = 100;
     byte b4 = 100;

    short s = 9999;

    char c = 1;

   2.小转大也是隐式(自动)转换
   
    int i = b;

    s = b;

    i = c;

    //3. byte,short,char做计算时,先转成int再做计算

    int k = b + b2;
    int  l = s + b;

    //4.小与大做计算,结果一定是大类型
    long l2 = 45;//8位
    int i3 = 10;//4位
    long l3 = l2 + i3;


	  任何类型与String做连接(+)运算时,结果一定是字符串


	  在代码中,如果直接写出整型数字,默认认为是int类型。
	  在代码中,如果直接写出带小数点的数字,默认认为是double类型。

2.显式(手动,强制)转换

   大转小

   long l2 = 45;
int i4 = (int)l2;

在值的前面写一对(),()的内部写上要转换的目标类型。
强制转换有可能损失精度

short s1 = 1; s1 = s1 + 1;有什么错?

char 类型变量能不能储存一个中文的汉字,为什么?
float f = 1.0 有什么错?
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值