网站大全app下载,任务发布平台,响应式网站适合优化吗,工程建设承包合同本文是html5tricks原创翻译#xff0c;转载请看清文末的转载要求#xff0c;谢谢合作#xff01; 下面我为大家总结了10条Java开发者经常会提的关于Java字符串的问题#xff0c;如果你也是Java初学者#xff0c;仔细看看吧#xff1a; 1、如何比较字符串#xff0c;应该… 本文是html5tricks原创翻译转载请看清文末的转载要求谢谢合作 下面我为大家总结了10条Java开发者经常会提的关于Java字符串的问题如果你也是Java初学者仔细看看吧 1、如何比较字符串应该用””还是equals() 总的来说””是用来比较字符串的引用地址而equals()才是比较字符串的值。两个值相同的字符串用””比较结果有可能是false而用equals()则一定为true。除非两个字符串是同一个new出来的对象不然比较字符串值是否相同应该要用equals()。 2、对那些安全敏感的信息为什么用char[]存储要优于String String是不可变的这就意味着它一旦被创建就将永久驻留在内存中直到垃圾回收器将其回收为止。然而用数组存储方式你可以明确地改变数组中的元素因此用数组方式安全信息将有可能不存在系统内存的任何地方。 3、能否用字符串来声明switch语句 JAVA 7及以后的版本是支持的。在JDK 7中允许你使用字符串做switch语句的比较条件。jdk 6以前的版本不能这样使用 // java 7 only!
switch (str.toLowerCase()) {case a:value 1;break;case b:value 2;break;
}4、如何将字符串转换成数字int类型 int n Integer.parseInt(10);很简单但却会经常用到也很容易被忽略。 5、如何用空格字符来分割字符串 我们可以很方便地用正则表达式来分割字符串”\s”表示空格字符比如” “, “\t”, “\r”, “\n” String[] strArray aString.split(\\s);6、substring()方法究竟是什么 在jdk 6中substring()方法在原来字符串中提供了一个截取字符的窗口它并没有创建一个新的String实例。如果你想创建新的字符数组你可以在substring()后加一个空字符就像这样 str.substring(m, n) 这样就会创建一个新的String实例上面的方法有时候可以让你的程序运行速度更快因为垃圾回收器可以将没用的大字符串回收走并保留其子字符串。 7、String、StringBuilder和StringBuffer哪个更优 String和StringBuilderStringBuilder是可变的也就是说用StringBuilder创建的字符串你可以随时改变它。StringBuilder和StringBufferStringBuffer是同步的它是线程安全thread-safe的但效率要比StringBuilder差得多。 8、如何重复输出字符串 在Python中我们只需要为字符串乘上一个数字就可以重复输出该字符串了。然而在Java中我们可以用StringUtils的repeat()方法来实现StringUtils是Apache公共语言库的其中一个类库成员。 String str abcd;
String repeated StringUtils.repeat(str,3);
//abcdabcdabcd9、如何将字符串转换成日期类型 你可以按以下方法来做代码如下 String str Sep 17, 2013;
Date date new SimpleDateFormat(MMMM d, yy, Locale.ENGLISH).parse(str);
System.out.println(date);
//Tue Sep 17 00:00:00 EDT 201310、如何统计指定字符在字符串中出现的频率 同样我们利用了Apache公共语言库中的StringUtils代码如下 int n StringUtils.countMatches(11112222, 1);
System.out.println(n); 以上这10个关于Java字符串的问题你遇到过多少另外你觉得还有哪些问题会对Java开发者产生困惑评论中告诉我们让我们一起来探讨。 译文链接http://www.html5tricks.com/10-top-questions-java-string.html转载于:https://www.cnblogs.com/thebigdipper/p/3762106.html