JAVA学习05-类型转换
1.类型转换
由于JAVA是强类型语言,所以要进行有些运算的时候,需要用到类型转换
低---------------------------------------------------------------------------------------高
byte ,short,char->int->long->float->double
小数的优先级大于整数
运算中,不同类型的数据先转换为同一类型,然后进行运算。
强制转换类型 (类型)变量名 高到低
自动转换类型 低到高
注意点
不能对布尔值进行转换
不能把对象类型转换为不相干的类型
由高到低时候,强制转换
转换时候可能存在溢出,或者精度问题
强制转换问题时候溢出问题 操作数比较大时候的溢出问题
//操作数比较大时候注意溢出问题
//JDK7新特性,数字之间可以用下划线分割
int money = 10_0000_0000;
int years=20;
int total = money*years;//-1474836480 计算时候溢出
System.out.println(money);//输出的时候不会因为下划线而改变
System.out.println(total);
//转换类型看一下
long total2=money*years;// money和years为int类型,此时转换之前就是int类型,在强制转换为long类型,所以不行
System.out.println(total2);
//还是没有改变
long total3 = money*((long)years);
System.out.println(total3);
//此时输出20000000000,合适,在赋值之前就必须转换输出结果:
1000000000
-1474836480
-1474836480
20000000000
2.变量
变量是什么:就是可以变化的量
JAVA是一种强类型语言,每个变量都必须声明其类型
JAVA变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域
type varName {=value}[{,varName[=value]}]
//数据类型 变量名=值;可以使用逗号间隔开来声明多个同类型变量
注意事项
- 每个变量都有类型,变量可以是基本类型,也可以是引用类型
- 变量名必须是合法的标识符
- 变量声明是一条完整的语句,因此没一个声明都必须以分号结束
变量的作用域
类变量(写在类里面)定义时候加static关键词
实例变量(可以写在类中间)
局部变量(写在方法里面)
3.常量(Constant)
初始化后不能再改变的值,不会变动的值。
理解为一种特殊的变量,值被设定后,在运行的过程中不允许改变
final 常量名=值;
final double PI=3.14;
常量名一般用大写字符
//修饰符不区分先后顺序
//final代表常量
//static final double PI=3.14;
final static double PI=3.14; //static和final位置改变输出不变
public static void main(String[] args) {System.out.println(PI);}
4.变量的命名规范
- 所有变量,方法,类名:见名如意
- 类成员变量:首字母小写和驼峰原则:monthSalary
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man GoodMan
- 方法名:首字母小写和驼峰原则:run(),runRun()
JAVA学习05-类型转换相关推荐
- JAVA学习笔记--类型转换(父类子类 Object 基本类型 String) 拆装箱 包装类
最近一段时间忙着学习JAVA,本来net学的也不怎么好,趁着这个机会转下方向学习JAVA.不过.NET core的开源还是有点搞头的,微软了解一下.接下来几天我也会陆续写一些内容关于线程和集合等方面, ...
- java学习之类型转换与越界
编写代码如下: package 第1章.java概要;public class _3_类型转换与越界 {//类型转换public static void testConversion(){int i ...
- Java虚拟机JVM学习05 类加载器的父委托机制
Java虚拟机JVM学习05 类加载器的父委托机制 类加载器 类加载器用来把类加载到Java虚拟机中. 类加载器的类型 有两种类型的类加载器: 1.JVM自带的加载器: 根类加载器(Bootstrap ...
- 寒假宅喵java学习
1.25 小fleeting 学习java 关于辅助书籍: Core Java 字典 比如学习完了IO的知识,觉得意犹未尽,那么就通过这本字典一样的Java书籍,把IO的知识更丰满的刷一遍 Effec ...
- Java学习day02-数据类型和运算符
数据类型和运算符 今日目标: 1.变量: 2.数据类型: 3.数据类型转换 4.变量使用案例: 5.程序如何同用户交互:(Scanner) 6.赋值运算符: 7.算术运算符: 8.关系运算符 9.逻辑 ...
- 笔记整理1----Java语言基础(一)01 变量与数据类型+02 运算符与表达式+03 条件判断与循环语句+04 JAVA数组+05 函数与方法
01 变量与数据类型+02 运算符与表达式+03 条件判断与循环语句+04 JAVA数组+05 函数与方法 第01天 java基础知识 今日内容介绍 Java概述.helloworld案例 工 ...
- Java学习笔记(笔记来源:B站UP主遇见狂神说的Java课程总结)
该笔记是我看完B站UP主:遇见狂神说的Java部分课程后总结出来的内容,视频指路--->[[狂神说Java]Java零基础学习视频通俗易懂-哔哩哔哩 目录 Java基础(12节) Java基础0 ...
- java学习笔记13--反射机制与动态代理
本文地址:http://www.cnblogs.com/archimedes/p/java-study-note13.html,转载请注明源地址. Java的反射机制 在Java运行时环境中,对于任意 ...
- Java学习之 多态 Polymorphism
Java学习之多态 多态的概念 多态==晚绑定. 不要把函数重载理解为多态. 因为多态是一种运行期的行为,不是编译期的行为. 多态:父类型的引用可以指向子类型的对象. 比如 Parent p = ne ...
- [Java]学习Java(1)运算符语句类
[Java]学习Java(1)运算符&语句&类 一.运算符&语句 1.相等运算符"==" (1)基本类型时值相等就为true (2)对象比较时比较其引用地址 ...
最新文章
- 【CVPR2020】目标检测方向论文更新
- C语言实现hash/xor8算法(附完整源码)
- .NET的MVVM框架
- php点击标题进入_重新学习php基础之-E-mail(十八)
- [Hive] - Hive参数含义详解
- 冲刺CCNA2.0(200-120)认证考试TK视频讲解
- c#好的程序员必须掌握的编码习惯
- android判断某文件下是否you_Android_判断文件是否存在并创建代码
- Windows设置自己的程序开机自动启动
- latex不显示doi号
- JAVA 静态方法和成员方法、静态方法的调用
- 宣传文本html,优秀的宣传语(精选50句)
- java 支付宝红包接入
- XWiKi 部分汉化
- Windows各个版本系统的官网地址
- java ee7 ejb_使用MyEclipse开发Java EE应用:EJB项目开发初探(上)
- 正则表达式验证正整数
- 怎么打开本地连接呢?
- Zigbee物联网组网
- 情感日记:为什么我的眼里常含泪水
热门文章
- ubuntu上python使用opencv调用usb摄像头无故掉线以后重连摄像头。
- 华夏天信携手华为云开天aPaaS,打造安全、高效、节能的主煤流运输系统
- mysql高级 tigger触发器 --[2]
- Facebook 秘钥散列
- 公众号文章链接被微信拦截(被封锁、被屏蔽、被和谐)的最新解决方法
- 深入剖析Kubernetes:容器编排与 Kubernetes 核心特性剖析
- dsp31段最佳调音图_DSP调音技术~DSP功放31段EQ详解~DSP调音师推荐
- 服务器主板用linux版本系统,华硕WG X299主板的服务器上安装ubuntu16.04的系统
- 需求分析挑战之旅(疯狂的订餐系统)(6)——榨干人脑汁的需求分析
- 90后电子工程师暴力拆解“华强北版AirPods”