java数据类型及类型转换
时间:2021-07-20
本文章向大家介绍java数据类型及类型转换,主要包括java数据类型及类型转换使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
java数据类型及类型转换
划分数据类型,是为了给数据分配所需的内存。在声明变量时要使用数据类型。
数据类型分为基本数据类型和复合数据类型(引用类型)。而基本数据类型分为数值类型和boolean类型。引用类型有数组,接口和类。(数值类型有整数类型,浮点类型,字符类型)
基本数据类型(数值类型)
整数类型:
byte(字节型)short(短整型)int(整型)long(长整型)
浮点类型:
float(单精度浮点型)double(双精度浮点型)
注:float类型的数值后有一个后缀F。如(3.14F).没有后缀F的浮点数值默认为double类型。也可以在浮点数值后面添加后缀D。
字符类型:
char类型用于表示单个字符,通常用来表示字符常量。(占两个字节)
基本数据类型(boolean类型)
有两个值:true和false,用来判定逻辑条件。boolean只占一位。
代码注解:
package com.IT.operator.base;
public class Demon02 {
public static void main(String[] args) {
//八大基本数据类型
int num1 = 10;
byte num2 = 20;
short num3 = 30;
long num4 = 30l;//long类型要在数字后面加个l便于区分。
//小数:浮点数
float num5 = 50.1F;//float类型后面加个F便于区分。
double num6 = 3.1425926;
//字符类型
char name = 'A';
//字符串,String不是关键字
//布尔值
boolean flag = true;
//boolean flag = false;
}
}
补充:java整数拓展:进制问题,二进制0b开头,十进制,八进制0开头,十六进制0x开头。在浮点数中,最好完全避免使用浮点数进行比较。字符拓展:字符强制转换。布尔值扩展:判定真假if()。
代码注解:
package com.IT.operator.base;
public class Demon4 {
public static void main(String[] args) {
int i = 128;
double b = i;
System.out.println(i);
System.out.println(b);
char c = 'a';
int d = c+1;
System.out.println(d);
System.out.println((char)d);
}
}
类型转换:
字符由低到高为byte,short,char-->int-->long-->float-->double
注:不同类型的数据先转换为同一类型,然后再进行计算。
强制转换:
(类型)变量名 高-->低
自动转换:
低-->高
int num1 = 10;
float num7 = (float)num1;
double num8 = num1;//由低到高的自动转换
System.out.println((int)23.5); //23,有可能存在精度问题
数值转换时的注意点:
1.不能对boolean值进行转换
2.不能把对象类型转为不相干的类型
3.高级转为低级时强制转换
4.转换的时候可能出现溢出或者精度问题4
详见视频:狂神说java
原文地址:https://www.cnblogs.com/kuangsun125/p/15036348.html
- Golang语言社区--使用百度API获取经纬度
- HDUOJ---The number of divisors(约数) about Humble Numbers
- HDUOJ----最少拦截系统
- Go语言截取字符串函数用法
- HDUOJ -----免费馅饼
- HDUOJ----Super Jumping! Jumping! Jumping!
- HDUOJ----数塔
- Golang语言-并发支持
- HDUOJ-----I NEED A OFFER!
- HDUOJ---2546 饭卡
- 假期前的数据库检查脚本之主备关系(r11笔记第46天)
- HDUOJ----1003 Max Sum
- HDUOJ--Bone Collector
- HDUOJ--1058HangOver
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- H5|HTTP-FLV|WS-FLV|HLS|RTMP免费直播点播播放器如何自定义层叠DIV全屏后显示在视频上方?
- 什么是时间分片(Time Slicing)?
- 48岁的C语言,你知道它背后的历史吗?
- 【技术创作101训练营】我是如何使用freemarker生成Word文件的?
- 4种主流超参数调优技术
- PyTorch 最佳实践:模型保存和加载
- 突击并发编程JUC系列-启航篇
- 拜托!别再问我多线程的这些问题了
- Tomcat 架构原理解析到架构设计借鉴
- C++核心准则T.65:使用标签分发提供函数的不同实现
- Java开发中Websocket的技术选型参考
- Java 15正式发布,腾讯做出了突出贡献
- Mybatis是如何向Spring注册Mapper的
- 打卡群刷题总结0917——买卖股票的最佳时机
- Fiddler对安卓App抓包(逍遥模拟器APP)