java-数据结构


标识符号定义
  1. 数字,字母,下划线 美元符号
  2. 数字不开头
  3. 长度不限
  4. 大小写敏感
  5. 保留字符以及特殊常亮
类型名 意义
boolean 布尔类型
byte 字节类型
char 字符型
double 双精度浮点
float 单精度浮点
int 整型
long 长整型
short 短整型
null
1
2
3
int a = 12; // 设置 a 为整数类型,并给 a 赋值为 12
String str = "Hello, OI-wiki"; // 声明字符串变量 str char ch = 'W';
double PI = 3.1415926;

final 关键字

final 含义是这是最终的、不可更改的结果,被 final 修饰的变量只能被赋值一次,赋值后不再改变。

1
final double PI = 3.1415926;

数组

1
2
3
4
5
// 有十个元素的整数类型数组 
// 其语法格式为 数据类型[]
变量名 = new 数据类型[数组大小]
int[] ary = new int[10];
int[] num = {1, 2, 3, 4};
1
2
3
4
5
// 最为简单的构造一个字符串变量的方法如下 
String a = "Hello";
// 还可以使用字符数组构造一个字符串变量
char[] stringArray = { 'H', 'e', 'l', 'l', 'o' };
String s = new String(stringArray);

类型转换

1. 自动类型转换(隐式类型转换)

自动类型转换发生在小范围数据类型(如 byteshortcharint 等)的值被赋值给大范围数据类型(如 longfloatdouble 等)的变量时。这种转换是自动进行的,不需要程序员显式地指定。

1
2
3
4
5
6
7

int num = 100;  

double doubleNum = num;

// 自动类型转换

在上面的例子中,int 类型的 num 被赋值给 double 类型的 doubleNum 变量,发生了自动类型转换。

2. 强制类型转换(显式类型转换)

当试图将大范围数据类型的值赋给小范围数据类型的变量时,会发生数据丢失,因此 Java 不允许这种自动转换。但如果你确实需要这样做,可以通过强制类型转换来实现,但请注意这可能会导致数据丢失或精度降低。

示例

1
2
3
4
5
6
7
8
double doubleNum = 100.99;
int intNum = (int)doubleNum;
// 强制类型转换  System.out.println(intNum);
// 输出 100
采用 integer 类进行禁止的操作。
String str="string";
int num= integer.parseint(s);

在上面的例子中,double 类型的 doubleNum 被强制转换为 int 类型的 intNum。由于 int 类型不能存储小数部分,因此 doubleNum 的小数部分被丢弃,只保留了整数部分。

注意事项

  • 在进行强制类型转换时,请确保转换是安全的,以避免数据丢失或意外的程序行为。

  • 当在数值表达式中使用 byteshort 和 char 类型时,Java 会自动将它们提升为 int 类型。

  • 使用强制类型转换时,通常建议在转换前检查数值是否在目标类型的表示范围内,以避免溢出。

  • 在处理 float 和 double 类型时,请特别注意它们之间的自动类型转换可能导致精度损失(特别是从 double 转换为 float)。


文章作者: K1T0
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 K1T0 !
  目录