Java常用类String的面试题汇总(java面试题)

作者:机器矩阵 时间:2023-11-23 20:40:45 

1.比较两个字符串时使用“==”还是equals()方法?

当然是equals方法。“==”测试的是两个对象的引用是否相同,而equals()比较的是两个字符串的值是否相等。简单来说,基本数据类型都可以使用==。而引用类型使用==比较不了。

2.如何将字符串转化成int?

使用包装类Integer。Integer.valueOf("2");其他基本数据类型都是类似

3.为什么在Java中存储密码要使用char[],而不使用String。

因为String是不可变的,当String创建之后,就不会再改变了。而char[]是可变的,程序员在用完之后可以将其改变,不会留下任何原始数据。所以,在使用密码时,一般都是会用char数组,例如JavaSwing中的JPassWordField,获取密码框的值就是使用char数据。而不使用String。

4.String可以在Switch语句中使用吗?

JDK1.7之后确实可以了。之前不行。需要程序员对JDK升级的API有适当的了解。

5.如何将字符串用空白字符分割开

可以使用正则表达式来做到分割字符。“\s”代表空白字符” “, “\t”, “\r”, “\n”等等, String[] strArray = str.split("\\s+");

6.substring()方法到底做了什么?

因为String是不可变的,所以在字符串截取时,subString做了一些工作。在JDK6时,用一个字符数组来表示现存的字符串,然后在这个字符数组中截取字符串,截取之后,并没有创建新的字符数组。而在JDK7中,截取的新的字符串是一个新的数组,这样效率更快一些。因为垃圾回收器会去回收不再使用的字符串。

7.如何将字符串转换成时间Date?

使用SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");


Date date =sdf.parse("2017-12-10");

8.字符串对象String,StringBuilder ,StringBuffer之间的区别?

String不可变的,其余两个为可变的,也就是可以自由增加或者删除字符串。

StringBuilder 和StringBuffer,前者是线程不安全的,后者是线程安全的。理论上StringBuilder 效率更高。

字符串大量拼接时,建议使用StringBuilder ,StringBuffer。

9.计算一个字符串某个字符的出现次数

a, 使用charAt方法截取之后,循环判断.

b, 使用apache commons lang包中的StringUtils:


int n = StringUtils.countMatches("ababababab", "a");
System.out.println(n);

10.如何使一个字符串重复N次。

API提供了一个非常好的方法。String str = "ab";


String repeated = StringUtils.repeat(str,3);//输出的结果是ababab,三次重复.

以上所述是小编给大家介绍的Java常用类String的面试题汇总(java面试题),希望对大家有所帮助.

来源:http://www.cnblogs.com/machine-matrix/p/7088045.html

标签:java,面试题,string
0
投稿

猜你喜欢

  • springboot-jta-atomikos多数据源事务管理实现

    2022-08-29 19:45:47
  • c#多线程网络聊天程序代码分享(服务器端和客户端)

    2022-08-10 00:32:48
  • C#中List<T>存放元素的工作机制

    2022-09-29 16:31:23
  • c#使用S22.Imap收剑灵激活码邮件代码示例(imap收邮件)

    2022-11-27 20:59:37
  • Android自制精彩弹幕效果

    2023-12-27 04:57:43
  • Java日常练习题,每天进步一点点(24)

    2022-11-17 06:40:40
  • Java数据结构 递归之迷宫回溯案例讲解

    2023-04-01 11:16:38
  • Android实现图片点击爆炸效果

    2023-06-04 04:18:55
  • C#基于基姆拉尔森算法计算指定日期是星期几的方法

    2022-04-28 09:31:25
  • 使用Java实现串口通信

    2023-02-13 05:45:02
  • Android使用TextView跑马灯效果

    2022-05-20 20:07:20
  • Java程序图形用户界面设计之容器JFrame

    2023-04-27 04:58:30
  • Android调用相机并将照片存储到sd卡上实现方法

    2023-11-06 00:41:41
  • 在C#中使用MSMQ的方法

    2023-04-05 20:28:29
  • android中实现背景图片颜色渐变方法

    2021-12-26 04:55:40
  • android中使用SharedPreferences进行数据存储的操作方法

    2023-06-16 17:37:42
  • 在Java中使用redisTemplate操作缓存的方法示例

    2023-07-04 09:03:28
  • 聊聊springboot静态资源加载的规则

    2021-08-29 22:52:03
  • Android 悬浮按钮之实现兔兔按钮示例

    2022-04-09 13:12:23
  • 使用设计模式中的工厂方法模式进行C#编程的示例讲解

    2023-10-21 05:27:08
  • asp之家 软件编程 m.aspxhome.com