Java 变量和数据类型
什么是变量 Java?
变量在 Java 是一个数据容器,用于存储 Java 程序执行。每个变量都被分配了数据类型,指定它可以容纳的值的类型和数量。变量是数据的内存位置名称。 Java 变量主要有三种类型:本地变量,实例变量和静态变量。
为了在程序中使用变量,你需要执行 2 个步骤
- 变量声明
- 变量初始化
如何在 Java?
要声明变量,必须指定数据类型并赋予变量唯一的名称。
其他有效声明的例子包括
int a,b,c; float pi; double d; char a;
如何初始化变量 Java?
要初始化变量,必须为其分配一个有效的值。
其他有效初始化的示例包括
pi =3.14f; do =20.22d; a=’v’;
您可以结合变量声明和初始化。
示例:
int a=2,b=4,c=6; float pi=3.14f; double do=20.22d; char a=’v’;
变量类型 Java
In Java中,变量有三种类型:
- 局部变量
- 实例变量
- 静态变量
1)局部变量
局部变量是在方法体内声明的变量。
2)实例变量
实例变量的定义不带 static 关键字。它们在任何方法、构造函数或块之外声明。这些变量特定于类的每个实例,称为实例变量。
3)静态变量
静态变量只在类加载时初始化一次,在程序开始执行之前。这些变量在类的所有实例之间共享,并且在任何实例变量之前初始化。
变量类型 Java 与例子
class Guru99 { static int a = 1; //static variable int data = 99; //instance variable void method() { int b = 90; //local variable } }
什么是数据类型 Java?
数据类型 Java 被定义为分配可存储在变量或标识符中的不同大小和类型的值的说明符。 Java 拥有丰富的数据类型。 Java 可以分为两个部分:
- 原始数据类型 :- 包括整数、字符、布尔值和浮点数
- 非原始数据类型 :- 其中包括类、数组和接口。
原始数据类型
原始数据类型是预定义的,可在 Java 语言。原始值不与其他原始值共享状态。
有 8 种基本类型:byte、short、int、long、char、float、double 和 boolean
整数数据类型
byte (1 byte) short (2 bytes) int (4 bytes) long (8 bytes)
浮点数据类型
float (4 bytes) double (8 bytes)
文本数据类型
char (2 bytes)
合乎逻辑
boolean (1 byte) (true/false)
数据类型 | 默认值 | 默认尺寸 |
---|---|---|
字节 | 0 | 1字节 |
短 | 0 | 2字节 |
INT | 0 | 4字节 |
长 | 0L | 8字节 |
浮动 | 0.0f | 4字节 |
翻番 | 0.0d | 8字节 |
布尔 | false | 1 bit |
坦克 | ‘\u0000’ | 2字节 |
要记住的要点:
- 所有数字数据类型都是有符号的(+/-)。
- 数据类型的大小在所有平台上保持不变(标准化)
- char 数据类型 Java 是 2 个字节,因为它使用 UNICODE 字符集。凭借它, Java 支持国际化。UNICODE 是涵盖世界上所有已知文字和语言的字符集
Java 变量类型转换和类型强制转换
一种类型的变量可以接收另一种类型的值。这里有两种情况——
情况1) 容量较小的变量被分配给另一个容量较大的变量。
这个过程是自动的,非显式的被称为 转化
情况2) 容量较大的变量被分配给另一个容量较小的变量
在这种情况下,您必须明确指定 类型转换运算符。这个过程称为 类型转换。
如果您没有指定类型转换运算符,编译器会给出错误。由于此规则由编译器强制执行,因此它使程序员意识到他即将进行的转换可能会导致一些数据丢失,并防止 意外损失。
示例:理解类型转换
步骤1) 将以下代码复制到编辑器中。
class Demo { public static void main(String args[]) { byte x; int a = 270; double b = 128.128; System.out.println("int converted to byte"); x = (byte) a; System.out.println("a and x " + a + " " + x); System.out.println("double converted to int"); a = (int) b; System.out.println("b and a " + b + " " + a); System.out.println("\ndouble converted to byte"); x = (byte)b; System.out.println("b and x " + b + " " + x); } }
步骤2) 保存、编译并运行代码。
预期产量:
int converted to byte a and x 270 14 double converted to int b and a 128.128 128 double converted to byte b and x 128.128 -128