首页 > 其他分享 >自动类型转换

自动类型转换

时间:2023-08-09 11:25:13浏览次数:29  
标签:类型转换 short int double char 自动 byte public

自动类型转换

java可以从低精度自动转换到高精度

  1. byte——short——int——long——float——double
  2. char——int——long——float——double
public class AutoConvert{
	public static void main(String[] args) {
		int num = 'a';
		double d = 80;
		System.out.println(num);
		System.out.println(d);
	}
}

运行截图

image-20230809102031447

强制类型转换

public class ForceConvert{
	public static void main(String[] args) {
		/*强制类型转换会导致精度损失,使用时应当注意*/
		int i = (int)1.9;
		System.out.println(i);//1
		int x = (int)(10*1.9*1.2+5)//只对最近的操作数有效
	}
}

注意事项

  1. 多种数据类型混合运算时,系统首先自动将所有数据转换成容量最大的那个数据类型,在进行计算

  2. 精度大的赋给精度小的会报错

  3. (byte,short) 和char不可以发生自动转换

  4. byte short char三者之间可以相互运算,在计算时首先转换成int类型

  5. Boolean 类型不会参与类型的自动转换

  6. 自动提升:有最大类型,结果是最大类型

public class AutoConvertDetail{
	public static void main(String[] args) {
		int n1 = 10;
		// flota = n1 + 1.1 //此处错误,因为系统把等号右边转为double类型,但double不可以转换为float
		double d1 = n1 +1.1
		float d2 = n1 +1.1F

		// 精度大的赋给精度小的会报错
		// (byte,short) 和char不可以发生自动转换
		byte b1 = 10;//正确,赋值时在byte类型的范围里内不报错
		byte b2 = n1;//错误同上
		char c1 = b1;//byte 不可以转换为char
		short s = b1 //short 不可以转换为char类型
        //byte short char三者之间可以相互运算,在计算时首先转换成int类型
		byte b3 = 1;
		short s2 = 1;
		char c3 = 'a';
		int num = b3 + s2 + c3;
	}
}

标签:类型转换,short,int,double,char,自动,byte,public
From: https://www.cnblogs.com/ygcDiary/p/17616333.html

相关文章

  • nginx配置自动解压.js.gz功能
    1.修改nginx配置文件#on为启用,off为关闭gzipon;#Nginx的动态压缩是对每个请求先压缩再输出,这样造成虚拟机浪费了很多cpu,解决这个问题可以利用nginx模块GzipPrecompression,这个模块的作用是对于需要压缩的文件,直接读取已经压缩好的文件(文件名为加.gz),而不是动态压缩,对于不......
  • uniapp自动引入 vue3(ref, toRefs, reactive...), uni-app
    1.装包npmiunplugin-auto-import--save-dev2.在项目的vue.config.js中引入并使用import{defineConfig}from'vite'importunifrom'@dcloudio/vite-plugin-uni'importpathfrom'path'//----导入插件----importAutoImportfrom......
  • 每天电脑自动开关机
    前言:这是之前就发过的文章,但是经常搞忘了在哪里,并且有2篇文章比较重复,所以我将这两篇文档整理在一起,方便大家查阅。通过命令让电脑自动关机windows7命令:每天关机命令at02:30/every:M,T,W,Th,F,S,Sushutdown-s-f-t30这里系统将在每天的2:30自动关机,every代表每个,M,T,W......
  • 自动填充
    对于添加和更新的时间设置自动填充时间。在表中添加两个字段为time类型,为了让实体类能够映射,采用下划线格式,对照实体类驼峰命名。(需要在yml中添加驼峰支持)创建属性后需要添加注解表示在添加和更新后更新时间(更新只用更新updaTime) 然后为他们创造处理器,添加@Component注解注......
  • 记录--前端实用小技巧: 自动合并的网络请求
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助我们经常会遇到一个场景,比如在一个列表中批量获取用户的信息。 如果我们一次性往后端发送几十条请求是非常愚蠢的事情。此时我们就要学会如何使用批量获取的逻辑。但是批量获取有一个问题就是,我需要在用户列表......
  • WEB自动化-框架-关键字封装
    所谓的关键字驱动,本质就是函数封装的过程。⾃动化当中的封装⽬的是:拆分重复的⾏为代码和测试数据,增加可维护性和复⽤性 对于某些用例都需要执行的功能,比如登陆、切换环境、登陆后进入大模块等。像这样的前置功能或者后置功能写到一个用例里面,其他用例就不能使用了。所以需要配......
  • Unittest + python + Selenium + HTMLTestRunner 自动化测试
      1.测试框架参数说明 base/base_page.py对selenium方法进行二次封装 config/setting.py基础信息 pageobject/把每个页面的页面元素和操作,放在一个py文件中。测试用例只需引用对应页面的操作 report存放测试报告的 runcase/start_ca......
  • 记录部署lnmp环境的部署网站,自动生成脚本
    网站:https://oneinstack.com/auto/可以选择版本,扩展的插件,很方便,适合快速部署lnmp环境。......
  • appium + python | UI 自动化测试
     tradeBtns=(By.ID,"com.hexin.plat.android.MinShengSecurity.test:id/title")self.driver.find_elements(tradeBtns)[3].click()不支持以上语法。......
  • windows10使用Powershell脚本自动初始化磁盘
    如下为脚本内容:1首先使用get-disk命令检测未被初始化的磁盘,磁盘为被初始化属性会为raw,使用rawdisk变量获取未被初始化的磁盘。2判断rawdisk是否有值,如果有,则存在未被初始化磁盘,条件为真,进行下一步。如果空值,则说明系统没有未被初始化的磁盘,输出:没有找到未格式化的磁盘或RAW参数......