判断 Java 中的空字符串
以下是 Java 判断字符串是否为空的三种方法.
方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低.
方法二: 比较字符串长度, 效率高, 是我知道的最好一个方法.
方法三: Java SE 6.0 才开始提供的方法, 效率和方法二几乎相等, 但出于兼容性考虑, 推荐使用方法二.
以下代码在我机器上的运行结果: (机器性能不一, 仅供参考)
function 1 use time: 172ms
function 2 use time: 78ms
function 3 use time: 79ms
public class CompareStringNothing {
String s = "";
long n = 10000000;
private void function1() {
long startTime = System.currentTimeMillis();
for(long i = 0; i < n; i++) {
if(s == null || s.equals(""));
}
long endTime = System.currentTimeMillis();
System.out.println("function 1 use time: "+ (endTime - startTime) +"ms");
}
private void function2() {
long startTime = System.currentTimeMillis();
for(long i = 0; i < n; i++) {
if(s == null || s.length() <= 0);
}
long endTime = System.currentTimeMillis();
System.out.println("function 2 use time: "+ (endTime - startTime) +"ms");
}
private void function3() {
long startTime = System.currentTimeMillis();
for(long i = 0; i < n; i++) {
if(s == null || s.isEmpty());
}
long endTime = System.currentTimeMillis();
System.out.println("function 3 use time: "+ (endTime - startTime) +"ms");
}
public static void main(String[] args) {
CompareStringNothing com = new CompareStringNothing();
com.function1();
com.function2();
com.function3();
}
}
相关文档:
线程(Thread)方面:
1、java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用?
答:有两种实现方法,分别是继承Thread类与实现Runnable接口
用synchronized关键字修饰同步方法
反对使用stop(),是因为它不安全。它会解除由线程获取的所有锁定, ......
JAVA annotation入门
最近对spring源码感兴趣,今天看到annotation部分,略记之。
一. 最常见的annotation
@Override:用在方法之上,用来告诉别人这一个方法是改写父类的
@Deprecated:建议别人不要使用旧的API的时候用的,编译的时候会用产生警告信息,可以设定在 ......
今天领导吩咐一个任务,就是用.net技术去跳用java端写的webservers,而且要采用https访问方式,强制论证
String SecurelyStoredPassword = "adminsd";
&nb ......
Private Sub Command1_Click()
Dim dso As New XMLDSOControl
Dim doc As IXMLDOMDocument
Set doc = dso.XMLDocument
Dim rel As IXMLDOMNodeList
Set x = CreateObject("Microsoft.XMLHTTP")
x.Open "GET", "http://127.0.0.1:8080/emrb/Mrbmodel?action=dis&u ......
采用串口操作进行短信收发,是比较常见的一种方式.比如,很多群发软件,用的就是这种方法.
1.配置comm.jar.
Comm.jar是Sub实现底层串口操作的API,调用了本地的DLL文件,因为Java本身不具备直接访问硬件设置的能力,都是通过调用本地方法来实现的.可以Java的官方网站下载.下载之后把其中Comm.jar包导入到工程的Classpath中,把另 ......