网站制作素材代码,wordpress 安装 windows,百度账号出售平台,网站建设视频万网目录
前言#xff1a;
内置数据类型
类型默认值
示例:
内置数据类型转换
自动类型转换#xff08;隐式类型转换#xff09;#xff1a;
强制类型转换#xff08;显式类型转换#xff09;#xff1a;
隐含强制类型转换#xff1a;
引用类型 前言#xff1a;
…目录
前言
内置数据类型
类型默认值
示例:
内置数据类型转换
自动类型转换隐式类型转换
强制类型转换显式类型转换
隐含强制类型转换
引用类型 前言
Java中的所有数据类型如下图。 内置数据类型
Java语言提供了八种基本类型。六种数字类型四个整数型两个浮点型一种字符类型还有一种布尔型。 整型Integer Types byte8位有符号整数范围为-128到127。short16位有符号整数范围为-32,768到32,767。int32位有符号整数范围为-2,147,483,648到2,147,483,647。long64位有符号整数范围为-9,223,372,036,854,775,808到9,223,372,036,854,775,807。 浮点型Floating-Point Types float32位IEEE 754单精度浮点数。double64位IEEE 754双精度浮点数。 字符型Character Type char16位无符号Unicode字符范围从\u00000到\uffff65535。 布尔型Boolean Type boolean表示真或假的值只有两个取值true和false。
类型默认值
下表列出了 Java 各个类型的默认值
数据类型默认值byte0short0int0long0Lfloat0.0fdouble0.0dcharu0000String (or any object)nullbooleanfalse
示例:
public class Test {static boolean bool;static byte by;static char ch;static double d;static float f;static int i;static long l;static short sh;static String str;public static void main(String[] args) {System.out.println(Bool : bool);System.out.println(Byte : by);System.out.println(Character: ch);System.out.println(Double : d);System.out.println(Float : f);System.out.println(Integer : i);System.out.println(Long : l);System.out.println(Short : sh);System.out.println(String : str);}
}
输出结果为
Bool :false
Byte :0
Character:
Double :0.0
Float :0.0
Integer :0
Long :0
Short :0
String :null
内置数据类型转换
自动类型转换和强制类型转换,隐含强制类型转换是Java中的三种类型转换方式。 自动类型转换隐式类型转换
在满足特定条件下两种数据类型之间的转换可以由编译器自动完成无需显式声明。这种转换需要满足两个条件
数据类型彼此兼容目标类型的取值范围大于源类型。
例如
byte b 3;
int x b;在上述代码中将byte类型的变量b赋值给int类型的变量x。因为int类型的取值范围大于byte类型所以编译器会自动进行类型转换不会发生数据丢失。 强制类型转换显式类型转换
当两种类型彼此不兼容或者目标类型的取值范围小于源类型时需要显式地声明进行类型转换。
例如
int a 1000;
byte b (byte) a;在执行此代码时将会发生数据溢出。由于byte类型的取值范围是-128到127而1000超出了byte类型的取值范围。因此强制类型转换将丢失高位信息结果是b变量将被赋值为 -24这是1000对256取模的结果-24 1000 % 256。
在上述代码中将int类型的变量a强制转换为byte类型的变量b。由于byte类型的取值范围小于int类型进行强制转换可能会导致数据精度的丢失。因此需要在转换时使用(byte)进行显式声明告知编译器进行强制类型转换。
需要注意的是在进行强制类型转换时需要谨慎考虑源类型和目标类型之间的取值范围以避免数据溢出或精度丢失。 隐含强制类型转换
整数的默认类型是int在Java中整数字面值的默认类型是int。例如如果您使用字面值直接初始化一个整数变量编译器会将其默认为int类型。小数默认是double类型浮点型在Java中小数包括小数点和科学计数法表示的默认类型是double。如果要定义一个float类型的小数必须在数字后面加上F或f后缀以明确指示它为float类型。注意如果没有指定F或f后缀编译器会将小数默认为double类型。
例如
int a 10; // 这里的整数字面值10被隐含地当作int类型处理
float b 3.14F; // 这里的3.14被隐含地当作double类型添加F后缀指定为float类型
System.out.println(a a);
System.out.println(b b);
运行结果
a10
b3.14引用类型
在Java中引用类型的变量非常类似于C/C的指针。引用类型指向一个对象指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型比如 Employee、Puppy 等。变量一旦声明后类型就不能被改变了。对象、数组都是引用数据类型。所有引用类型的默认值都是null。一个引用变量可以用来引用任何与之兼容的类型。
在Java中我们可以创建自定义的引用类型比如Site类。在这个例子中先声明了一个名为site的引用变量类型为Site。然后使用关键字new创建一个Site对象并将其地址赋给site变量。
Site site new Site(Runoob);上述代码中Site参考了一个自定义的Site类该类可能包含有关网站的属性和行为方法。在括号中传入的参数Runoob是通过构造函数初始化Site对象的。
值得注意的是在这个过程中Site类必须是已经定义并存在的否则会导致编译错误。
通过这样的方式我们就可以利用引用变量site来操作和访问该Site对象的属性和方法。例如我们可以调用site对象的方法或访问它的属性
site.getName(); // 调用Site对象的getName方法
site.setName(Google); // 修改Site对象的name属性总结一下引用类型的变量在声明时指定一个特定的类型并可以用来引用与之兼容的对象。通过使用引用变量我们可以操作和访问对象的属性和方法。同时需要注意引用类型的默认值为null表示引用变量当前不指向任何对象。