数据类型

1、 标识符

指给Java程序中变量,类,方法,包等命名的规则。

规则
1、标识符必须以字母(A-Z和a-z)、数字(0-9)、下划线“_”、美元符号“$”组成。
2、标识符不能以数字开头,其他部分可以任意组合。
3、Java标识符大小写敏感,且长度无线。

规范
1、类名必须以大驼峰式命名法则。
例如:Person, GoodStudent
2、方法名和变量名以小驼峰式命名规则。
例如:int userName; public void eatFood(){}

2、变量

总结: 1、在方法中声明的变量,必须是赋值之后才能使用。
2、先声明后赋值,没有声明的变量名什么都不是。
3、变量名必须是合法的标识符,采用首字母小写的小驼峰式命名。
4、赋值的数据类型必须和声明变量类型一致。
5、在同一方法中,不能声明多个同名的变量。

3、常量

1、特点
只能赋值一次,赋值之后在不能执行赋值操作。
2、关键字修饰
语法:final 数据类型 常量名
3、注意
命名规范:单词全部大写,多个单词以下划线连接。
4、固定值常量
整数型常量固定值类型为:int类型。
浮点型常量固定值类型为:double类型。

数据类型分类

1、基本数据类型

Java中八大数据类型:
​ 1、数值型:
​ byte,长度:1字节,范围:-27~27-1
​ short,长度:2字节 , 范围:-215~215-1
​ int, 长度:4字节,范围:-231~231-1
​ long,长度:8字节,范围:-263~263-1
​ 2、浮点型:
​ float 长度:4字节
​ double 长度:8字节
​ 3、boolean型:true,flase
​ 4、字符型:char 长度:4字节
字符在内存中的存取
​ 把整数转化为二进制,然后存储在内存中,
​ 把内存中二进制转化为十进制,然后输出
​ 解决:编码表,存---->编码。取---->解码

char类型和int类型之间的联系和区别
联系:
在内存中存储的都是整数!
区别:
a)char类型占用2个字节,int类型占用四个字节。
char存储的数值范围小于int类型存储的数据范围!
b)char类型在内存中存储的是正整数
int类型在内存中可以存储正整数,也可以存储负整数
char类型和int类型之间的转换
char类型转换为int类型

	char c = 'a';
	System.out.println(c + 10);

​ int类型转换为char类型

	int num = 97;
	char c = (char)num;
2、引用类型

​ 数组、String等…

数据类型/转换

1.基本数据类型转换

​ 1.1为什么需要学习基本数据类型转换???
​ java是强类型语言,要求参与“赋值运算”和“算数运算”的数据类型保持一致!
​ 1.2基本数据类型转换的方式有哪些???
​ a)隐式类型转换(自动)
​ b)强制类型转换(手动)
​ 1.3哪些基本数据类型能够相互转换???
​ 八大基本数据类型中,除了boolean类型之外,其余的数据类型都可以相互转换

1、隐式类型转换(自动)
原则:从低字节向高字节提升!
byte --> short --> int --> long --> float --> double
char --> int
赋值运算:
从低字节向高字节提升!
特例:把int类型常量赋值给byte、short和char类型的变量时,属于
隐式类型转换的特例,只需要赋值的结果不超出其表数范围即可
要求:1)赋值的数据必须是int类型的常量
2)赋值的数据不能超出其表数范围
算数运算:
如果两个操作数其中有一个是double类型,另一个操作就会转换为double类型。
否则,如果其中一个操作数是float类型,另一个将会转换为float类型。
否则,如果其中一个操作数是long类型,另一个会转换为long类型。
否则,两个操作数都转换为int类型。
例子:

	byte b1 = 11; byte b2 = 12;byte sum = b1 + b2;  // 错误

2、强制类型转换
1.1什么时候需要强制类型转换???
当隐式类型转换搞不定的时候,就使用强制类型转换!
1.2强制类型转换的语法???
语法:(目标类型)常量或变量;
1.3强制类型转换的注意点
a)强制类型转换的底层实现使什么???详情请看画图
b)使用强制类型转换的时候需要慎重,可能会丢失精度!
c)如何实现对一个小数取整????

		int num = (int)123.45;

​ d)强转的时候,请明确需要强转数据的范围!!

		byte num1 = 10;
		byte num2 = 20
		short sum1 = (short)num1 + (short)num2; // 错误
		short sum2 = (short)(num1 + num2); // 正确

PS:小白学习分享笔记,有不对的地方,请大家指出!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值