Java中String类型的部分用法

时间:2023-12-20 14:32:26

1.如何将字符串转换为整型数值?

int i = Integer.parseInt("20");

2.如何用“==”还是equals比较两个字符串?

“==”是用来比较俩引用是不是指向内存中的同一个对象,而equals()方法则比较的是两个对象的值是否相等。

如果你想比较俩字符串是不是相等的,就必须得用equals()方法。

3.安全的字符串信息用char[]会比String对象更好吗?

String对象是不可变的,就意味着直到垃圾回收器过来清扫之前它们都不会发生变化的。

用数组的话,就可以很明确的修改它任何位置的字符元素。这样的话,如密码等安全的信息就不会出现在系统的任何地方。

4.在switch表达式中能否用字符串对象?

从JDK7及以上版本,我们就可以在switch条件表达式中使用字符串了,也就是说7之前的版本是不可以的。

switch (string.toLowerCase()) {

      case "a":
val= 1;
break;
case "b":
val= 2;
break;
}
5.String&StringBuilder&StringBuffer
String vs StringBuilder:StringBuilder是可变的,这就意味你在创建对象之后还可以去修改它的值。StringBuilder vs StringBuffer:StringBuffer是同步的,意味着它是线程安全的,但是就会比StringBuilder慢些。

6.如何计数一个字符在某个字符串中出现的次数

使用Apache Commons Lang包中的 StringUtils类就可以完成这个工作。

int i = StringUtils.countMatches("11111112222222", "1");
System.out.println("i=="+i);
7.如何将时间格式的字符串转换成date对象?
String str = "Aug 18, 2016";
Date date = new SimpleDateFormat("MMMM d, yy", Locale.ENGLISH).parse(str);
System.out.println(date);