类型转换

  • 由于Java强类型语言,所以要进行有些运算的时候,需要用到类型转换

    • -----------------------------------------------------

    • byte,short,char->int->long->float->double

  • 运算中,不同类型的数据先转化为同一类型,然后进行运算。

         int i=128;
         System.out.println(i);//128
  • 强制类型转换 (类型)变量名

    • 高->低

     //强制转换   (类型)变量名    高->低
          byte a=(byte)i;
          System.out.println(a);//-128   内存溢出
  • 自动类型转换

    • 低->高

     //自动转换                  低->高
          double b=i;
          System.out.println(b);//128.0

    注意

         /*
          注意点:
          1.不能对布尔值进行转换
          2.不能把对象类型转换为不相干的类型
          3.在把高容量转换到低容量时,强制转换
          4.转换的时候可能存在内存溢出(数字过大),或者精度问题(分数)!
           */
     ​
      //操作分数时,注意精度问题
      System.out.println("==========================");
         System.out.println((int)23.7);//23   高->低   精度
         System.out.println((int)-45.67f);//-45   高->低   精度
     ​
         System.out.println("==========================");
         char c='a';
         int c1=c+1;
         System.out.println(c1);//98
         System.out.println((char)c1);//b
     ​
     ​
      //操作比较大的数时,注意溢出问题
         //JDK7新特性,数字之间可以用下划线分割
         int money=10_0000_0000;
         int years=20;
         int total=money*years;
         long total2=money*years;
         System.out.println(total);//-1474836480   计算的时候溢出了
         System.out.println(total2);//-1474836480   默认是int,转换之前已经存在问题了
     ​
         long total3=money*(long)years;//先把一个数转换为Long类型 防止把l看成1,使用大写L
         System.out.println(total3);//200_0000_0000

day09-类型转换的更多相关文章

  1. day09 常用工具类&包装类&集合——List、Set

    day09 常用工具类 java.lang.Math数值运算 基本数值运算,如初等函数.对数.平方根和三角函数 //最大最小值 Math.max(12, 21); Math.min(2, 3); // ...

  2. 为C# as 类型转换及Assembly.LoadFrom埋坑!

    背景: 不久前,我发布了一个调试工具:发布:.NET开发人员必备的可视化调试工具(你值的拥有) 效果是这样的: 之后,有小部分用户反映,工具用不了(没反应或有异常)~~~ 然后,建议小部分用户换个电脑 ...

  3. c# 基础 object ,new操作符,类型转换

    参考页面: http://www.yuanjiaocheng.net/webapi/config-webapi.html http://www.yuanjiaocheng.net/webapi/web ...

  4. Struts2日期类型转换

    针对日期类java.util.Date进行类型转换,要求客户端使用"yyyy-MM-dd","yyyy/MM/dd"中的任意一种输入,并以"yyyy- ...

  5. 【.NET深呼吸】基础:自定义类型转换

    照例,老周在开始吹牛之前,先讲讲小故事,这是朋友提出的建议,老TMD写技术有什么了不起的,人人都会写.后来老周想想,也确实,代码谁不会写,能写到有品位有感悟,就不容易做到.于是,老周接受了该朋友的建议 ...

  6. C++四种类型转换方式。

    类型转换有c风格的,当然还有c++风格的.c风格的转换的格式很简单(TYPE)EXPRESSION,但是c风格的类型转换有不少的缺点,有的时候用c风格的转换是不合适的,因为它可以在任意类型之间转换,比 ...

  7. struts2类型转换

    1. Struts2中的类型转换 我们知道通过HTTP提交到后台的数据,都是字符串的形式,而我们需要的数据类型当然不只字符串类型一种.所以,我们需要类型转换! 在Struts2中,类型转换的概念除了用 ...

  8. C++_系列自学课程_第_11_课_类型转换_《C++ Primer 第四版》

    上次说了关于表达式的一些内容,说到还有一些关于数据类型转换的内容,今天我们接着八一八C++中的数据类型转换. 一.隐式类型转换 在表达式中,有些操作符可以对多种类型的操作数进行操作, 例如 + 操作符 ...

  9. Struts2入门(三)——数据类型转换

    一.前言 笔者一直觉得,学习一个知识点,你首先要明白,这东西是什么?有什么用?这样你才能了解.好了,不说废话. 1.1.类型转换为何存在?什么是类型转换? 在MVC框架中,都是属于表示层解决方案,都需 ...

  10. js条件判断时隐式类型转换

    Javascript 中,数字 0 为假,非0 均为真 在条件判断运算 == 中的转换规则是这样的: 如果比较的两者中有布尔值(Boolean),会把 Boolean 先转换为对应的 Number,即 ...

随机推荐

  1. 【SpringMVC】03 使用注解

    第一步还是配置web.xml,使用分发器统一处理请求和加载容器文件 <?xml version="1.0" encoding="UTF-8"?> & ...

  2. 对国产AI计算框架要有一定的包容力——记“mindspore”使用过程中的“不良反应”

    看mindspore的官方文档,居然有502错误,恶心到了: 打开Eager模式的链接,报错:

  3. 高校教编程是否应该将Python作为主语言

    偶读一文:https://www.cnblogs.com/qing-gee/p/12941219.html 想到了这样的一个老问题,个人搞计算机软件开发.人工智能的时间已经十余年,虽然个人能力有限但是 ...

  4. 陆吾AI智能机械狗的通讯控制

    陆吾AI智能机械狗现在是蛮有名的了,在YouTube上比较火的一个东西了,和波士顿机器狗不同,波士顿机器狗价格昂贵主要原因是其定位于工业领域的机械狗因此采用的是工业级的硬件,但是如果我们采用的家用环境 ...

  5. QT中TreeWidget树控件的使用

    关于Item Widgets中Tree Widget的使用方法! TreeWidget树控件的使用 创建列表头, 该控件有什么属性 QStringList header_list; header_li ...

  6. 【CMake系列】10-cmake测试集成googletest与第三方库自动化构建

    cmake测试,使用ctest 可能不能满足我们的需求,需要我们使用更为强大的第三方测试框架,如googletest,完成项目中的测试工作 本篇文章将第三方测试框架 googletest,引入,同时也 ...

  7. GC终结标记 SuspendEE 是怎么回事

    一:背景 1. 讲故事 写这篇是起源于训练营里有位朋友提到了一个问题,在 !t -special 输出中有一个 SuspendEE 字样,这个字样在 coreclr 中怎么弄的?输出如下: 0:000 ...

  8. PostgreSQL允许远程连接

    PostgreSQL安装后,貌似默认是只接受本地机器连接访问.如果想在其他主机上访问PostgreSQL数据库服务器,就需要进行相应的配置.以下是我配置远程连接PostgreSQL数据库方式: 修改配 ...

  9. Vue Element-ui Table实现动态新增和删除

    达到效果:1.点击添加动态添加一行表格数据 2.点击移除删除一行 templete部分代码 <el-tab-pane label="股东情况"> <el-row& ...

  10. 【YashanDB数据库】YAS-02032 column type is incompatible with referenced column type

    [标题]错误码处理 [问题分类]外键约束创建报错 [关键字]YAS-02032 [问题描述]设置外键约束报错,数据元数据不正确. [问题原因分析]外键字段类型不支持,比如varchar2(64) ,指 ...