7.JavaSE之类型转换
public class Demo04 {
public static void main(String[] args) {
int i = 128;
byte b = (byte) i;//内存溢出,Byte范围-128~127 //强制类型转换:(类型)变量名 高--低
//自动类型转换:不用写 低--高 double c = i;
System.out.println(i);//
System.out.println(b);//-128 高到低
System.out.println(c);//128.0 低到高 /*
注意点:
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型。例如不能把人变成猪,但是可以把一个男人变成一个女人
3.在把高容量转换为低容量的时候,强制转换,反之不用管。
4.转换的时候可能存在内存溢出(高-低),或者精度问题(小数,精度丢失问题)
*/ System.out.println((int) 23.7); //
System.out.println((int) -45.99f);//-45 System.out.println("======================");
char d = 'a';
int e = d + 1;
System.out.println(e); //
System.out.println((char) e);//b }
}
注意:
public class Demo05 {
public static void main(String[] args) {
//操作比较大的数的时候,注意溢出问题
//JDK7新特性,数字之间可以用_分割,而且下划线不会被打印出来 int money = 10_0000_0000;
int years=20;
System.out.println(money);//
int total=money*years;
long total2 =money*years;
System.out.println(total);//-1474836480,计算的时候溢出了
System.out.println(total2);//默认是int,计算完后默认是int数你转换成long没用,还是-1474836480怎么解决呢? long total3=money*((long)years);//在计算前转换,将一个数转换为long类型就可以了。
System.out.println(total3);//20000000000 //L l 用L表示long类型,容易看成1。需要注意代码规范,从刚开始就抓起。
}
}
7.JavaSE之类型转换的更多相关文章
- 【黑马JavaSE】1.1JavaSE、环境变量、CMD使用、常量、变量、数据类型转换(自动/强制)、ASCII码表、Unicode万国码表
文章目录 SUN公司,詹姆斯.劳瑟琳,Java祖师爷 Java语言开发环境搭建 把Java添加到环境变量的方法 命令行CMD里一些报的错误 命令控制行常用操作的代码展示 Notepad++.注释.标识 ...
- JavaSE学习(二):进制转换—数据类型转换—Java运算符
一.进制转换 1.1 其他进制转十进制(以十六进制为例): 十六进制范围:0-9, A-F对应数字10-15 2A7E(16) = 14*16(0) +7*16(1) + 10*16(2) + ...
- [javaSE] 类型转换(1加1等于几)
打印 ‘a’+1,输出98,解释:’a’是char类型占2个8bit,1是int类型占4个,’a’字符会被自动强制转换为int类型对应ascii码表97 打印’1’+1,输出 50,解释:’1’是ch ...
- Java 基础入门随笔(2) JavaSE版——关键字、进制转换、类型转换
1.Java语言-关键字 关键字:被java语言赋予了特殊含义的词,特点是所有的字母都为小写. java涉及到的关键字整理: 用于定义数据类型的关键字 class interface byte sho ...
- JavaSE基础(十)--Java中的基本数据类型转换
Java中的基本数据类型转换 说基本数据类型转换之前,先了解下 Java 中的 8 种基本数据类型,以及它们的占内存的容量大小和表示的范围,如下图所示. 重新温故了下原始数据类型,现在来解释下它们之间 ...
- 类型转换——JavaSE基础
类型转换 类型判断 可以通过Instanceof关键字判断左操作数是否是右操作数的父类或本身 强制类型转换 不能对布尔值进行转换 不能将对象类型转换为不相关的类型 把高容量转向低容量时,需要进行强制类 ...
- javaSE基础03
javaSE基础03 生活中常见的进制:十进制(0-9).星期(七进制(0-6)).时间(十二进制(0-11)).二十四进制(0-23) 进制之间的转换: 十进制转为二进制: 将十进制除以2,直到商为 ...
- JavaSE基础知识总结
最近回顾了一下Java的基础知识,决定写成博客梳理一遍,主要是JavaSE部分最基础的知识,适合考前突击,学后回顾,不适合作为初学材料. 简单的列个目录吧: 一.数据类型和运算符 二.流程控制与数组 ...
- javase基础复习攻略《三》
编程语言的发展: 机器语言——直接由计算机的指令组成,指令.地址.数据都是以"0"和"1"的符号串组成,可以被计算机直接执行. 汇编语言——用容易理解和记忆的符 ...
随机推荐
- 2019-11-20-Github-给仓库上传-NuGet-库
title author date CreateTime categories Github 给仓库上传 NuGet 库 lindexi 2019-11-20 08:18:14 +0800 2019- ...
- DP刷题记录(持续更新)
DP刷题记录 (本文例题目前大多数都选自算法竞赛进阶指南) TYVJ1071 求两个序列的最长公共上升子序列 设\(f_{i,j}\)表示a中的\(1-i\)与b中色\(1-j\)匹配时所能构成的以\ ...
- 判断移动端还是PC端
window.onload=function(){ var sUserAgent = navigator.userAgent.toLowerCase(); var bIsIpad = sUserAge ...
- json_encode函数的JOSN_UNESCAPE_UNICODE
echo json_encode('测试'); //\u6d4b\u8bd5 echo json_encode('测试',JSON_UNESCAPED_UNICODE); // 测试 加上JSO ...
- 22.json&pickle&shelve
转载:https://www.cnblogs.com/yuanchenqi/article/5732581.html json 之前我们学习过用eval内置方法可以将一个字符串转成python对象,不 ...
- xcode无线调试
前言: xcode9 以上才会有无线调试这个功能,换了一个type-c口的mac,公司的新电脑,但是公司不给配转接口,到某东看了一下,type-c口同时可以转化usb和VGA的要198,官网差不多50 ...
- 如何利用腾讯云COS为静态博客添加动态相册
前言 本文首发于个人网站Jianger's Blog,欢迎访问订阅.个人博客小站刚建站不久,想着除了主题里的功能外再添加上相册模块,于是半搜索半摸索把相册模块搞出来了,最后采用了利用腾讯云对象存储作图 ...
- 解决echarts中的点击事件点击后走多次接口
使用echarts图点击图之后,走了很多次接口,后来发现添加一个off事件就可以解决了,具体如下:
- $BZOJ1799\ Luogu4127$ 月之谜 数位统计$DP$
AcWing Description Sol 看了很久也没有完全理解直接$DP$的做法,然后发现了记搜的做法,觉得好棒! 这里是超棒的数位$DP$的记搜做法总结 看完仿佛就觉得自己入门了,但是就像 ...
- 分享在开发多终端使用比较多的Adb命令
分享在开发多终端或者涉及PC-Android的传输使用比较多的Adb命令 查看连接的设备 adb devices 列出设备安装的软件包 adb shell pm list packages 使用这个方 ...