🥰🥰🥰来都来了,不妨点个关注叭!
👉博客主页:欢迎各位大佬!👈
哈哈哈~欢迎来到第二关!本期内容较为轻松,比初识Java相比,还是上一节最轻松hhh,一起继续来探索吧。
1.变量
1.1变量的定义
变量是对于这些经常改变的内容,数据类型是用来定义不同种类变量的(接下来具体介绍数据类型)
定义变量的语法格式为:
数据类型 变量名 = 初始值;
int m = 20; //定义整形变量a,a是变量名也称为标识符,该变量中放置的值为20
变量在使用之前必须要赋初值,否则编译报错!
1.2变量在哪分配?
通过上图可以清楚看到变量a在存储器上分配内存
long a = 10L;//一般加大写L,与整型int好区分。
2. 数据类型
2.1常见的8种数据类型
数据类型分为:1.基本数据类型 2.引用数据类型
2.2字节码
特点:可移植性强
如何在代码中访问int的最大最小值呢?
System.out.println(Integer.MAX_VALUE);//访问int最大值
System.out.println(Integer.MIN_VALUE);//访问int最小值
System.out.println(Long.MAX_VALUE);//访问long最大值
System.out.println(Long.MIN_VALUE);//访问long最小值
Integer为包装类,如何理解呢?包装类为基本数据类型对应的类类型,简单理解为基本数据类型的加大版,不同基本数据类型的包装类不同,如:
1)int类型包装类为Integer
2)long类型包装类为Long
3)short类型包装类为Short
这里需要把byte的最大值和最小值记一下,byte最大值为127,最小值为-128
2.3 引用数据类型
引用数据类型:String、数组、接口
2.3.1了解字符串
在C语言中,此时m仅仅是一个指针变量,类型是一个char*类型的,是没有字符串概念的!
char *m = "hi";
在Java中,String是全新数据类型,是字符串类型,且任何东西拼接字符串也是字符串
String a = "hi";
注意:在Java中是没有指针,所以也拿不到地址,也没有所谓的字符串以\0结束
2.3.2两类类型相互转化
基本数据类型和引用数据类型可以相互转化
类型int->String
String ret = String.valueOf(a);
变量a为int类型
(这里只是简单提一下,学到后面,我们就能更加清楚啦!在这里提一句,我们可以通过点击左下角Structure 帮助手册 进一步了解)
2.3.3基本数据类型转换
1)自动提升
i) byte+byte类型
byte a = 10;
byte b = 20;
byte c = a + b;
//小于4个字节在运算的时候会提升为4个字节。
以上代码会报错,PU通常是按照4个字节为单位从内存中读写数据,实现方便, 诸如 byte 和 short这种低于 4 个字节的类型, 会先提升成 int, 再参与计算。
byte 和 byte 都是相同类型, 但是出现编译报错 虽然 a 和 b 都是 byte, 但是计算 a + b 会先将 a和 b 都提升成 int, 再进行计算, 得到的结果也是 int。
正确的写法:
byte a = 10;
byte b = 20;
byte c =(byte) a + b;
i) int+long类型
int m = 10;
long n = 20;
int h = m + n; // 编译出错: m + n ==> int + long--> long + long 赋值给int会丢失数据
long h = m + n; // 编译成功:m + n ==> int + long--->long + long 赋值给long
2)类型转换
本期内容注意:
1)小数其实没有精确的,只能说精确到某一位
double num = 1.1;
(num*num=1.2100000000002)
2)单精度的写法
float num = 1.0f;
float num = 1.0F;
//两种写法都可以
3)字符集和字符编码
字符集:指定若干字符组成的一个集合,通常这个集合具有一定的规模和合理性。
字符编码:把字符集中的字符映射为指定集合中某一对象(如数字系统中表示为某个特定二进制数)
本期内容就讲解到这里啦!继续努力哦,加油加油!