java复习笔记二

#1.类型转换问题

        Java为强类型语言,故在进行运算时会用到类型转换

        在进行类型转换时,一般是用低精度数据向高精度数据转换,

转换数据表如下

         低---------------------------------------------------------------------------------------------------------->高

        byte -> short -> char -> int -> long -> float -> double

        运算时,不是直接进行运算,而是先转化为同一类型后进行计算。

        类型转换又分为强制转换(在需要转换的数据前加上转换类型进行转换)和自动转换(在输入输出时,底层自动将数据转换为需要的数据类型)。

        *注:  

        上图所示的操作,即一个很经典的类型转化问题,

        System.out.println(""+a+b); 的输出结果为1011,即此时a和b都转化为String类型数据,且通过+将其连接在了一起,得出1011。而 System.out.println(a+b+""); 的输出结果为21,即此时a和b仍为int类型数据,通过+将其求和后,得出21。

        一些小细节:

        1.不能对布尔类型进行转换

        2.不能将对象类型进行不相干的转换

        3.强制转换时,应注意经度问题

        如下图:

                        

                                   

        可以看到不做类型转换,此时的输出结果类型为int,它舍去小数点后,只保留了整数位,在这种时候就一定要认真考虑类型转换问题,用double类型将结果完整表示。

        4.jdk7中,数据如太大,可以用下划线分割,且在输出时,下划线是不显示的,可以视作

        1000000000000 ==1_0000_0000_0000

#2.变量类型

        变量可以分为局部变量,实例变量和类变量:

        根据他们的作用范围不用来区分,

        在一个未实例化未具体化的类中,用static声明的变量,称为类变量

        在局部代码中声明的变量,该变量必须声明和初始化值,称为局部变量

        实例化,具体化了一个类,此时这个类中的变量,未初始化值,默认为空,有初始值,则值确定,这个变量称为实例变量。

#3.常量

        初始化后不再改变值,不会变动的值。可以理解它是一种特殊的变量,它的值被设定后,程序运行过程中不允许再改变。

        用修饰符 final 常量名 = 值;来表示。且一般使用大写字符来表示常量名!修饰符没有顺序,同时出现时不用纠结它们的顺序。

#3.变量的命名规范

命名规范和代码规范对当代程序员来说十分重要,所写的代码不仅是要让它运行起来,更是为了方便和其他人合作共赢。现在比较规范的代码是阿里的代码规范手册,多看多写多记,从开始就养成一个好的习惯。

        提供一些小的技巧:

        变量名自定义时,要尽量清晰明了,做到看到命名就知道数据含义:

        命名时,保持首字母小写和驼峰结构(即两边低中间高的结构,例如lastName,birthDay)

#4.运算符

算术运算符:+、-、*、/、%、++,--

赋值运算符: =

关系运算符 :<、>、<=、>=、==、!=instanceof(测试一个对象是否为一个类)

逻辑运算符:&&、||、!

位运算符:&、|、^、<<、>>(算术移动)、>>>(无符号移动/逻辑移动)

        可以回忆一下计算机组成原理中的原码,反码,补码操作,位运算是一个高效的运算过程,在思考一些acm或者实际运用时非常实用。

条件运算符: XX?Y:N

扩展赋值运算符:+=、-=、*=、/=

#5.自增自减运算的先后性

在处理自增自减的运算时,要注意区分是先自增再赋值,还是先赋值再自增。

结果如下:

#6.包机制

java提供包机制来更好的管理项目与解决一些类目冲突问题,一般利用公司的域名倒置作为包名。

导入包用于使用,导入使用import package 语句

可以回忆一下DNS解析域名的过程,发送DNS解析命令,从根域名服务器逐级向下寻找,直到将域名解析为唯一的ip,倒置的原因是因为假如项目上线服务器,DNS就会按照根域名到最底层域名的顺序解析,这个顺序刚好对于域名的逆序。

        

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值