Java中的变量与常量、基本数据类型及其类型转换

常量:在程序执行的过程中其值不可以发生改变。
常量分为:字面值常量和自定义常量
这就是一个值,这个值本身,我们可以叫它常量。

  • 整型常量:123
  • 实型常量:3.14
  • 字符型常量:’a’
  • 逻辑常量:true、false
  • 字符串常量:”helloworld”

另一个说法是;表示不可变的变量,这也叫做常量,在语法上讲,加上final关键字来修饰某个变量, 只要赋值后,就不能改变了,也就不能在对其进行赋值了,例如;

  • final int i=1;

那么这个i的值是不能再改变了的,只能是1,所以是不可变的变量。(i是一个int类型的变量,变量值本身是可以重新赋值被改变的,但是现在加上了final,它就是一个最终的了,所以是一个不可变的变量。)
变量:在程序执行的过程中,在某个范围内其值可以发生改变的量。

  • int a=10;

  • a=”briup”;

变量定义格式:数据类型 变量名=初始化值。
变量值是内存中的一块地址,初始化值代表的是在这个地址中的一小块区域。所以,使用变量名来访问这块区域,因此访问每一个变量名之前都应先声明该变量,然后在对其进行赋值。

基本数据类型:分为整型、浮点型、字符型、布尔型。

  • 整型:byte short int long
  • 浮点型:float double
  • 字符型:char
  • 布尔型:boolean

除八种基本数据类型外,还有三种引用数据类型:类、接口、数组

数据类型转换:分为默认转换和强制转换。

默认转换
- byte short char 此三种数据类型不能相互转化。
- char-int-long-float-double 此五种数据类型可以相互转化。

强制转化:目标类型 变量值=(目标类型)(被转换的数据);

变量和常量只有先声明后才能使用。
转换规则:从存储范围小的类型到存储范围大的类型。
具体规则为:byte→short(char)→int→long→float→double
也就是说 byte 类型的变量可以自动转换为 short 类型,示例代码:
byte b=10;
short sh=b;
这里在给sh赋值时,JVM首先将b的值转换成short类型然后再赋值给sh。
当然,在类型转换的时候也可以跳跃,就是byte也可以自动转换为int类型的。
强制类型转换
强制类型转换,也称显式类型转换,是指必须书写代码才能完成的类型转换。该类类型转换很可能存在精度的损失,所以必须书写相应的代码,并且能够忍受该种
损失时才进行该类型的转换。
转换规则:从存储范围大的类型到存储范围小的类型。
具体规则为:double→float→long→int→short(char)→byte
语法格式为:(转换到的类型)需要转换的值
double d=3.14;
int i=(int) d;
注意问题:强制类型转换通常都会存储精度的损失,所以使用时需要谨慎。
浮点型默认为双精度double
整型默认为int

原文地址:https://www.cnblogs.com/java-log/p/7301235.html