Java字符串中常见的10个问题
2017-08-28 21:11
507 查看
阅读目录
怎样比较字符串?使用==还是equals()对于敏感信息优先使用字符数组而不是字符串
switch语句是否可以用string
怎样将字符串转成整型
怎样按空白字符(可能多个)分割字符串
substring()方法在做什么
String vs StringBuilder vs StringBuffer
怎样创建重复字符串
如何将字符串转成date类型
统计字符在某个字符串中出现的次数
留给读者:如何检测一个字符串是否都是大写字母
下面是Java中10个最常见的关于字符串的问题。
怎样比较字符串?使用==还是equals()
简单的说,“==”用于判断引用是否相等,equals()用于判断值是否相等。除非你要比较两个字符串是否是同一个对象,否则你应该使用equals()方法。如果你知道字符串驻留的概念会更好。
对于敏感信息优先使用字符数组而不是字符串
字符串是不可变的,意味着一旦被创建,他们就会一直存在直到垃圾回收器回收它们。然而对于一个数组来说,你可以明确的改变它们的元素。使用这种方法,敏感信息(如密码)就不会长期存在于系统中。
switch语句是否可以用string
是的,对于JDK7,我们是可以使用字符串作为switch条件,然而在jdk6,我们不能使用字符串作为switch条件。// java 7 only! switch (str.toLowerCase()) { case "a": value = 1; break; case "b": value = 2; break; }
怎样将字符串转成整型
int n = Integer.parseInt("10");
很简单,但是有时候也会被忽视。
怎样按空白字符(可能多个)分割字符串
String[] strArray = aString.split("\\s+");
substring()方法在做什么
在JDK 6,substring()方法不会创建一个新的字符数组,而是使用原有字符串的字符数组,为了创建一个新的字符数组组成的字符串,你可以在后面加上一个空字符串,如下:str.substring(m, n) + ""
这会创建一个新的字符数组,组成新的字符串对象。使用这种方法有时候会提高性能,因为垃圾回收器能回收无用的大字符串,只保留剩下的子字符串。
在JDK7,substring()方法会创建一个新的字符数组,而不是使用已有的,可以参考以下链接了解更多关于JDK6和JDK7中substring()方法的异同。
http://www.programcreek.com/2013/09/the-substring-method-in-jdk-6-and-jdk-7/
String vs StringBuilder vs StringBuffer
String vs StringBuilder:StringBuilder是可变的,意味着你可以在其创建后修改它。StringBuilder vs StringBuffer:StringBuffer是同步的,意味着它是线程安全的,但是会比StringBuilder慢。
怎样创建重复字符串
在Python中,我们可以简单的使用数字重复字符串;而在Java中,我们可以使用Apache Commons Lang 包下的StringUtils工具类的repeat()来实现,如下:String str = "abcd"; String repeated = StringUtils.repeat(str,3); //abcdabcdabcd
如何将字符串转成date类型
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 2013
统计字符在某个字符串中出现的次数
使用Apache Commons Lang 包下的StringUtils工具类int n = StringUtils.countMatches("11112222", "1"); System.out.println(n);
留给读者:如何检测一个字符串是否都是大写字母
译文链接:http://www.programcreek.com/2013/09/top-10-faqs-of-java-strings/
@Author 风一样的码农
@HomePageUrl http://www.cnblogs.com/chenpi/
相关文章推荐
- Java中String类(字符串操作)的10个常见问题和解决方法
- Java中String类(字符串操作)的10个常见问题和解决方法
- 关于Java字符串(String)10个最常见问题
- Java中String类(字符串操作)的10个常见问题和解决方法
- Java中String字符串的常见10个问题
- 关于Java字符串(String)10个最常见问题
- Java字符串中常见的10个问题
- 10个关于Java异常的常见问题
- 关于java Collection 的10个最常见的问题--------
- java字符串常见问题
- java字符串处理常见问题(不断补充)
- java 字符串引用的常见问题
- Java初学者常见问题_字符串序列化_可变不可变_传递(值,引用)
- 十个最常见的Java字符串问题
- Java集合的10个最常见问题
- 关于Java String的10个常见问题
- Java(Android)截取字符串间的字符串(无BUG)及常见问题、技术分享
- Java字符串中常见的一些问题
- java String 字符串常见的比较相等问题
- Java中关于String最常见的10个问题: