类型转换

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

低----------------------------------------------------------------------------------------- >高

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

运算中,不同类型的数据先转换为同一类型,然后进行计算
 public class demon1 {
     public static void main(String[] args) {
         int i=128;
         byte b=(byte)i;//内存溢出
         //强制转换 (类型)变量名 高--->低
         System.out.println(b);
         System.out.println(i);
 ​
         //自动转换   低--->高
         double c=i;
         System.out.println(c);
         System.out.println(i);
 ​
         /*
         注意点:
         1. 不能对布尔值进行转换
         2. 不能把对象类型转换为不相干的的类型
         3. 在把高容量转换到低容量的时候, 强制转换
         4.转换时可能存在内存溢出, 或精度问题
          */
         System.out.println("========");
         System.out.println((int)23.7);//double型   23
         System.out.println((int)-45.89f);//float型 -45
 ​
         System.out.println("========");
         char d='a';
         int f=d+1;
         System.out.println(f);//   98
         System.out.println((char)f);//   b
    }
 ​
 }
 ​
 ​

常见问题

 public class demon2 {
     public static void main(String[] args) {
         //操作大数时 注意溢出问题
         //JDK7新特性, 数字之间可以用下划线分割
         int money=10_0000_0000;
         int years=20;
         int total=money*years;
         System.out.println(total);//-1474836480, 计算的时候溢出了
         long total2=money*years;//默认是int(计算完之后才转换为long类型) 转换前已经存在问题了
         long total3=money*((long)years);
         System.out.println(total3);//20000000000
         
         // L l(一般用大写)
 ​
    }
 }
 ​

Java基础——类型转换注意事项及常见问题的更多相关文章

  1. Java 基础类型转换byte数组, byte数组转换基础类型

    Java 基础类型转换byte数组, byte数组转换基础类型 Java类型转换 java类对象转化为byte数组

  2. JAVA基础知识注意事项

    JAVA核心技术卷一 (第十版) 下面是需要注意的: 只有方法名和参数类型叫做方法的签名, 不同的返回类型值不能作为方法的签名.(4.6.1) 这是域与局部变量的主要不同点. 必须明确地初始化方法中的 ...

  3. Java基础语法目录

    一.Java相关科普知识1.Java的发展历程2.Java的发展方向3.Java的体系特性二.Java第一个程序1.JavaJDK的安装与环境的配置2.记事本开发Java程序的注意事项与常见问题3.J ...

  4. 聊聊java基础,int值强制类型转换成byte

    聊聊java基础,int值强制类型转换成byte 知识点:byte.short.char在表达式中会自动提升为int 之前做一个应用时,打印IP地址,因为是用4个byte存储的,所以打印的时候值范围是 ...

  5. JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)

    Java基础语法(变量.常量.数据类型.运算符与数据类型转换) 1.变量 Java中.用户能够通过指定数据类型和标识符来声明变量.其基本的语法为: DataType identifier; 或 Dat ...

  6. 046 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 08 for循环的注意事项

    046 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 08 for循环的注意事项 本文知识点:for循环的注意事项 for循环的注意事项 for循环有3个 ...

  7. 019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例

    019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例 本文知识点:Java中的数据类型转换案例 学习视频有误,导致没法写文,文章内容 ...

  8. 018 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 12 数据类型转换的基本概念

    018 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 12 数据类型转换的基本概念 本文知识点:Java中的数据类型转换 类型转换 类型转换分类 2类,分别是: ...

  9. Java基础学习之final和多态及类型转换

    finalkeyword: finalkeyword是终于的意思,能够修饰类,成员变量,成员方法. •    修饰类,类不能被继承 •    修饰变量,变量就变成了常量,仅仅能被赋值一次. •    ...

随机推荐

  1. js笔记14

    1.作用域面试题 画图分析 2.DOM document object model 节点树状图 document>documentElement>body>tagname 3.我们常 ...

  2. 99、centos下安装teamviewer

    99.1.teamviewer简介: TeamViewer是一个能在任何防火墙和NAT代理的后台用于远程控制的应用程序,桌面共享和文件传输的简单且快速的解决方案. 为了连接到另一台计算机,只需要在两台 ...

  3. 详细解释 使用FileReference类加载和保存本地文件

    一般而言,用户不希望web浏览器中运行的应用程序访问电脑硬盘里的文件.然而,随着基于浏览器(browser-based)的富因特网应用程序的增多,一些应用程序迫切需要访问用户所选择的文件,或者将文件保 ...

  4. 面试:MyBatis面试总结

    1.什么是Mybatis? (1)Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动.创建连接.创建statement ...

  5. linux 之管道命令与重定向

    一.Linux重定向 重定向能够实现Linux命令的输入输出与文件之间重定向,以及实现将多个命令组合起来实现更加强大的命令.这部分涉及到的比较多的命令主要有: 涉及到的比较多的命令主要有: cat:连 ...

  6. bugku SKCTF管理系统

    这题hint是sql约束攻击...sql约束攻击其实我没了解过,当时就各种百度,现在总结一下 0x01: sql约束攻击:通常是sql查询语句select * from username= 'lin' ...

  7. Nacos实战一:架构及部署

    2018年,阿里巴巴开源 Nacos,由此成为继 Eureka.Consul.Apollo 等服务注册发现&配置的又一开源框架,到如今2021年,Nacos 已经历了 0.01->1.4 ...

  8. git rebase(变基)操作

    1.rebase(变基)操作 注意事项:rebase 改变分支的根源,绝对不要在与其他人共享的分支上进行操作rebase黄金法则:绝不要在公共的分支上使用它! 1.1git merge 与 git r ...

  9. Linux | 通配符 & 转义符

    通配符 我们在查看文件的时候,可能会出现只记得开头几个字母的情况,并且相似名称的文件还非常多的情况.还有小编想要删除一些开头一样的文件,这种情况下都可以使用通配符号: # 查找vcs文件 ls /de ...

  10. css 层叠上下文和层叠顺序

    层叠上下文是css中的一个三维概念,拥有层叠上下文的元素在z轴上比普通元素要高,而且其内部的所有内容是自成体系的,其后代都是在它的层叠顺序中 哪些元素拥有层叠上下文 1.根元素,也就是html默认拥有 ...