JavaSE 数据类型与变量的认识(对比c语言)

JavaSE 数据类型与变量的认识

字面常量

一、字面常量的分类:

  1. 字符串常量:由""括起来的。
  2. 整形常量:直接写的数字(没有小数点),比如:100、1000
  3. 浮点数常量:直接写的小数,比如:3.14、0.49
  4. 字符常量:由 单引号括起来的当个字符如:‘A’、‘1’
  5. 布尔常量:只有两种,true和false
  6. 空常量:null

数据类型

一、分类:基本数据类型和引用数据类型
二、字符串、整形、浮点型、字符型以及布尔型,在Java中都称为数据类型。
基本数据类型有四类八种

  • 四类:整型、浮点型、字符型以及布尔型
  • 八种:
    在这里插入图片描述
    注意:
  • 不论是在16位系统还是32位系统,int都占用4个字节,long都占8个字节(这里区别于C语言,长度不分32位还是64位)
  • 整形和浮点型都是带有符号的,整型默认int型,浮点型默认double
  • 字符串属于引用类型
  • 字符型的内存占用与C语言不一样,占2个字节

变量

定义变量的基本规则与C语言类似:
数据类型 变量名 = 初始值;
一、整型变量

//输出int、long、、short、byte型的最大、最小值
System.Out.println(Integer.MIN_VALUE);
System.Out.println(Long.MAX_VALUE);
System.Out.println(Short.MAX_VALUE);
System.Out.println(Byte.MIN_VALUE);
  • 注:int的包装类型为 Integer。long,short,byte同理
  • 特别注意:长整型变量的初始值后加L或者l,推荐加L
  • 字节型byte在任何系统下都占1个字节,范围是:-128 ~ 127
    使用哪种类型就像挑选衣服尺码一样,选择最合适的。

二、浮点型变量

  • 在 Java 中, int 除以 int 的值仍然是 int(会直接舍弃小数部分)。要得到小数,需要强制转换,用法同c。
  • double 类型的内存布局遵守 IEEE 754 标准(和C语言一样)
  • 通常都用double,用float记得加上f/F

三、字符型变量

  • 计算机中的字符本质上是一个整数. 在 C 语言中使用 ASCII 表示字符, 而 Java 中使用 Unicode 表示字符。 因此java中一个字符占用两个字节, 能够表示的字符种类更多, 包括中文。(执行javac时要输出中文,加上 -encoding UTF-8 选项即可)

四、布尔型变量

  • 特别注意:Java 的 boolean 类型和 int 不能相互转换, 不存在 1 表示 true, 0 表示 false 这样的用法。因此在while()里不能用数字了

五、类型转换
1.隐式:数据范围小的转为数据范围大的时会自动进行。
2.显式:强制转换。数据范围大的到数据范围小的。


六、类型提升

  1. int与long之间:int会被提升为long
  2. byte和byte之间:
byte a = 10;
byte b = 20;
byte c = a + b;
System.out.println(c);
// 编译报错
Test.java:5: 错误: 不兼容的类型:int转换到byte可能会有损失
	byte c = a + b;
			  ^

结论:

  1. 不同类型的数据混合运算, 范围小的会提升成范围大的.
  2. 对于 short, byte 这种比 4 个字节小的类型, 会先提升成 4 个字节的 int , 再运算

七、字符串类型
与c++类似,可以直接用+号拼贴。
int转String:String str1 = String.valueOf(num);
String转int:int num = Integer.parseInt(str);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值