一丶变量的基本概念

1.什么是变量

(1).内存中的一个存储区域

(2).该区域有自己的名称(变量名),和类型(数据类型)

(3.)该区域的数据可以在同一类型范围内不断变化(定义变量的主要目的是因为数据的不确定性)

2.为什么要定义变量

用来不断存放同一类型的常量,并可以重复使用

3.变量的类型

一般使用使用Int,byte也比较常用  因为他是数据的最小单元

二丶类型的提升&强制转换

1.两个不同类型无法进行 计算 ,因为内存空间大小不一致

2.除非是数值类型,因为可以类型自动提升

注:图中是byte类型自动类型提升为整型  音为byte类型是一个八位,int 是四个八位,所以可以自动提升,反之,int 自动类型转换byte则不可以 ,因为会丢失精度

如果必须要将byte转换为Int 类型 ,则需要强制类型转换(int有四个8位,若要强制转为为byte 则会把前面三个8位舍弃掉,丢失精度,慎用)

三丶类型运算细节

//1

byte a=4;

a=3+7;

//2

byte b=3;byte c=7;

a=b+c;

System.out.println(a);

1.第一代码块执行过程是首先声明变量,判断赋给变量的值是否在byte类型的取值范围内(-128~127)如果在,则会自动将int类型转换为byte类型(也就是去掉前面的3个8位),第二行复制代码,因为3和7的和是整型,所以在赋值时也是先判断赋给a的值是否在byte类型范围内,如果存在,则赋值给a,如果不存在则编译报错;

2.第二代码块同上,声明两个变量,然后把两个变量值相加,因为b和c是变量,变量的值是变化的,不确定的,因为无法再程序运行之前判断两个变量的值是否在byte取值范围内,所有会直接编译报错。

int a=5;int b=Integer.MAX_VALUE;int c=10;

a=b+c;

System.out.println(a);

1.而int 类型不会出现问题,因为整型计算得到的所有结果都是整型,如果运算结果大于整型取值范围,则会去掉高位,保留32位

java定义基础变量语句_java语言基础-变量相关推荐

  1. java朗控点异常_Java语言基础(day_04)

    选择结构(switch语句)(掌握) 1)格式:switch(表达式){    case 值1:语句体1;  break;    case 值2:语句体2;  break;    ...    def ...

  2. java语言编程基础王晓华_Java语言基础编程练习

    Java语言基础编程练习 1. 运算符练习 提示用户输入正整数类型的秒数,拆分秒数后输出x小时x分x秒. 如:输入7199,输出1小时59分59秒 System.out.println("请 ...

  3. python有哪些软件包用来考察变量之间的相关性_Python语言基础考察点:python语言基础常见考题(一)...

    一.python是静态还是动态类型?是强类型还是弱类型? 1.动态强类型语言(不少人误以为是弱类型) 不要傻傻分不清 2.动态还是静态指的是编译期还是运行期确定类型 3.强类型指的是不会发生隐式类型转 ...

  4. java中常量和变量的区别_Java语言基础 变量和常量

    变量和常量 1.变量的有效范围(作用域) (1)在类体中定义的变量被称为成员变量,成员变量在整个类中都有效.类的成员变量分为静态变量和实例变量,静态变量通过修饰符static确定,并且可以通过&quo ...

  5. java填空题_Java语言基础知识填空题

    Java语言基础知识填空题 想学java语言的人,要多做题才能巩固知识,下面小编为大家带来了Java语言基础知识的填空题,欢迎大家阅读! Java语言基础知识填空题. 1.浮点型数据根据数据存储长度和 ...

  6. java跳转控制语句有哪些_Java语言基础学习之流程控制语句和跳转控制语句实例分析...

    本文主要向大家介绍了Java语言基础学习之流程控制语句和跳转控制语句实例分析,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 一.流程控制语句 在一个程序执行的过程中,各条语句的执行顺 ...

  7. java 考试题_JAVA语言基础内部测试题(50道选择题)

    JAVA语言基础内部测试题 选择题(针对以下题目,请选择最符合题目要求的答案,针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分.)(每题2分) 没有注明选择几项 ...

  8. java基础考试_Java语言基础试题及答案

    Java语言基础试题及答案 引导语:Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言.以下是小编整理的Java语言基础试题及答案,欢迎参考阅读! 1.浮点型数据根据数据存储长度和数值精度的 ...

  9. java 数组 字符串 编程_Java语言基础知识之字符串数组

    Java语言基础知识之字符串数组 java语言中,数组是一种最简单的复合数据类型.数组是有序数据的集合,数组中的每个元素具有相同的数据类型,可以用一个统一的数组名和下标来唯一地确定数组中的元素.数组有 ...

最新文章

  1. Pytorch中的序列化容器-度消失和梯度爆炸-nn.Sequential-nn.BatchNorm1d-nn.Dropout
  2. jwt获取token_SpringBoot2 高级案例(09): 整合 JWT 框架,解决Token跨域验证问题
  3. R语言使用aov函数进行双因素方差分析(Two-way factorial ANOVA)、在双因素方差分析中,受试者被分配到由两个因素交叉分类形成的组(Two-way factorial ANOVA)
  4. linux C函数之strdup函数分析【转】
  5. 转载:DIV+CSS有可能遇到的问题
  6. 在无人驾驶汽车大规模应用以前,自动驾驶叉车已经逐步潜入制造业
  7. share-Nothing原理
  8. setState是同步的还是异步的(都有)
  9. Rocketmq vs Kafka
  10. Python批量下载电子邮件附件并汇总合并Excel文件_如何让繁琐工作自动化:聊聊Python与RPA...
  11. 【Kafka】kafka消费 Increase the fetch size, or decrease the maximum message size the broker will allow
  12. JS引擎查找属性的原理
  13. 智慧零售erp通用版管理系统+门店管理+商品管理+厂商管理+财务管理+销售管理+仓储管理+Axure高保真交互ERP通用版零售行业web端简易版管理系统
  14. python3 常见命令
  15. golang (3) 编译不同的平台文件
  16. bzoj 3495: PA2010 Riddle(2-SAT)
  17. MySQL建表规范与常见问题
  18. html将option设为默认,select设置option默认
  19. android 带刻度的滑动条_Android实现滚动刻度尺效果
  20. eclipse wifi 连接手机

热门文章

  1. API之子窗口创建 (转)
  2. IKVM 编程武林之.NET派的北冥神功
  3. C#中类的override和virtual
  4. BeetleX.WebFamily之ElasticSearch搜索集成
  5. NET问答: 如何用 C# 计算相对时间 ?
  6. 深度解读服务治理 ServiceMesh、xDS
  7. 中国宜坚持发展自主操作系统
  8. 【源码】常用的人脸识别数据库以及上篇性别识别源码
  9. 初识ABP vNext(4):vue用户登录菜单权限
  10. 基于Asp.Net Core MVC和AdminLTE的响应式管理后台之侧边栏处理