今天上午睡了一觉让老妈叫醒,要一起去姥姥家,第二天的JAVA之路当然不能忘,果断带着电脑来到了姥姥家,下午又和兄弟出去打的台球,晚上喝了罐啤酒,陪着弟弟重温了一遍蚁人之后开始了晚上学习JAVA之路~
一、关键字
(1)关键字
定义:被Java语言赋予了特殊含义,用做专门用途的字符串(单词)
特点:关键字中所有字母都为小写
(2)Java保留字:现有Java版本尚未使用,但以后版本可能会作为关键字使用。自己命名标记符时要避免使用这些保留字 byValue、cast、future、 generic、 inner、 operator、 outer、 rest、 var 、 goto 、const
二、标识符
(1)标识符:
Java 对各种变量、方法和类等要素命名时使用的字符序列称为标识符
凡是自己可以起名字的地方都叫标识符。
定义合法标识符规则:
由26个英文字母大小写,0-9 ,_或 $ 组成
数字不可以开头。
不可以使用关键字和保留字,但能包含关键字和保留字。
Java中严格区分大小写,长度无限制。
标识符不能包含空格。
注意:在起名字时,为了提高阅读性,要尽量有意义,“见名知意”。
(2)Java中的名称命名规范:
包名:多单词组成时所有字母都小写:xxxyyyzzz
类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ
三、变量
(1)变量的概念:
内存中的一个存储区域
该区域有自己的名称(变量名)和类型(数据类型)
Java中每个变量必须先声明,后使用
该区域的数据可以在同一类型范围内不断变化
使用变量注意:
变量的作用域:一对{ }之间有效
初始化值
定义变量的格式:数据类型 变量名 = 初始化值
变量是通过使用变量名来访问这块区域的
(2)变量的基本类型
布尔类型: boolean 只能取值为true 或者false,不能取值null。不可以0或非 0 的整数替代false和true,这点和C语言不同。
——————————明天再继续补充学习,困了,睡觉————————————
四、自动类型转换和强制类型转换
/*变量之间的运算:(不考虑boolean。剩下:char byte short int long float double)
1、自动类型转换
2、强制类型转换
*/
class test
{
public static void main(String[] args)
{
//1.自动类型转换
int i1 = 12;
short s1 = 2;
int i2 = i1+s1;//自动类型转换,容量小的数据类型自动转换成容量大的数据类型
float f1 = 12.3F;
float f2 = f1 +i2;//自动类型转换
double d1 = f2 + 12.3;//12.3是一个double类型数据,所以转换成double类型。
long l = 12;//将容量小的数据类型可以赋值给容量大的数据类型。
float f3 = 1;
System.out.println(i2);
System.out.println(f2);
System.out.println(d1);
char c1 = 'a';
int i3 = c1 +1;//将char类型自动转换为int类型
System.out.println(i3);
//需要注意的:当char\byte\short之间做运算时,默认的结果为int类型
short ss1 = 12;
byte bb1 = 1;
char cc1 = 'a';
//short ss2 = ss1 + bb1;是错误的
int ii1 = ss1 + bb1;
//char cc2 = cc1 +bb1;
int ii2 = cc1 + bb1;
System.out.println(ii1);
System.out.println(ii2);
//2.强制类型转换:容量大的转换位容量小的数据类型,要使用强制类型转换符:()
//强制类型转换的问题:导致精度的损失
long l1 = 123456L;
//int m1 = l1; 是错误的
int m1 = (int)l1;
System.out.println(m1);
byte by1 = (byte)m1;
System.out.println(by1);//产生了精度损失
//平时常用的字符串,也是一种数据类型:String
String nation = "I am XiJian";
System.out.println(nation);
//字符串与基本数据类型之间的运算:只能是连接运算:+,得到的仍然是一个字符串
String str = "abc";
String str1 = str + m1;
System.out.println(str1);//abc12345
}
}
五、不同进制之间的转换
(1)对于整数,有四种表示方式:
二进制:0,1 ,满2进1.以0b或0B开头。
十进制:0-9 ,满10进1.
八进制:0-7 ,满8进1. 以数字0开头表示。
十六进制:0-9及A-F,满16进1. 以0x或0X开头表示。此处的A-F不区分大小写。
如:0x21AF +1= 0X21B0
(2)在二进制数中,不论正数或者负数都是以补码的形式来存储的,只不过正数的原码、反码、补码都一样,负数的表示应该是原码除符号位以外取反再加1。
(3)二进制转十进制:
(4)二进制与八进制,十六进制之间的转换: