Java篇——数据类型,基本算法,异常(附面试题)

我的天空里没有太阳,总是黑夜,但并不暗,因为有东西代替了太阳。虽然没有太阳那么明亮,但对我来说已经足够。凭借着这份光,我便能把黑夜当成白天。我从来就没有太阳,所以不怕失去。

数据类型和拆箱装箱

数据类型分为基本数据类型和引用数据类型

基本数据类型:

     
在java中有一个设计的原则”一切皆对象”,Java中的基本数据类型就完全不符合这种设计思想,因为基本数据类型并不是引用数据类型,所以java中为了解决这个问题在JDK1.5以后引入了基本数据类型的包装类。

 

拆箱和装箱

将一个基本数据类型转换为包装类,那么这样的操作称为装箱操作。

将一个包装类转换为一个基本数据类型,这样的操作称为拆箱操作。

相关面试题

•Integer i1= new Integer(10);和Integer i2=10;的区别?

前者会创建对象,存储在堆中,而后者因为在-128到127的范围内,不会创建新的对象,而是从IntegerCache中获取的。那么Integer a = 128, 大于该范围的话才会直接通过new Integer(128)创建对象,进行装箱。

•Integer i1= 100;Integer i2= 100;Integer i3= 200;Integer i4= 200;

System.out.println(i1==i2);

System.out.println(i3==i4);

输出的结果是什么?

        

-128到127的范围内,Integer c = 128, 大于该范围的话才会直接通过new Integer(128)创建对象,进行装箱。

源码:

 

Java基本算法

在java的底层中 对我们提供了几种基本算法分别是:

冒泡排序 选择排序 插入排序 二分查找

•冒泡排序算法

冒泡排序算法的运作如下(从后往前)比较相邻的元素,如果第一个比第二个大,就交换他们两个。

对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。

针对所有的元素重复以上的步骤,除去最后一个

持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要进行比较

相同元素的前后顺序并没有改变,所以冒泡排序是一种稳定排序算法

•选择排序算法

每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素拍完。选择排序是不稳定的排序方法。

•排序过程:3,45,14,58,46,90,25

•3 45 14 58 46 90 25 第一轮 6次

•3 14 45 58 46 90 25 第二轮 5次

•3 14 25 58 46 90 45 第三轮 4次

•3 14 25 45 58 90 46 第四轮 3次

•3 14 25 45 46 90 58 第五轮 2次

•3 14 25 45 46 58 90 第六轮 1次

•插入排序

每轮将一个待排序的记录,按其顺序码大小插入到前面已经排序的子序列的合适位置(从后向前找到合适位置),直到全部插入排序完为止。

•二分查找

二分查找(折半查找):前提是在已经排好序的数组中,通过将待查找的元素与中间索引值对应的元素进行比较,若大于中间索引值对应的元素则去右半部分,否则去左半部分。依此类推。直到找到为止,找不到返回一个负数。

 

 

异常

异常类结构图:

常见异常:

•异常分为两种:检测时异常和非检测时异常

•EOFException                                

•对象流异常。当输入过程中意外到达文件或流的末尾时。       

•FileNotFoundException

•文件没有找到异常

•ClassCastException

•强制类型转换异常

•SQLException

•对数据库进行操作时出现的异常

•IOException

•使用io流时可能出现的异常

•ArrithmeticException

•除0时出现的异常

•MissingResourseException

•读取不到资源文件的异常

•ClassNotFoundException

•找不到指定文件的异常

•NullPointerException

•空指针异常

•IllegaArgumentException

•此异常表明向方法传递了一个不合法或不正确的参数ArrayIndexOutOfException

•下标越界异常

•UnkownTypeException

•遇到未知类型的异常

异常的一些关键字:

•try

•catch

•finally

•throw

•thorws

•Exception

猜你喜欢

转载自blog.csdn.net/Hanjiangdudiao11/article/details/81095318
今日推荐