- 浏览: 42717 次
- 性别:
- 来自: 北京
最新评论
-
tianzizhi:
aniu2008 写道迅雷面试回来,用了整整一下午(不知道怎么 ...
迅雷亲历面经:笔试+上机+面试(完整JAVA面试题求解大讨论) -
luobin23628:
Pattern.compile("[ab3]&quo ...
迅雷亲历面经:笔试+上机+面试(完整JAVA面试题求解大讨论) -
zlandjj:
用比较垃圾的办法写出来了
public class TetM ...
迅雷亲历面经:笔试+上机+面试(完整JAVA面试题求解大讨论) -
thinkingame:
aniu2008 写道迅雷面试回来,用了整整一下午(不知道怎么 ...
迅雷亲历面经:笔试+上机+面试(完整JAVA面试题求解大讨论) -
ww362034710:
tomcat 记得是150个吧
迅雷亲历面经:笔试+上机+面试(完整JAVA面试题求解大讨论)
迅雷面试回来,用了整整一下午(不知道怎么说了,其中等待时间都快2小时了),自己感觉笔试和上机还可以,但技术面谈这一关答得不太好,现在再次感觉互联网公司与一般软件公司的区别了,其中一点就是互联网应用在性能上要求很高,谈了一个小时大部分题目感觉都在谈论性能问题,自己在方面一直是弱项,汗啊:(
仔细回忆了一下整个面试过程的题目,记录下来,希望大家多多给点意见讨论下啊
一、笔试题:
A)JAVA基础多项选择题,比较简单,略
B)问答:
1)ajax原理、如何实现刷新数据及优点?
2)门面模式的解释、适用场合?
3)写6个linux常用命令?
4)SQL语句题,较简单
C)编程:
1)有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
二、上机题:
Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
三、面试题:
1、说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
2、用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
3、mysql支持事务吗?DB存储引擎有哪些?
4、mvc原理,mvc模式的优缺点,如果让你设计你会怎么改造MVC?
5、hibernate支持集群吗?如何实现集群?
6、tomcat 最多支持并发多少用户?
7、map原理,它是如何快速查找key的?map与set区别?
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
10、Spring如何实现IOC与AOP的,说出实现原理?
期待大家的探讨,共同提高,多谢
哈哈,看到你的帖子,我想到一个更简单的方法,人工识别:
显然可以证明,这样耗时最少,效率最高^_^
该答案得分1000分
问题8:
假设用户信息文件仅存在用户信息:
用户A:姓名,性别,生日,……
用户B:姓名,性别,生日,……
用户Z:姓名,性别,生日,……
用户D:姓名,性别,生日,……
……
看电影纪录仅存在“看过”电影的用户纪录,每次一条:
用户A:电影a
用户Z:电影c
用户A:电影d
……
处理思路:
1、用较简单的数据存储方式预处理5000万条用户看电影的记录,使每个用户最多仅生成一条记录,生成中间文件“TEMP”:
用户A:电影a,电影d
用户Z:电影c
……
2、将TEMP文件读入内存,此时数据量应小于5000万,极端情况下等于5000万,1G内存够用。再顺序读入1亿用户基本信息(顺序处理所占用的内存忽略不计),将当前读入的用户信息与内存中的TEMP数据进行匹配查找,查找结果存入合并文件。
仅思考了一下思路,这个思路下可以满足功能要求和内存限制,未过多考虑性能。性能方面考虑应着重在5000万数据的预处理以及第2步的匹配过程中。
问题9:如果是数据库,一个SQL语句可以满足功能要求,但基础数据量较大,估计无法满足性能要求,尤其是有一定并发的情况下。我们一般处理这样类似的需求时,一定有其他数据表专门存储。如建立一个表专门存储用户看电影的数量,每当生成一条用户看电影的日志数据时,这个表对应的数据条目+1,这样在需要的时候仅需要简单查询即可。实际操作时可通过触发器和存储过程自动处理。
这是种好方法,呵呵
我想没那么简单,如果真的是这样,只要会java的基本上都能写出来,何况是工作了几年的lz呢
你想复杂了,JDK是专家写的,这些东西别人已经考虑到了~
这是种好方法,呵呵
我想没那么简单,如果真的是这样,只要会java的基本上都能写出来,何况是工作了几年的lz呢
在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
----可以参考 位图索引的原理
关键是表很大,索引也无能为力。
策略性分表是一个方法。大表化小或化区
在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
----可以参考 位图索引的原理
深有同感.
哈哈,看到你的帖子,我想到一个更简单的方法,人工识别:
显然可以证明,这样耗时最少,效率最高^_^
用事实说话,test2小胜
楼主估计在逗他们玩呢, String在JAVA里不能直接用作char数组~ 不能这么遍历~
唉,那个代码是随手写的,重要的是思想,我把调试好的代码贴一下吧:
思想看懂了。只是刚接触java。有点教条
用线程同步
仔细回忆了一下整个面试过程的题目,记录下来,希望大家多多给点意见讨论下啊
一、笔试题:
A)JAVA基础多项选择题,比较简单,略
B)问答:
1)ajax原理、如何实现刷新数据及优点?
2)门面模式的解释、适用场合?
3)写6个linux常用命令?
4)SQL语句题,较简单
C)编程:
1)有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
二、上机题:
Java上机实现统计某一目录下每个文件中出现的字母个数、数字个数、空格个数及行数?
三、面试题:
1、说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
2、用java怎么实现有每天有1亿条记录的DB存储?mysql上亿记录数据量的数据库如何设计?
3、mysql支持事务吗?DB存储引擎有哪些?
4、mvc原理,mvc模式的优缺点,如果让你设计你会怎么改造MVC?
5、hibernate支持集群吗?如何实现集群?
6、tomcat 最多支持并发多少用户?
7、map原理,它是如何快速查找key的?map与set区别?
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
10、Spring如何实现IOC与AOP的,说出实现原理?
期待大家的探讨,共同提高,多谢
评论
97 楼
suciudeman
2010-03-30
NeighborWolf 写道
linyvlu 写道
StringBuilder sb = new StringBuilder("6sabcsssfsfs33"); sb.delete(2, 4); sb.delete(sb.length()-2, sb.length());
哈哈,看到你的帖子,我想到一个更简单的方法,人工识别:
StringBuilder sb = new StringBuilder("6sabcsssfsfs33"); //使用“眼睛”去掉ab3 System.out.println("6scsssfsfs");
显然可以证明,这样耗时最少,效率最高^_^
该答案得分1000分
96 楼
vjwz
2010-03-29
pan_java 写道
8、描术算法,如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。内存只有1G???
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
怎么处理????
9、在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
怎么处理????
问题8:
假设用户信息文件仅存在用户信息:
用户A:姓名,性别,生日,……
用户B:姓名,性别,生日,……
用户Z:姓名,性别,生日,……
用户D:姓名,性别,生日,……
……
看电影纪录仅存在“看过”电影的用户纪录,每次一条:
用户A:电影a
用户Z:电影c
用户A:电影d
……
处理思路:
1、用较简单的数据存储方式预处理5000万条用户看电影的记录,使每个用户最多仅生成一条记录,生成中间文件“TEMP”:
用户A:电影a,电影d
用户Z:电影c
……
2、将TEMP文件读入内存,此时数据量应小于5000万,极端情况下等于5000万,1G内存够用。再顺序读入1亿用户基本信息(顺序处理所占用的内存忽略不计),将当前读入的用户信息与内存中的TEMP数据进行匹配查找,查找结果存入合并文件。
仅思考了一下思路,这个思路下可以满足功能要求和内存限制,未过多考虑性能。性能方面考虑应着重在5000万数据的预处理以及第2步的匹配过程中。
问题9:如果是数据库,一个SQL语句可以满足功能要求,但基础数据量较大,估计无法满足性能要求,尤其是有一定并发的情况下。我们一般处理这样类似的需求时,一定有其他数据表专门存储。如建立一个表专门存储用户看电影的数量,每当生成一条用户看电影的日志数据时,这个表对应的数据条目+1,这样在需要的时候仅需要简单查询即可。实际操作时可通过触发器和存储过程自动处理。
95 楼
iooyoo
2010-03-25
不能用java内置字符串方法(indeOf,substring,replaceAll等)
自己实现遍历统计就是了
自己实现遍历统计就是了
94 楼
mercyblitz
2010-03-24
linghongli 写道
aniu2008 写道
wfwkiss 写道
public class GoodCode{ //假如有字符串“6sabcsssfsfs33” , //用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)? public void isGood(){ String str = "6sabcsssfsfs33"; char c1 ='a'; char c2 ='b'; char c3 ='3'; char[] c = str.toCharArray(); StringBuilder sl = new StringBuilder(); for(char temp:c){ if(temp != c1 && temp !=c2 && temp !=c3) sl.append(temp); } System.out.println(sl.toString()); } public static void main(String[] args){ GoodCode g = new GoodCode(); g.isGood(); } }
这是种好方法,呵呵
我想没那么简单,如果真的是这样,只要会java的基本上都能写出来,何况是工作了几年的lz呢
你想复杂了,JDK是专家写的,这些东西别人已经考虑到了~
93 楼
linghongli
2010-03-24
aniu2008 写道
wfwkiss 写道
public class GoodCode{ //假如有字符串“6sabcsssfsfs33” , //用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)? public void isGood(){ String str = "6sabcsssfsfs33"; char c1 ='a'; char c2 ='b'; char c3 ='3'; char[] c = str.toCharArray(); StringBuilder sl = new StringBuilder(); for(char temp:c){ if(temp != c1 && temp !=c2 && temp !=c3) sl.append(temp); } System.out.println(sl.toString()); } public static void main(String[] args){ GoodCode g = new GoodCode(); g.isGood(); } }
这是种好方法,呵呵
我想没那么简单,如果真的是这样,只要会java的基本上都能写出来,何况是工作了几年的lz呢
92 楼
kingwolf543
2010-03-24
package com.jar.test.package1;
public class Worker implements Runnable {
/**
* @author ZHAOXIAOMING993
*
*/
static int count = 0;
static Object lock = new Object();
int index;
int pCount;
public Worker(int index) {
this.index = index;
}
public void run() {
synchronized (lock) {
for (;;) {
if (count % 3 == index) {
System.out.print(Thread.currentThread().getName());
count++;
pCount++;
lock.notifyAll();
if (pCount == 10){
break;
}
} else {
try {
lock.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
/**
* @param args
*/
public static void main(String[] args) {
new Thread(new Worker(0), "A").start();
new Thread(new Worker(1), "B").start();
new Thread(new Worker(2), "C").start();
}
}
public class Worker implements Runnable {
/**
* @author ZHAOXIAOMING993
*
*/
static int count = 0;
static Object lock = new Object();
int index;
int pCount;
public Worker(int index) {
this.index = index;
}
public void run() {
synchronized (lock) {
for (;;) {
if (count % 3 == index) {
System.out.print(Thread.currentThread().getName());
count++;
pCount++;
lock.notifyAll();
if (pCount == 10){
break;
}
} else {
try {
lock.wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
/**
* @param args
*/
public static void main(String[] args) {
new Thread(new Worker(0), "A").start();
new Thread(new Worker(1), "B").start();
new Thread(new Worker(2), "C").start();
}
}
91 楼
mercyblitz
2010-03-24
<div class="quote_title">aniu2008 写道</div>
<div class="quote_div">
<div class="quote_title">cranehovers 写道</div>
<div class="quote_div">
<div class="quote_title">aniu2008 写道</div>
<div class="quote_div">
<div class="quote_title">diaodou 写道</div>
<div class="quote_div">C 2) 可以用这个简单方法。<br>上机题是一样的方法,开个256的数组,count[256],表示每个字母,数字等的出现次数。<br>class Remove{ <br> public static void main(String args[]) { <br> String str="6sabcsssfsfs33; <br> boolean removeChars[256] = {true};<br> removeChars['a'] = false;<br> removeChars['b'] = false;<br> removeChars['3'] = false;<br> StringBuffer sb = new StringBuffer();<br> for (char ch: str) {<br> if (!removeChars[ch]) sb.append(ch);<br> }<br> String result = sb.toString();<br> } <br>}</div>
<br><br>高人啊,应该就是这个方法了<img src="/images/smiles/icon_idea.gif" alt="">
</div>
<p> </p>
<p>太强了 我看了好久才看懂 看来菜鸟和大牛区别就是不同……</p>
</div>
<br>哇,这个方法,确实好,效率还高,真是另类高人:)</div>
<p> </p>
<p> </p>
<p>AbstractStringBuilder#replace就可以的</p>
<p> </p>
<div class="quote_div">
<div class="quote_title">cranehovers 写道</div>
<div class="quote_div">
<div class="quote_title">aniu2008 写道</div>
<div class="quote_div">
<div class="quote_title">diaodou 写道</div>
<div class="quote_div">C 2) 可以用这个简单方法。<br>上机题是一样的方法,开个256的数组,count[256],表示每个字母,数字等的出现次数。<br>class Remove{ <br> public static void main(String args[]) { <br> String str="6sabcsssfsfs33; <br> boolean removeChars[256] = {true};<br> removeChars['a'] = false;<br> removeChars['b'] = false;<br> removeChars['3'] = false;<br> StringBuffer sb = new StringBuffer();<br> for (char ch: str) {<br> if (!removeChars[ch]) sb.append(ch);<br> }<br> String result = sb.toString();<br> } <br>}</div>
<br><br>高人啊,应该就是这个方法了<img src="/images/smiles/icon_idea.gif" alt="">
</div>
<p> </p>
<p>太强了 我看了好久才看懂 看来菜鸟和大牛区别就是不同……</p>
</div>
<br>哇,这个方法,确实好,效率还高,真是另类高人:)</div>
<p> </p>
<p> </p>
<p>AbstractStringBuilder#replace就可以的</p>
<p> </p>
90 楼
mercyblitz
2010-03-24
ppm10103 写道
ckn126 写道
看来我是要多学一点性能上的东西在去面试这样的公司比较可能性大一点
在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
----可以参考 位图索引的原理
关键是表很大,索引也无能为力。
策略性分表是一个方法。大表化小或化区
89 楼
zhangdp_neu
2010-03-24
解一下这个吧
有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
输出:ABCABCABCABCABCABCABCABCABCABC
有三个线程ID分别是A、B、C,请有多线编程实现,在屏幕上循环打印10次ABCABC…
package ThreadTest; import java.util.concurrent.Semaphore; /** * * @author zhangdepeng318@gmail.com * */ public class TestOderThread { private static Semaphore semaphore1 = new Semaphore(0); private static Semaphore semaphore2 = new Semaphore(0); private static Semaphore semaphore3 = new Semaphore(0); public Thread t1; public Thread t2; public Thread t3; public volatile boolean x1 = true, x2 = true, x3 = true; public TestOderThread() { t1 = new Thread() { public void run() { try { semaphore1.acquire();// 必须先获得 锁才可以继续,要等release释放的。 System.out.print("B"); semaphore2.release(); semaphore3.acquire(); x1 = false; } catch (InterruptedException e) { e.printStackTrace(); } } }; t2 = new Thread() { public void run() { System.out.print("A"); semaphore1.release(); x2 = false; } }; t3 = new Thread() { public void run() { try { semaphore2.acquire(); System.out.print("C"); semaphore3.release(); x3 = false; } catch (InterruptedException e) { e.printStackTrace(); } } }; } public void run() { t1.start(); t2.start(); t3.start(); } public static void main(String args[]) { TestOderThread t = new TestOderThread(); for (int i = 0; i < 10; i++) { t = new TestOderThread(); t.run(); //如果有一个为真 的话 就代表没有全部完成。 //采用繁忙等待模式 while (t.x1 || t.x2 || t.x3) { if (!t.x1&&!t.x2&&!t.x3) { //代表全部完成 //System.out.println(); break; }else{ //break; } } } } }
输出:ABCABCABCABCABCABCABCABCABCABC
88 楼
hellojinjie
2010-02-14
用信号量实现的,,,
class MyWorker implements Runnable { private static Semaphore[] semaphores = { new Semaphore(1), new Semaphore(0), new Semaphore(0) }; private int index = 0; private int count = 0; public MyWorker(int index) { this.index = index; } public static void main(String[] args) { new Thread(new MyWorker(0), "A").start(); new Thread(new MyWorker(1), "B").start(); new Thread(new MyWorker(2), "C").start(); } public void run() { for (;;) { try { semaphores[index].acquire(); System.out.println(Thread.currentThread().getName()); count++; semaphores[(index + 1) % 3].release(); if (count >= 10) break; } catch (InterruptedException e) { e.printStackTrace(); } } } }
87 楼
ppm10103
2010-02-12
ckn126 写道
看来我是要多学一点性能上的东西在去面试这样的公司比较可能性大一点
在1亿条用户记录里,如何快速查询统计出看了5个电影以上的用户?
----可以参考 位图索引的原理
86 楼
ckn126
2010-01-12
看来我是要多学一点性能上的东西在去面试这样的公司比较可能性大一点
85 楼
gdufsbobo
2010-01-11
哗,面试题很有深度,很多我都不会答。
84 楼
zhangguofeng
2009-12-29
giginet 写道
一般拒绝笔试的很多都是技术比较牛但理论基础比较差的,很多工作久的人都会有这种感觉。毕竟实际动手能力最重要,虽然理论也是必不可少的。
另外,想想一把年纪还要参加笔试,不能不说是技术人员的悲哀~~~想想都很窝火的,但又很无可奈何。
另外,想想一把年纪还要参加笔试,不能不说是技术人员的悲哀~~~想想都很窝火的,但又很无可奈何。
深有同感.
83 楼
NeighborWolf
2009-12-25
linyvlu 写道
StringBuilder sb = new StringBuilder("6sabcsssfsfs33"); sb.delete(2, 4); sb.delete(sb.length()-2, sb.length());
哈哈,看到你的帖子,我想到一个更简单的方法,人工识别:
StringBuilder sb = new StringBuilder("6sabcsssfsfs33"); //使用“眼睛”去掉ab3 System.out.println("6scsssfsfs");
显然可以证明,这样耗时最少,效率最高^_^
82 楼
egmacross
2009-12-16
test1中把hash数组取出去,没必要每次都建立,要不然就没意义了。
public static boolean[] removeChars;
public Test()
{
removeChars = new boolean[256];
removeChars['a'] = true;
removeChars['b'] = true;
removeChars['3'] = true;
}
public void test1()
{
char[] chars = "6sabcsssfsfs33".toCharArray();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < chars.length; i++)
{
if (!removeChars[chars[i]])
{
sb.append(chars[i]);
}
}
}
再试试
public static boolean[] removeChars;
public Test()
{
removeChars = new boolean[256];
removeChars['a'] = true;
removeChars['b'] = true;
removeChars['3'] = true;
}
public void test1()
{
char[] chars = "6sabcsssfsfs33".toCharArray();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < chars.length; i++)
{
if (!removeChars[chars[i]])
{
sb.append(chars[i]);
}
}
}
再试试
81 楼
wavesun
2009-12-15
import java.util.Arrays; import java.util.Date; import java.util.regex.*; public class DTest { public void test1(){ char[] chars="6sabcsssfsfs33".toCharArray(); boolean[] removeChars = new boolean[256]; removeChars['a'] = true; removeChars['b'] = true; removeChars['3'] = true; StringBuffer sb = new StringBuffer(); for (int i = 0; i < chars.length; i++) { if (!removeChars[chars[i]]) { sb.append(chars[i]); } } //System.out.println(sb.toString()); } public void test2(){ char[] chars="6sabcsssfsfs33".toCharArray(); StringBuffer sb=new StringBuffer(); for(int i=0;i<chars.length;i++){ if(chars[i]=='a'||chars[i]=='b'||chars[i]=='3'){ continue; } sb.append(chars[i]); } //System.out.println(sb.toString()); } public void test3(){ String regx="[^a|b|3]"; String temp="6sabcsssfsfs33"; Pattern p=Pattern.compile(regx); Matcher m=p.matcher(temp); StringBuffer sb=new StringBuffer(); while(m.find()) { sb.append(m.group()); } //System.out.print(sb); } public static void main(String args[]) { DTest dt=new DTest(); Date now1=new Date(); for(int i=0;i<100000;i++){ dt.test1(); } Date now2=new Date(); System.out.println(now2.getTime()+"-"+now1.getTime()+",共用:"+(now2.getTime()-now1.getTime())); Date now3=new Date(); for(int i=0;i<100000;i++){ dt.test2(); } Date now4=new Date(); System.out.println(now4.getTime()+"-"+now3.getTime()+",共用:"+(now4.getTime()-now3.getTime())); Date now5=new Date(); for(int i=0;i<100000;i++){ dt.test3(); } Date now6=new Date(); System.out.println(now6.getTime()+"-"+now5.getTime()+",共用:"+(now6.getTime()-now5.getTime())); } }
用事实说话,test2小胜
80 楼
piao16702155
2009-12-07
diaodou 写道
jupiterpan 写道
piao16702155 写道
不解
boolean removeChars[256] = {true}; 创建数组可以加数字吗
for (char ch: str) // 里面是数组名吧
boolean removeChars[256] = {true}; 创建数组可以加数字吗
for (char ch: str) // 里面是数组名吧
楼主估计在逗他们玩呢, String在JAVA里不能直接用作char数组~ 不能这么遍历~
唉,那个代码是随手写的,重要的是思想,我把调试好的代码贴一下吧:
public class Test { public static void main(String args[]) { String str="6sabcsssfsfs33"; boolean[] removeChars = new boolean[256]; Arrays.fill(removeChars, false); removeChars['a'] = true; removeChars['b'] = true; removeChars['3'] = true; StringBuffer sb = new StringBuffer(); for (int i = 0; i < str.length(); i++) { char ch = str.charAt(i); if (!removeChars[ch]) sb.append(ch); } String result = sb.toString(); System.out.println(result); } }
思想看懂了。只是刚接触java。有点教条
79 楼
zwq4166506
2009-12-07
mooninday 写道
不知道循环打印ABCABC那题怎解呀?
请LZ谈谈吧
请LZ谈谈吧
用线程同步
78 楼
controlz
2009-12-07
2)假如有字符串“6sabcsssfsfs33” ,用最有快速的方法去掉字符“ab3”,不能用java内置字符串方法(indeOf,substring,replaceAll等)?
------------------------------------------------------------------
------------------------------------------------------------------
String value = "6sab3csssfsfs33"; StringBuffer buffer = new StringBuffer(); for(int i=0;i<value.length();i++){ char c = value.charAt(i); if(c=='a'){ if(value.charAt(i+1)=='b'){ if(value.charAt(i+2)=='3'){ i+=2; continue; } } } buffer.append(c); } System.out.println(buffer.toString());
发表评论
-
正确理解ThreadLocal
2009-12-01 10:40 756首先,ThreadLocal 不是用来解决共享对象的多线程访问 ... -
java中ThreadLocal类的使用
2009-12-01 10:38 2896EasyDBO的数据库连接部分,为了给每个连接提供上下文,程序 ... -
迅雷招聘题:2009的2009次方,所得数各位数字求和,结果继续求和,直到剩下一位数字,需要几次求和运算??
2009-11-30 07:39 25652009的2009次方,所得数各位数字求和,结果继续求和,直到 ... -
KMP字符串模式匹配详解
2009-11-29 19:03 907http://lemonmilk.blog.51cto.com ...
相关推荐
有很多很有趣的知识点,但是以面试题为主,还是有点把自己当速成:chicken:的感觉 然后主要看面试Blog,Rico的博客, 数据库原理,操作系统,计算机网络,第一次看JUC包,之前谁管过这个,真没用过锁 第一场面试之前...
必联采购网的Java程序员笔试题涉及到多个Java Web开发的核心知识点,这些题目旨在考察应聘者的编程基础、异常处理能力、前端知识、框架理解以及实际项目经验。下面是对这些知识点的详细说明: 1. **Java连接数据库...
亲历分享_自学编程的致命误区,你中招了没_在职程序员聊聊自学时如何防止入坑
5. **只买蓝筹,不买小票**:蓝筹股市值大,流通盘相对较小,且大多由政府可控机构持有,更利于救市操作,而小盘股庄家操控性强,买入可能导致庄家套现,加大市场波动。 6. **过快上涨主动卖出**:防止指数快速上涨...
中软笔试题目是指中软公司的笔试题目,该公司是中国最大的软件公司之一,笔试题目涵盖了软件开发、数据库、算法、软件工程、网络模型、面向对象、编程语言等多个方面,本文将对笔试题目的各个部分进行概括和分析。...
亲历:果敢战火下的中缅边民.docx
《亲历华为IPD:理解与实践》 集成产品开发(IPD,Integrated Product Development)是华为公司在2003年引入的一种先进的产品开发管理模式,源自IBM的改革实践。IPD的核心理念在于通过跨部门、跨职能的团队协作,...
3. **JavaApplication开发**:通过示例程序(如“Hello World”),学生将亲历程序的编写、保存、编译与运行全过程。 4. **JavaApplet初步**:虽然未详述,但介绍Applet的基本结构与开发流程,为更复杂的应用打下...
【集成产品开发(IPD)】是华为引入的一种先进的产品开发模式,源于IBM的企业改革实践。IPD的核心理念是强调跨部门协作和整体责任,旨在提高产品研发效率和产品质量,确保产品的市场效益。以下是对IPD的详细阐述: ...
深度实战:全面覆盖游戏逻辑、图形渲染、事件处理等核心技术点,让您亲历从零到一完整的游戏开发流程。 丰富玩法:原汁原味还原经典模式,同时具备流畅的方块旋转、平移、锁定功能,更有刺激的消除行分计算系统,...
全球有25亿Java器件运行着Java,450多万Java开发者活泼在地球的每个角落,数以千万计的Web用户每次上网都亲历Java的威力。 Java软件工程师的薪水相对较高。通常来说,具有3~5年开发经验的工程师,拥有年薪10万元是...
附完整源码,这是一门培养应对复杂业务的综合技术能力的实战课程,本课采用前后端分离开发模式,严格遵守企业级架构和规范,带你开发门户平台+媒体中心+运营中心三大业务的企业级自媒体平台。一个项目贯穿后端主流...
这本书的书名——《打造Facebook:亲历Facebook爆发的5年》很嚣张,谁有资格可以说这句话呢,当然,扎克伯格最有资格,但他不会亲自来告诉你,至少从目前的情况来看,近几年都不大可能。而且,这不是一个人的公司。...
精品教育教学资料
OSGi是一种模块化系统和Java服务框架,它允许在运行时动态地发现、加载、卸载和管理软件组件,极大地增强了Java应用程序的灵活性和可维护性。 在描述中,虽然没有提供具体的信息,但我们可以推断这是一篇个人经验...
本书作者是阿里巴巴网站构建的亲历者,拥有核心技术部门的一线工作经验,直接体验了大型网站构建与发展过程中的种种生与死,蜕与变,见证了一个网站架构从幼稚走向成熟稳定的历程。 本书通过梳理大型网站技术发展...
《亲历投行——中国投行的若干传言与真相》是一本深度揭示中国投资银行业内幕的书籍,作者通过自己的亲身经历,为读者揭开了这个行业神秘的面纱。这份PPT读书笔记,无疑是深入理解中国投行生态的重要参考资料,对于...
本书作者是阿里巴巴网站构建的亲历者,拥有核心技术部门的一线工作经验,直接体验了大型网站构建与发展过程中的种种生与死,蜕与变,见证了一个网站架构从幼稚走向成熟稳定的历程。 本书通过梳理大型网站技术发展...
亲历“精细化营销”doc14.doc