加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java基础(1)

发布时间:2020-12-15 05:35:49 所属栏目:Java 来源:网络整理
导读:一、基本数据类型的赋值 整数的赋值 注意1:Byte和short的赋值不能超过各自的取值范围。 注意2:取值类型默认为int。 注意3:为long类型赋值时,如果超过int的取值范围应该在后面加L。 Byte b =127; Short s =32767; int i =30000; long l1 =400000; long l2

一、基本数据类型的赋值

  1. 整数的赋值

注意1:Byte和short的赋值不能超过各自的取值范围。

注意2:取值类型默认为int。

注意3:为long类型赋值时,如果超过int的取值范围应该在后面加L。

Byte b=127;

Short s=32767;

int i=30000;

long l1=400000;

long l2=22222222222L;

?

  1. 浮点数的赋值

注意1:浮点数常量的默认?????? 数据类型是double,如果要为float赋值需要在后面添加f。

注意2:double可以直接在后面赋值,也可以在后面加d(一般不加)。

注意3:double要赋值为整数时,默认的数据类型还是int。

float f=1.2f;

double d=1.2;

?

  1. Char赋值

注意1:为char赋值的时候没有空字符,也不可以在’’中赋值多个字符

注意2:可以直接赋值中文

注意3:可以直接赋值整数变量(0--65535)

char c1=‘a‘;

????? char c2=‘张‘;

????? char c3=1233;

?

  1. Boolean赋值

Boolean的赋值只能是true和flase

boolean bool=true;

?

二、强制类型数据转换

  1. 强制数据类型转换可能引起精度的丢失。
  2. 高取值范围的数据强制转换为低取值范围的数据,如果转换前的数据超出转换后的数据类型的取值范围,那么会轮回。
  3. Char数据类型本质上是一个整数。所以char和int数据类型可以相互转换

Char-àint可以进行自动类型转换

Int--àchar则必须进行强制类型转换

注意:在做强制类型转换时,一定要考虑取值范围和精度问题。

三、补码和计算的封闭性

1.补码:按位取反+1.

2.计算封闭性的原理

(1)Java是种强类型的语言。定义的变量是什么样的数据类型,那么在内存种分配的空间大小就一定是所定义的内存大小。

(2)计算的结果也是同样的数据类型

(3)补码的封闭性:计算机内部的计算,都是以二进制来进行的。

以byte的数据类型为例:

byte num=(byte)129;

????? System.out.println(num);

结果为-127

129超出了byte的取值范围,计算的时候会轮回:

127+1=-128

128=-128

128+1=-128+1=-127

?

四、运算符和表达式

  1. 运算符就是数学中的“+-*/”等等
  2. 表达式:由运算符和数字组合而成的。
  3. Java中算术运算的特点

(1)??? 必须是相同数据类型的数据参与运算;所得到的结果也是相同的数据类型。

(2)??? 如果表达式中的数据类型不一致,那么会进行自动数据类型转换,由低取值范围向高取值范围转换,所得到的结果也是转换后的数据类型。

(3)??? Java中的计算具有封闭性

(4)??? Byte,short,char的计算,只是表面现象,其内部还是以int类型的数据进行计算。所以他们的数据进行计算得到的将结果应该是int数据类型。

注意:如果是两个变量进行计算,那么这个计算是在程序运行时进行的

如果两个常量进行计算,那么这个计算是在程序编译时就会进行。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读