标识符:例如类名 里面每一个字母是字符,双引号引起来的是字符串
可以是其他字符, 不是数字开头 不能空格等等,和其他语言差不多
字符,数字 下划线 和$组成 不能数字开头 严格区分大小写 ,不能使关键字 保留字
Eclipse中紫颜色的就是关键字
要反应出起作用 别是abc
关键字:
goto会造成程序逻辑混乱,我们把他定义保留字并不使用
变量:程序当中数据临时存放场所,解决数据存储问题,存储到内存中
通过三个元素描述变量:变量类型,变量名,变量值
满足标志符命名规则 符合小驼峰法 简单,语义化 长度没有限制
类命名规则Pascal命名法规则
当类名一个单词 首字母大写
多个单词 每一个首字母都大写
就是组成类名的单词首字母都大写
变量类型(数据类型):
分成基本数据类型和引用数据类型
引用包含:类 接口 数组
基本数据类型:三大类 数值型 字符型 布尔型
数值型: 整形byte short int long 和浮点型 float double
字符型
布尔型 :true 和false
变量值可以是字面值也可以是另外一个变量
整形字面值:十进制 八进制 十六进制
八进制0开头
十六进制0X或者0x开头
整形字面值:123,023,0x1235,0X14c,0x1abcL(L表示长整形,L可以大小写都可以)
变量声明:数据类型 空格 变量名;
例:int n;
long count;
赋值:使用"="赋值
int n;
n=3;
int n=3; 变量初始化
int octal=037;
long longNumber = 0xa2cdf3ffL;
short shortNumber=123;
byte b = 10;
浮点型字面值:
整形末尾什么都不写默认int字面值
如果浮点型什么后面都不写就是double,也可以加入d和D
例如:123.43D和123.43d
单精度:加上f或者F
23.4f或者23.4F
必须float f = 1234.329f;
不加f是错的
数值范围小的可以给大的
大的不可以给小的
输出System.out.println("f="+f);
变量存储:
数据类型分为基本数据类型和应用数据类型
应用类型可以是数组和类等
类定义的变量叫做对象
按照作用范围:类级,对象实例级,方法级,块级
方法级:又叫做局部变量
他们是内存中划分出来的区域
我们在主方法存储的局部变量是存在栈中的
int n=100;
首先会在栈中开辟int大小空间
开辟好了,我们把100存到开辟空间中
在这里我们把n看做100所在内存空间的别名
字符型字面值:单引号括起来 必须只有一个字符
定义字符型变量 char a ='a';
char ch=65;这是可以的但是输出会出现A
因为编程Ascall码
char 0-65535
Unicode编码,统一码,万国码
支持世界上所有字符集
char c = '\u005d';
就是在值前面加\u
*其实字面值是常量一种
布尔类型字面值:true和false
java不允许布尔有0和1
boolean b=true
字符串比较特殊,本身并属于基本数据类型,它是类
字符串:""引起来的0个或多个字符
String s="";
String s3 = "\u005d\u005f";
字符串包含字符
不换行就是把ln去掉
ln这个本身代表了换行
\r回车 \n换行
不一样的 回车光标会回到最开始
换行会换到下一行
''括起来的都是字符,用+会把Acall码加起来
或者最前面加一个""强行转换
double d=1.23E5;
float f=1.23e5f;
double d1=.2;
这些都可以
类型转换分为自动类型转换和强制类型转换
自动:long n=253;
强制:char ch=(char)65536;
强制会引起数据丢失的
自动类型转换又叫做隐式类型转换
实线表示无信息丢失数据类型转换
虚线表示可能出现精度丢失
箭头走的全是自动转换
反方向都是强制类型转换
强制转换:如果A类型数据表示范围比B类型大,则将A类型的值赋值给B类型,需要强制类型转换
double d=123.4;
float f =(float)d;
常量:
final int N=5;
用final关键字定义常量
一般常量用大写表示
final double PI=3.14;
final double MIN_VALUE=0;