Java面试题之简单编程题
这里记录一些找工作时笔试或机试会出的编程题,比较简单,实际也是复习一些基础。
1、将一个数组中的数进行倒序输出
public class Test02 {
public static void main(String[] args) {
Integer arr[] = {212,4,662,123,78,345,34,56,85,211};
Arrays.sort(arr, (x,y) -> Integer.compare(y, x));
System.out.println(Arrays.toString(arr));
}
}
使用java本身提供的Arrays.sort()方法,用Lambda表达式实现Comparable的compare()方法
2、写一个懒汉式单例
public class Singleton14 {
private static Singleton14 instance;
private Singleton14() {
}
public static Singleton14 getInstance() {
if(instance == null) {
//有线程安全问题,需要加锁
synchronized(Singleton14.class) {
if(instance == null) {
instance = new Singleton14();
}
}
}
return instance;
}
public static void main(String[] args) {
System.out.println(Singleton14.getInstance());
}
}
说明:单例需满足以下几点
(1)构造器私有化
(2)自行创建,且用静态变量保存
(3)向外提供这个实例
比较忙,待添加…
这篇博客分享了两道简单的Java编程题,一是使用Arrays.sort()方法配合Lambda表达式实现数组元素的倒序输出,二是实现了一个线程安全的懒汉式单例。题目适合面试或复习基础知识,单例设计模式需满足构造器私有化、静态变量保存实例及对外提供获取实例的方法。

808

被折叠的 条评论
为什么被折叠?



