首页 > 其他分享 >类型转化问题

类型转化问题

时间:2023-05-17 21:00:59浏览次数:24  
标签:问题 转换 int float 数据类型 转化 类型 强制

类型之间的转换问题

    1.同种数据类型之间是可以直接进行赋值操作
         例如:
        int a = 1;int b = a;   float x = 3.4;float y = x;
    2.数据类型不同的空间 之间的赋值--->转换问题
          同种大数据类型之间才能发生转换
          基本类型与基本类型之间可以直接转换(自动 强制)
          引用类型与引用类型之间可以直接转换(自动 强制--上转型 下转型)
          基本类型与引用类型之间不可以直接转换(间接--包装类/封装类)
    3.保证大数据类型一致的前提下,类型可以直接转换如下:
        基本类型---基本类型直接转换
        小数据类型相同:
          都是整型  都是浮点
          大空间变量可以直接存储小空间的数据
          小空间变量不可以直接存储大空间的数据(需要强制类型转换)转换过程写法都好用
          如果转换的过程中数值范围超过边界 
          可能会有损失byte a = 1;   int b = a;
          自动直接转化就可以int a = 1;  byte b = (byte)a;
          需要强制类型转换float x = 3.4F;   double y = x;
          自动直接转化double x = 3.4; float y = (float)x;强制转换
          如果发现强制转换之前的数值比较大 强制转化这件事情可以
          int a = 1000; byte b = (byte)a;//编译好用 执行后 b存放的值一定发生变化
        小数据类型不同:
              整型---浮点型
            两个比较精确程度  浮点型精确程度更高 可以直接存放整数 反之需要强制转换
            任何一个浮点型都可以直接存放一个整型
            int a = 1;  float b = a;//自动直接转化
            float a =1.0F;  int b = (int)a;//强制类型转换
             整型---字符型
            每一个字符都对应这一个Unicode码   a--97
            char x = 'a';  int y = x;//自动转化  y--97
            int x = 97; char y = (char)x;//强制的转化
             布尔类型很特殊
            不能与其他基本类型之间发生转化

本章总结:

          关于类型转换问题,通俗的讲就是,把碗里的东西可以倒进锅里而不会溢出,如果把锅里的东西倒进碗里,那么就会溢出,如果硬要倒就是强制转换,会产生数据分割,从而改变数据的本质。

标签:问题,转换,int,float,数据类型,转化,类型,强制
From: https://blog.51cto.com/u_15770393/6293781

相关文章

  • k8s删除命名空间namespace一直显示Terminating问题处理
    转载自:https://huaweicloud.csdn.net/638db195dacf622b8df8c5f7.html============= 1、问题现象假设我们的现在要删除的namespace是dev,执行如下命令进行删除:执行如下命令查看namespace删除情况:可以看到删除状态显示Terminating,而且会一直持续这个状态。并且用:kubectldeleten......
  • Plsql或Navicat连接登陆Oracle时慢、执行语句的时候也特别慢的问题解决方案
    用Plsql或Navicat连接登陆Oracle时,等待时间特别长。经过漫长的等待后,执行语句的时候也特别慢,监听配置没毛病的情况下,大概率是监听日志文件过大导致的。监听日志路径:app\Administrator\diag\tnslsnr\LS--20171012URU\listener\trace\listener.log删除listener.log文件即可。......
  • docker 安装redis遇到的问题
    ocker:Errorresponsefromdaemon:driverfailedprogrammingexternalconnectivityonendpointmyredis(1cd3cedb32fe0bc958bf68043169dc47a823da902c00f2e225d5bba5d20922f6):Errorstartinguserlandproxy:listentcp40.0.0.0:6379:bind:addressalreadyinus......
  • nvidia optimus 双显卡 Ubuntu驱动问题
    NVIDIAOptimus介绍:http://baike.baidu.com/view/4266252.htm好了问题来了,装Xorg还有官方驱动都成问题了。目前解决方案进入Bios禁用一块显卡。集显能禁掉吗,可是笔记本的BIOS里好像根本没有那个选项,在WIN7下禁掉集显直接黑屏,U下是什么情况?使用这种技术机器有GT420M,GT425M,G......
  • forwardRef 与 connect一起使用出现的问题
    今天在项目中发现使用forwardRef转发用conenct包裹的组件,怎么都拿不到提供给父组件的方法,百思不得其解。最后看到了这篇文章  React.forwardRef和connect的联合使用问题 才知道。 原来是这里惹的祸。还有,像这种高阶组件。connect要在第一层,forwardRef在第二层。  ......
  • 余弦相似度精度问题引起的偏差
    余弦相似度精度问题引起的偏差余弦相似度值不等于1(实际是等于1)两个向量\(a\)和\(b\)是相同的,余弦相似度值应该是1,但是通过sklearn和numpy计算的结果却不等于1,会出现大于1或者小于1的情况,实际上余弦值应该是在[-1,1]这个区间内的。使用sklearn.metrics.pairwise.cosine_simil......
  • 遇到的问题
    1.Macpycharm运行文件左下角提示error=2,nosuchfileordirector  https://blog.csdn.net/subian1261/article/details/120716738删除.idea文件夹,在Pycharm上设置Editconfigure-本地默认Python版本,python10.然后重新启动pyvcharm就可以解决掉。   ......
  • vue项目跨域和路由问题
    一、vue跨域跨域是浏览器的安全策略,当域名或端口跟目标网址不一致时就会触发。详细可以去这看看:去看看当开发阶段,如果出现跨域,因为默认node开发中的服务时127.0.0.1:5173而请求后端时,地址肯定不是这个,就会触发跨域的问题。开发中可以修改配置来解决这个问题......
  • Python中,y轴数据逆序问题的解决
    问题描述想要从高到低表示数据的变化,发现y轴数据与实际的二维坐标轴不相符问题解决在使用了x轴和y轴之后,加上这样一条代码:plt.gca().invert_yaxis()即可实现y轴由高到低变化,恢复正常实际!......
  • 7935: 最大值问题 单调队列
    描述 给定n个正整数,crq先选了第1~k个数,要求yuyu求出最大值,yuyu轻松完成,crq直接甩出一堆,要求第2~k+1个,3~k+2个,...,n-k+1~n个,全部都求出来,之后便轻松休息了。  输入 第一行两个整数 n和k(1≤k≤n≤106)。第二行 n个整数,表示编号1~n方格中的数字ai(1≤ai≤3×107)。......