虽然申请博客已经有一段时间了,却是第一次写博客,有点激动,不知道该写些什么,刚好大三老学姐正值找实习工作之际,每天都会刷一点题,现在在看Java程序员面试笔试宝典一书,刚好把里面的题每天总结5道,写在博客里,一来自我督促,保持每天都会刷题,二来自我加深印象,三来可以省去大家的整理时间,如果能对朋友们有那么一点点的帮助,我也会开心很久的小白渣渣,欢迎大家指正,也欢迎转发给需要的小伙伴们,只需指明出处就好!
啦啦啦,每天进步一点点
正文正文正文啦啦啦啦:
Java基础知识:
41,下列程序的运行结果是什么?
public class Test{
public static void main(String[] args) {
byte a = 5;
int b = 10;
int c = a>>2+b>>2;
System.out.println(c);
}
}
参考答案:0 。由于“+”的优先级比“>>”高,因此程序中的表达式等价于a>>(2+b)>>2,相当于a>>12>>2,因此运行结果为0 。
42,Math.round(6.4)=?
Math.round(-6.4)=?
Math.ceil(6.4)=?
Math.ceil(-6.4)=?
Math.floor(6.4)=?
Math.floor(-6.4)=?
Math.round(11.5)等于多少?
Math.round(-11.5)等于多少?
参考答案: 6; -6 ; 7.0 ; -6.0 ; 6.0 ; -7.0 ;12 , -11
解析:Math.round方法(环绕):先+0.5,再向下取整
Math.ceil方法(天花板):向上取整(若是正数,则直接“入”,若是负数,则直接“舍”)
Math.floor方法(地板):向下取整(若是正数,则直接“舍”,若是负数,则直接“入”)
43,public classTest{
public static void main(String[] args){
int i = 1;
System.out.println(i+++i++);
System.out.println(“i=”+i);
System.out.println(i+++++i);
System.out.println(“i=”+i);
System.out.println(i+++i+++i++);
System.out.println(“i=”+i);
}
}
程序运行结果为:
3
i = 3
8
i = 5
18
i = 8
44,假设x=1,y=2,z=3,则表达式y+=z--/++x的值是()
A,3 B,3.5 C,4 D,5
参考答案:A。y=y+(z--/++x)即y=2+3/2=2+1=3。
45,在Java语言中,下列关于字符集编码(Character Set Encoding)和国际化(i18n)的叙述,哪些是正确的是()
A, 每个中文字符占用2Byte,每个英文字符占用1Byte
B, 假设数据库中的字符是以GBK编码的,那么显示数据库数据的网页也必须是GBK编码的
C, Java的char类型,以UTF-16Big Endian的方式保存一个字符
D,实现国际化应用常用的手段是利用ResourceBundle类
参考答案:A、D。
1)在Java语言中,默认使用的Unicode编码方式,即每个字符占用两个字节。String存储为,英文占用一个字符,中文占用两个字符。所以,A,√,C,×。
2)数据库与web页面可以有各自的编码,二者没有必然的关系。所以,B,错。
3)ResourceBundle是一个资源处理类,可以经常在国际化应用中使用。所以,D,√。
注:参考Java程序员面试笔试宝典(PS:这里只是总结摘抄一部分题,建议有精力的同学可以去看看书哈,那里更全面。)