Java面试题-Java核心基础-第二天(基本语法)

目录

一、注释有几种形式

二、标识符与关键字的区别

三、自增自减运算符

四、移位运算符

五、continue、break、return的区别

六、a = a+b 与 a+=b的区别

七、3*0.1 == 0.3 返回什么?

八、能在switch中使用String吗


一、注释有几种形式

注释除了有其他编程语言有的单行注释和多行注释之外,还有其Java特有的文档注释

文档注释能够使用javadoc命令就能就将注释写在生成的文档里面

常见的文档注释,可以使用的注解有:

@author、@since、@date、@param、@return等

二、标识符与关键字的区别

标识符就是代码中对一些东西起的一个名字,比如对类、方法、接口等等一切的名字都是标识符

而其中有些标识符是系统就已经规定好了,程序员不能再拿来使用,这就叫关键字,也就是简单来说就是特殊的标识符,常见的关键字有:

几乎所有编程语言都有的

1. 数据类型的:

int、byte、short等

2. 流程控制的

for、if、else、break、continue、switch case等

3. 面向对象语言特有的

1. 权限修饰符

private、protected、public

2. 类、方法、变量的修饰符

abstract、static、final、synchronized、class、interface、enum、extends、implements、transient、volatile...

2. 异常处理

try catch finally throw throws

3. 包管理

package import

等等.......

三、自增自减运算符

分为前自增和后自增前自减后自减

前与后的区别是:前是先运算再拿来用,而后是先使用后运算

比如说 i = 3  打印i++的结果是3 而打印++i的结果是4  但最终i的值是4

四、移位运算符

移位运算符就是将操作对象看作是二进制,然后将其对应位置上面的0101进行移动

常见的移位运算符有 << 左移 >> 右移 另外Java中还有一个无符号由于 >>>

<<左移就是将二进制位置上的数字往左边进行移动   在不溢出的情况下  可以看作左移了多少位就是  乘上 2的几次方  而右移则相反

右移的话 如果当前数是正数那么最高位也就是0 那么左边腾出来的就用0来填充  负数就用1来填充

而无符号右移就是无论最高位是0 还是1 都是用0来进行填充

注意:其实支持移位的类型只有int和long类型  对byte、short、char移位时,会先将其转为int类型

而且如果移的位数超过了数值所占的位数的话  就会将移动的位数与长度进行取余操作得到最终的移的位数

五、continue、break、return的区别

continue、break是在循环中使用   continue是停止此次循环  而break则是结束当前整个循环

return 哪里都可以用,作用就是终止执行  注意:return后面不能再接语句

补充:

六、a = a+b 与 a+=b的区别

a = a+b 不能作a + b是什么类型就还是什么类型  而a+=b 能自动的就将a+b的结果转为a的类型

例如byte a = 127  byte  b = 127 

那么  a = a +b 就会报错 因为byte+ byte的结果会转为int 而a是byte类型  int赋值给byte类型就会编译报错 而 a+=b就不会

七、3*0.1 == 0.3 返回什么?

返回false  因为 有些浮点数不能精确的表达出来

八、能在switch中使用String吗

能,再jdk7中开始支持,内部使用的是String的hashcode方法计算出来的hash值来比较

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值