首页 > 代码库 > java基础题

java基础题

1.java编译运行过程---能画图详解

2.JDK、JRE、JVM三者关系

3.8大基本类型以及取值范围--补码的介绍https://wenku.baidu.com/view/d17dd4ba1a37f111f1855b10.html

4.基本类型间的转换

5.switch从jdk1.7开始支持字符串做为表达式:原理http://blog.csdn.net/queenjade/article/details/44778653

6.初始化数组:

注意:

int[] a = new int[]{1,23};
int[] b= {1,2};
int[] c;
c = new int[5];

如果写成了:

int[] a = new int[2]{1,23};

int[] c;
c = {1,2};

则是错误的写法。

数组复制:System.arraycopy(src, srcPos, dest, destPos, length);以及Arrays.copyOf(original, newLength);

 

StringBuilder的一些方法要熟练掌握。

String、StringBuilder、StringBuffer区别

字符串比较:

 String s4 = "123abc";和String s5 = "123"+"abc";这两个是相同的,它们是字面量直接相加。因此是可以的。而如果

String s6 = "123";
String s7 = s6+"abc";

则s7和s4是不同的。

重写equals方法代码熟练掌握。

equals和==区别。

包装类是不可变类。注意八种包装类的基本类型以及父类的区别。

包装类的常用方法。

自动拆箱和装箱的代码实现原理。Integer.valueOf(100);int a = b.intValue();

SimpleDateFormat的方法:SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:ss:mm");Date date = sdf.parse(string);String str = sdf.format(date); 

Calendar的方法的应用。

集合常用方法要熟练掌握。比如isEmpty().

集合和迭代器之间的联系以及代码实现。

迭代器在删除的时候不能使用集合的remove去删除,必须使用迭代器的remove方法。

泛型的考点暂时不清楚。

list.get(index)和list.set(index,element)元素的应用。比如list.set(1,list.set(3,list.get(1)))则表示将1和3位置元素互换,注意,set方法会将原来位置的元素返回。

list转换为数组:

String[] strings = (String[]) list.toArray();必须强转,否则报错。

String[] str = list.toArray(new String[]{});

数组转换为集合:

List<String> list = Arrays.asList(array);

注意:从数组转换过来的集合,是不能添加元素的也不能删除元素,因为这会导致数组扩容或缩容,这就无法表示原来的数组。但是,可以修改元素的值。

Comparable接口:比较的类比如Cell必须实现该接口,然后重写其调用的方法。int compareTo(Cell o){};Collections.sort(cells);比较结果返回值,>0 <0 =0

Comparator接口:直接写个比较器的类实现Comparator接口接口,重写其方法int compare(T t1,T t2){};然后,Collections.sort(cells,comparatorClass);

注意,在Comparator中声明其类型为String

class MyComparator implements Comparator<String>{
/**
* 比较规则:字符多的大
*/
public int compare(String o1, String o2) {
return o1.length()-o2.length();
}
}

Map以及HashMap的面试。

java基础题