
java面试基础
「已注销」
这个作者很懒,什么都没留下…
展开
-
Java中equals和==的区别
写在前面面试题:请解释字符串比较之中“==”和equals()的区别?转载 2017-02-19 22:38:10 · 231 阅读 · 0 评论 -
15个Java多线程面试题及回答
15个Java多线程面试题及回答1)现在有T1、T2、T3三个线程,你怎样保证T2在T1执行完后执行,T3在T2执行完后执行?这个线程问题通常会在第一轮或电话面试阶段被问到,目的是检测你对”join”方法是否熟悉。这个多线程问题比较简单,可以用join方法实现。2)在Java中Lock接口比synchronized块的优势是什么?你需要实现一个高效的缓存,它允许多个用户读,但只允许一个用户写,原创 2017-06-03 15:21:33 · 345 阅读 · 0 评论 -
java多线程中的sleep()方法与wait()方法的区别
sleep()是使线程暂停执行一段时间的方法。wait()也是一种使线程暂停执行的方法,例如,当线程交互时,如果线程对一个同步对象x发出一个wait()调用请求,那么该线程会暂停执行,被调用对象进入等待状态,直到被唤醒或等待时间超时 具体而言,sleep()方法与wait()方法的区别主要表现在一下几个方面:1)原理不同。sleep()方法是Thread的静态方法,是线程用来控制自身流原创 2017-06-02 11:14:31 · 1659 阅读 · 2 评论 -
数据库(手写选出一个公司年龄最大的100个员工)
SELECT TOP 100 雇员表.* FROM 雇员表 ORDER BY 雇员表.AGE DESC原创 2017-04-25 20:20:18 · 1746 阅读 · 0 评论 -
Hashtable/HashMap与key/value为null的关系
大家都知道Hashtable与HashMap的三大区别,其中有一条则是HashMap可以存储一个Key为null,多个value为null的元素,但是Hashtable却不可以存储。究竟是为什么?下面看一下源代码:HashMap.class: // 此处计算key的hash值时,会判断是否为null,如果是,则返回0,即key为null的键值对 // 的hash为0。因此转载 2017-05-09 23:55:17 · 967 阅读 · 0 评论 -
数组和链表的区别
数组静态分配内存,链表动态分配内存;数组在内存中连续,链表不连续;数组元素在栈区,链表元素在堆区;数组利用下标定位,时间复杂度O(1),链表定位元素时间复杂度O(n);数组插入和删除的时间复杂度O(n),链表的时间复杂度O(1)。原创 2017-04-25 18:43:08 · 262 阅读 · 0 评论 -
java笔记--关于线程同步(7种同步方式)
关于线程同步(7种方式)为何要使用同步? java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查), 将会导致数据不准确,相互之间产生冲突,因此加入同步锁以避免在该线程没有完成操作之前,被其他线程的调用, 从而保证了该变量的唯一性和准确性。 1.同步方法 即有synchronized关键字修转载 2017-05-12 15:35:09 · 265 阅读 · 0 评论 -
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。/** * Definition for binary tree * public class TreeNode { * int val;原创 2017-04-15 19:47:44 · 1141 阅读 · 0 评论 -
输入一个链表,从尾到头打印链表每个节点的值。
/*** public class ListNode {* int val;* ListNode next = null;** ListNode(int val) {* this.val = val;* }* }**/import java.util.*;pub原创 2017-04-15 12:22:46 · 312 阅读 · 0 评论 -
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
public class Solution { public String replaceSpace(StringBuffer str) { //从后往前,先确定字符串的长度和替换后的长度 int len=str.length(); int count=0; for(int i=0;i if(s原创 2017-04-14 22:53:33 · 2612 阅读 · 0 评论 -
题目描述 Given n points on a 2D plane, find the maximum number of points that lie on the same straight
import java.util.*;public class Solution { public int maxPoints(Point[] points) { if(points.length return points.length; int flag=0; for(int i=0;i原创 2017-04-14 16:27:18 · 959 阅读 · 0 评论 -
快排java实现
public class Sort {public static void main(String[] args) { int a[]={1,4,54,6,76,87,889,6,87,5};partition(a, 0, 9); for(int i=0;i System.out.println(a[i]); }} public static void part原创 2017-04-18 20:30:51 · 475 阅读 · 0 评论 -
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
import java.util.*;import java.util.Stack;public class Solution { Stack stack1 = new Stack(); Stack stack2 = new Stack(); public void push(int node) { stack1.push原创 2017-04-18 11:50:18 · 347 阅读 · 0 评论 -
数据库内外网交换怎么做的,如果交换给你做,你怎么做
怎么实现内外网的数据同步,数据库是Oracle的.项目已经分别在内网和外网上线。但是现在数据不同步。也就是说从外网中录入的数据,不能在内网中查看。反之亦然,现在需要实现数据同步。将内网和外网的数据显示为一样 方案一、外网需要同步的表加上触发器,保存在临时表。 2、task定时导出临时表记录,修改已导出记录的状态,上传到类似ftp目录上。 3、内网task通转载 2017-03-16 12:08:13 · 6726 阅读 · 0 评论 -
Java中,&&与&,||与|的区别
java中,很多人都不知道&与&&,|与||的区别。&,&&:(与,短路与):一样的地方就是二者执行最后的结果是一样的,但是执行的过程有区别,对于&:无论&左边是否为false,他都会继续检验右边的boolean值。对于&&:只要检测到左边Boolean值为false时,就会直接判断结果,不会在检验右边的值(因为"与"有一个false最后结果就是false了)所以&转载 2017-03-07 17:39:33 · 287 阅读 · 0 评论 -
Object类有哪些公用方法?
Object是所有类的父类,任何类都默认继承Object。clone保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出CloneNotSupportedException异常equals在Object中与==是一样的,子类一般需要重写该方法hashCode该方法用于哈希查找,重写了equals方法一般都要重写has转载 2017-02-19 22:58:21 · 259 阅读 · 0 评论 -
希尔排序的实现
直接插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中的适当位置,直到全部记录插入完成为止。 设数组为a[0…n-1]。1. 初始时,a[0]自成1个有序区,无序区为a[1..n-1]。令i=12. 将a[i]并入当前的有序区a[0…i-1]中形成a[0…i]的有序区间。3.转载 2017-06-20 18:29:49 · 280 阅读 · 0 评论