前端必学系列-Java基础-Java数据类型转换,运算符

297

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

JAVA数据类型和JS数据类型转换不一样,因为它是强类型语言嘛

类型转换规则

  • 不允许数值类型和布尔类型 转换
  • 整型、实型、字符型数据可以混合运算

类型转换分类

自动类型转换-隐式转换

  • 1.整数转换为小数
  • 2.位数少转换为位数多的
  • 总结而言,就是范围扩大了,精度没有降低

转换规则表

举例

byte a =12;
int b=23; b = a;

强制类型转换-显式类型转换

  • 1.位数多向位数少的进行转换.
  • 2.所有的小数转换为整数
  • 3.其一般形式为:(类型)表达式。

举例

1.将一个字符转换为int,就可以知道它在Unicode表中的顺序 2.反过来,也可以将整数转换为字符型 代码举例:


public class Base {
	public static void main(String[] args) {
		System.out.println("hello, world!");
		int anInt = 3;
		System.out.println("int anInt = 3 的类型:" + getType(anInt));
		// int anInt = 3 的类型:java.lang.Integer
		byte anByte = 3;
		System.out.println("int anByte = 3 的类型:" + getType(anByte));
		// int anByte = 3 的类型:java.lang.Byte
		// ! 强制类型转换的写法
		byte newByte = (byte) anInt;
		System.out.println("byte newByte = (byte)anInt; 的类型:" + getType(newByte));
		// byte newByte = (byte)anInt; 的类型:java.lang.Byte
		char anChar = '糖'; // 注意这里要用单引号
		System.out.println("糖的Unicode编码是:" + (int) anChar);
		// 糖的Unicode编码是:31958
		int codeNum = 31958;
		System.out.println("Unicode编码31958的字是:" + (char) codeNum);
		// Unicode编码31958的字是:糖
	}

	public static String getType(Object obj) {
		return obj.getClass().getTypeName();
	}

}

运算符

运算符-按功能分为7种

  • 1.赋值运算符 广义赋值运算符 +=, -=, *=, /=, %=, &=, |= 一般形式:变量名 运算符=表达式 两侧的类型不一致会进行 自动类型转换 和 强制类型转换
  • 2.算术运算符 双目运算符 +, -, *, /, % 单目运算符 ++, --,+, -
  • 3.关系运算符
  • 4.条件运算符 (条件) ? 结果1: 结果2; 和JS感觉没什么不同
  • 5.逻辑运算符 逻辑与(&)、逻辑或(|)、和逻辑非(!)、&&,|| &、|做运算,先执行符号左右两边,最后进行与、或运算 &&,||做运算,就是按顺序执行,跟JS一样的哦
  • 6.位运算符
  • 7.其他运算符(new, instanceof、强制类型转换运算符) ()、[]、强制类型转换运算符 对象运算符instanceof:判断对象是否是某个类的一个实例化对象,若是, 则返回true,否则返false 内存分配运算符new:为数组和类对象分配内存空间 (后面的课程详细᧿述)

运算符-按照连接操作数分为3种

  • 一元(目)运算符
  • 二元(目)运算符
  • 三元(目)运算符

欢迎大家指出文章需要改正之处~
学无止境,合作共赢 在这里插入图片描述

欢迎路过的小哥哥小姐姐们提出更好的意见哇~~