String[] strA = new String[4];
for(int i=0; i<4; i++) {
strA[i] = String.valueOf(i);
}
strA[0] = strA[2];
strA[2] = null;

上述代码以后,strA[0]会等於多少?

陷阱:strA[0],strA[2] 都等于 null

答案:等于2

===================================

"举报| | 回复◆◆ 同时转发到我的微博 评论".replace("举报| | 回复", "")  =="举报| | 回复◆◆ 同时转发到我的微博 评论".replaceAll("举报| | 回复", "")

陷阱:String.replace和replaceAll的功能貌似只是在覆盖的数量上不一样而已

答案:但其实不然!repalce不会去解析字符串中的正则表达式字符比如说:“|”等,但是replaceAll则会解析匹配正则表达式(也有可能是我的理解错误,replaceall是最小匹配每一个,而replace则是一次最大匹配!)

  上面程序分别获得是:

    ◆◆ 同时转发到我的微博 评论
    ||回复◆◆同时转发到我的微博评论

===================================

10个有关String的面试问题

  1. 如何比较两个字符串?使用“==”还是equals()方法?
  2. 为什么针对安全保密高的信息,char[]比String更好?
  3. 我们可以针对字符串使用switch条件语句吗?
  4. 如何将字符串转化成int?
  5. 如何将字符串用空白字符分割开?
  6. substring()方法到底做了什么?
  7. String vs StringBuilder vs StringBuffer
  8. 如何重复一个字符串
  9. 如何将字符串转换成时间
  10. 如何计算一个字符串某个字符的出现次数?

===================================

LinkedBlockingQueue vs ConcurrentLinkedQueue

For a producer/consumer thread, I'm not sure that ConcurrentLinkedQueue is even a reasonable option - it doesn't implement BlockingQueue, which is the fundamental interface for producer/consumer queues IMO. You'd have to call poll(), wait a bit if you hadn't found anything, and then poll again etc... leading to delays when a new item comes in, and inefficiencies when it's empty (due to waking up unnecessarily from sleeps).

From the docs for BlockingQueue:

BlockingQueue implementations are designed to be used primarily for producer-consumer queues

I know it doesn't strictly say that only blocking queues should be used for producer-consumer queues, but even so...

Java(jdk1.7) 陷阱的更多相关文章

  1. 【转】ubuntu 配置 java jdk1.8 环境,增加多版本 jdk 和切换方法

    一.安装java jdk1.8 1.添加软件源 sudo add-apt-repository ppa:webupd8team/java 2.更新软件源 sudo apt-get update 3.安 ...

  2. Error loading: \Java\jdk1.6.0_35\jre\bin\server\jvm.dll

    先看看错误:complie: [exec] Error loading: D:\Program Files\Java\jdk1.6.0_35\jre\bin\server\jvm.dll [exec] ...

  3. Java JDK1.5、1.6、1.7新特性整理(转)

    原文链接:http://www.cnblogs.com/tony-yang-flutter/p/3503935.html 一.Java JDK1.5的新特性 1.泛型: List<String& ...

  4. Eclipse报错 due to restriction on required library C:/Java/jdk1.7.51/jre/lib/rt.jar 解决方案

    Eclipse报错 due to restriction on required library C:/Java/jdk1.6.0_10/jre/lib/rt.jar 解决方案 Eclipse 编译时 ...

  5. linux环境下安装jdk(本文示例是jdk1.6.0_export JAVA_HOME=/usr/java/jdk1.6.0_45 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar45)

    第一步:创建一个文件夹安装jdk(虽说地址一般自定义,但是为了方便查找请按照笔者建议目录 ):/usr/java 将jdk-6u45-linux-x64.bin文件放到   /usr/java 文件夹 ...

  6. win10 如何配置 java jdk1.8环境变量(2017.2.24)

    win10 如何配置 java jdk 环境变量 这里的win10 为全新安装的系统 一.安装 下载 jdk 64位 windows 版本安装(默认安装) 默认安装的路径: C:\Program Fi ...

  7. 安装JDK出现错误:-bash: /usr/java/jdk1.7.0_71/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory解决办法

    1.错误描述:安装好jdk之后,通过java -version,javac,java等命令测试是否安装成功时出现错误-bash: /usr/java/jdk1.7.0_71/bin/java: /li ...

  8. C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 1

    转载请标明出处:https://www.cnblogs.com/tangZH/p/10538982.html 今天,在项目过程中碰到了这个奇怪的问题,C:\Program Files\Java\jdk ...

  9. Java JDK1.5、1.6、1.7新特性整理

    转载请注明出处:http://www.cnblogs.com/tony-yang-flutter 一.Java JDK1.5的新特性 1.泛型: List<String> strs = n ...

随机推荐

  1. Hadoop集群(第10期)_MapReduce与MySQL交互

    2.MapReduce与MySQL交互 MapReduce技术推出后,曾遭到关系数据库研究者的挑剔和批评,认为MapReduce不具备有类似于关系数据库中的结构化数据存储和处理能力.为此,Google ...

  2. URAL1355. Bald Spot Revisited

    1355 其实就是求质因子的个数 这样肯定是最多的 注意一下 除到最后不是1的情况 #include <iostream> #include<cstdio> #include& ...

  3. Qt之HTTP上传/下载

    简述 在前面章节中我们讲述了关于Qt显示网络图片的内容,比较简单,因为图片一般都比较小,下载到本地速度比较快,所以基本不需要什么特殊处理,本节我们主要针对HTTP实现上传/下载进行详细的讲解与分享,包 ...

  4. Mobile Assistant

    闲来无事,分享一个小东西--手机小助手,历时两周,这里选择几个不错的界面以示效果! 如果有感兴趣的部分,欢迎随时交流!

  5. [转]使用 jQuery Mobile 与 HTML5 开发 Web App —— jQuery Mobile 事件详解

    在前文<使用 jQuery Mobile 与 HTML5 开发 Web App —— jQuery Mobile 默认配置与事件基础>中,Kayo 对 jQuery Mobile 事件的基 ...

  6. theos的makefile写法

    theos的makefile写法与其他linux/unix环境下的makefile写法大同小异,但是对于makefile不熟悉的在导入一些dylib或者framework的时候就会变得很蛋疼. 对于f ...

  7. 解决android sdk manage打开闪退的解决方法

    在打开android sdk mangage.exe的时候,一闪而过,在eclipse中出现如下提示: [2015-07-20 13:42:23 - SDK Manager] [SDK Manager ...

  8. PHP中括号“{}”的3个作用

    1,将多个独立语句合并为一个复合语句,例如“if .... else ....”中推荐如此使用. 2,在变量的间接引用中进行定界,避免歧义.例如“${$my_var[8]}”与“${$my_var}[ ...

  9. MySQL多表连接

    主要分3种:内连接,外连接,交叉连接 其        他:联合连接,自然连接 1.内联接 典型的联接运算,使用像 =  或 <> 之类的比较运算).包括相等联接和自然联接. 内联接使用比 ...

  10. 学习macos常用的一些快捷键笔记

    学习mac 操作系统使用笔记 Dock功能学习 类似快捷图标一样 Command+q quit a program Dock上添加与删除都用拖动 command+delete 删除文件 shift+c ...