Java基础部分经典习题

1.  java.util.Comparator是比较器接口,如果我们需要控制某个类的次序并且该类本身不支持排序,那么就可以建立一个类比较器来进行排序,实现方式很简单只需要实现java.util.Comparator接口。


java.util.Comparator接口只包括两个函数,它的源码如下:

package java.util;    

public interface Comparator<T> {    

    int compare(T o1, T o2);    

    boolean equals(Object obj);    

}    


1)若一个类要实现java.util.Comparator接口:它一定要实现int compare(T o1, T o2) 函数,而另一个可以不实现boolean equals(Object obj) 函数


2)int compare(T o1, T o2) 是比较o1和o2的大小


如果返回值为负数意味着o1比o2小,否则返回为零意味着o1等于o2,返回为正数意味着o1大于o2

2.  String类为什么是final的?

答案一:String类型是对象类型,在静态方法下必须调用静态的方法或者值,如果非静态化必须实例化,

            main函数是static的,所以string和其他类型一致可以直接被调用,不会报错的原因;

答案二:主要考虑到安全和效率的缘故,若String允许被继承,那么他的高度使用率会降低程序的性能,因此String被定义为final;





java.util.Comparator是比较器接口,如果我们需要控制某个类的次序并且该类本身不支持排序,那么就可以建立一个类比较器来进行排序,实现方式很简单只需要实现java.util.Comparator接口。


java.util.Comparator接口只包括两个函数,它的源码如下:

package java.util;    

public interface Comparator<T> {    

    int compare(T o1, T o2);    

    boolean equals(Object obj);    

}    


1)若一个类要实现java.util.Comparator接口:它一定要实现int compare(T o1, T o2) 函数,而另一个可以不实现boolean equals(Object obj) 函数


2)int compare(T o1, T o2) 是比较o1和o2的大小


如果返回值为负数意味着o1比o2小,否则返回为零意味着o1等于o2,返回为正数意味着o1大于o2


java.util.Comparator是比较器接口,如果我们需要控制某个类的次序并且该类本身不支持排序,那么就可以建立一个类比较器来进行排序,实现方式很简单只需要实现java.util.Comparator接口。


java.util.Comparator接口只包括两个函数,它的源码如下:

package java.util;    

public interface Comparator<T> {    

    int compare(T o1, T o2);    

    boolean equals(Object obj);    

}    


1)若一个类要实现java.util.Comparator接口:它一定要实现int compare(T o1, T o2) 函数,而另一个可以不实现boolean equals(Object obj) 函数


2)int compare(T o1, T o2) 是比较o1和o2的大小


如果返回值为负数意味着o1比o2小,否则返回为零意味着o1等于o2,返回为正数意味着o1大于o2


猜你喜欢

转载自blog.csdn.net/weixin_42121296/article/details/80576432