第一次写博客哈,各位大侠要多多指教。
这里主要浅谈一下关于java开发工程师面试经验。
首先是笔试题。笔试题通常考察的是基础知识点,就是平常大家看到的一些细微的知识点。
印象比较深的
1.HashTable与HashMap的区别
首先,两者都实现了Map接口,HashTable是继承java1.2的类Distionary,不允许有null值和null值,具线程安全;HashMap允许有null键和null值,
线程不安全,但是效率相对要高。除此两点之外,两者其他都差不多。
还有一点:HashMap将HashTable里面的contains方法去掉了,改成了containsValue和containsKey,因为contains容易让混淆。
2.switch..case 结构中,case 后面没有break语句的话,会一直往下执行至default
例子:
int a = 1;
switch(a){
case 0 :System.out.println(0);
case 1:System.out.println(1);
case 2:System.out.println(2);
default:System.out.println(3);
}
结果输出:
1
2
3
3.java标识符
变量名不能是 java中的关键字 保留字
可以由字母、下划线、$、数字组成,但是只能以字母、下划线、$符号开头。
4.常考字符串里面的方法
既然String类是常用的类 就应该掌握好它的方法
比如:
截取子字符串:substring(beginIndex,endIndex);
substring(beginIndex);
获得指定元素第一次出现的下标:indexOf(int ch);
获得子字符串在此字符串的第一次出现的索引,并从该索引开始:indexOf(String str,int fromIndex);
拆分字符串:split(",") 按照逗号拆分字符串
split(String regex,int limit) 根据匹配的给定的正则表达式来拆分此字符串 最终返回的是字符串数组
去掉前部和尾部的空格:"java".trim();
5.数组 list集合 set集合之间的转换
list-->数组: String[] strArry = list.toArray(new String[0]); //假设list存的String类
数组-->list : List<E> list = new ArrayList<E>(); list.add(Arrays.asList(objs));//objs是数组
set-->list : List<E> list = new ArrayList<E>(set);
list-->set : HashSet set = new HashSet(list);//将list集合的元素去重
---恢复内容结束---