zoukankan      html  css  js  c++  java
  • 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.字符联接操作

    代码输出运行第一行是字符串的连接,第二行是数值相加。

    之所以出现这种结果,是因为计算机在读写代码是按照从左往右,从上至下的顺序读取代码,所以第一行代码前面是字符串,所以后面是字符连接,而第二行代码前面先进行了数值计算,所以是加法。

  • 相关阅读:
    2017-4-25 winform公共控件属性 菜单和工具栏属性
    2017-4-24 winform窗体基础属性 ico图片生成 不规则窗体的移动 恶搞小程序
    2017-4-23 知识补充
    C# 动态方法和静态方法的区别 (转)
    2017-4-21 Ado.net字符串攻击 防御 实体类 数据访问类 属性扩展 三层架构开发
    ToString()用法 select top 子句
    2017-4-19 ado.net 增,删,改,查,练习
    2017-4-17 类库 通用变量 is和as运算符 委托
    2017-4-16 多态 构造函数 方法重载 静态方法和静态成员
    【2017-03-12】SQL Sever 子查询、聚合函数
  • 原文地址:https://www.cnblogs.com/quxiangjia/p/9752491.html
Copyright © 2011-2022 走看看