Java基本语法之动手动脑
1.枚举类型
运行EnumTest.java
运行结果:false,false,true,SMALL,MEDIUM,LARGE
结论:枚举类型是引用类型,枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象。相同的值则引用同一个对象。可以使用“==”和equals()方法直接比对枚举变量的值,换句话说,对于枚举类型的变量,“==”和equals()方法执行的结果是等价的。
2.Java中同名变量的屏蔽原则
运行ppt上此段代码
运行结果:2
结论:每一个变量都有它的作用域,例如局部变量和全局变量,当输出同名变量时,先输出局部变量,如果没有,那就上一级范围寻找同名变量输出,如果还是没有找到,就继续扩大范围寻找然后输出,所以说原则是先输出作用域小的变量,再输出作用域大的变量。
3.Java中的类型转换

int 32位 -2147483648~2147483647
short 16位 -32768~32678
long 64位 -9223372036854775808~9223372036854775807
float 32位 -340292347E+38~+340292347E+38
double 64位 -1.79769313486231576E+308~.79769313486231576E+308
char 16位 ‘\u0000′‘~‘\uFFFF’
boolean 1位 true/false
byte 8位 -128~127
数值范围小的向数值范围大的进行类型转换没有精度损失,反之则有精度损失。
4.为什么double类型的数值进行运算得不到数学上精确的结果?
在这里结合double类型数值的位数64位,而我们在数学计算时,有些计算所获得结果所需位数已经超过了64位,所以不准确,严格来说这是计算机硬件再就是定的这种数据类型所导致的无法避免的误差,而为了避免这种计算误差,数学上大可以用分数表示,再就是使用字符串类型存储数值。
5.字符联接操作
代码输出运行第一行是字符串的连接,第二行是数值相加。
之所以出现这种结果,是因为计算机在读写代码是按照从左往右,从上至下的顺序读取代码,所以第一行代码前面是字符串,所以后面是字符连接,而第二行代码前面先进行了数值计算,所以是加法。
Java基本语法之动手动脑的更多相关文章
- java语法基础--动手动脑问题及课后实验问题
---恢复内容开始--- 动手动脑: 1:仔细阅读示例:EnumTest.java,运行它,分析运行结果 结果 :枚举类型是引用类型!枚举类型不属于原始数据类型,它的每个具体指都引用一个特定的对象.相 ...
- java第二节课 java语法基础动手动脑
动手动脑1:枚举变量 运行EnumTest.java package test2; public class EnumTest { public static void main(String[ ...
- JAVA方法03之动手动脑问题解决
动手动脑1.当JAVA里定义的函数中去掉static后,怎么办?(如下程序,将square()函数的static去掉) public class SquareIntTest { public stat ...
- Java类和对象动手动脑
动手动脑1 以下代码为何无法通过编译?哪儿出错了?
- Java文件与类动手动脑
动手动脑1: 使用Files. walkFileTree()找出指定文件夹下所有大于指定大小(比如1M)的文件. package classJava; import java.io.IOExcepti ...
- Java第一节课动手动脑
在第一节课的动手动脑中,主要解决四则运算问题. 首先第一个是出30道四则运算题目,在100以内.这个问题需要控制随机数生成的范围和结果的范围在100以内就可以. 第一次改进是3点:一为避免重复,二为定 ...
- Java语法基础动手动脑
仔细阅读示例:EnumTest.Java,运行它,分析运行结果? 你能得到什么结论?你掌握了枚举类型的基本用法了吗? EnumTest.java public class EnumTest { pub ...
- Java语法基础课 动手动脑
1.枚举类型 它的每个具体值都引用一个特定的对象.相同的值则引用同一个对象. 枚举类型不是java原有数据类型 2.为什么double类型的数值进行运算得不到“数学上精确”的结果? 我们给出的数值,在 ...
- Java语法基础动手动脑实践
输出结果为: 0.05+0.01=0.0600000000000000051.0-0.42=0.58000000000000014.015*100401.49999999999994123.3/100 ...
随机推荐
- cin.tie与sync_with_stdio加速输入输出
在LeetCode上练习习题的时候每次AC之后都会去看别人的代码,几乎每次都能遇到cin.tie与sync_with_stdio.类似这样: static auto x = [](){ std::io ...
- mysql网课部分笔记
mysql> \s 查看当前数据库的状态 \c 取消当前所输入的命令或字符 ------------------------------------------------------- m ...
- Pronunciation – The Definitive Guide to the Top 100 Words in American English
Pronunciation – The Definitive Guide to the Top 100 Words in American English Share Tweet Share Tagg ...
- 【365】拉格朗日乘子法与KKT条件说明
参考:知乎回答 - 通过山头形象描述 参考:马同学 - 如何理解拉格朗日乘子法? 参考: 马同学 - 如何理解拉格朗日乘子法和KKT条件? 参考:拉格朗日乘数 - Wikipedia 自己总结的规律 ...
- 转: 日期格式参考extjs api文档中的Date类型
var md = new Ext.form.DateField({ //下面的格式是:2000-01-01 00:00:00 format: 'Y-m-d H:i:s', ............ } ...
- impdp导入文件失败问题解决(ORA-39001/ORA-39000/ORA-39143)
测试环境 SuSE11 + ORACLE11gR2 问题现象 执行 impdp导入现场导回的dmp文件,导入失败.错误提示如下 $impdp sysdb/oracle directory=imp_da ...
- adb push和adb install区别
一般的,Android 应用程序有两种安装方法: 1. 将应用程序的apk文件push到手机中,用如下命令: adb push xxxx.apk /system/app. 2. 用adb instal ...
- C#转成时间格式
public static string GetDatetime() { System.Globalization.DateTimeFormatInfo myDTF ...
- BlurZoomGallery一个完美下拉进入大图模式
BlurZoomGallery一个完美的Gallery和view的事件处理,下拉放大的时候gallery不断的在添加高度,gallery效果在放大,实现下拉进入大图模式,view滑动事件和galler ...
- Beanutils.copyProperties( )的使用与优化
1.使用原因 因为现在都是前后端分离所以我们在响应APP端或者前端的时候会维护一套VO,那么DTO到VO的转换便是一堆get... set...这样的代码,比如好几个地方用到的话还要去复制粘贴来转换. ...