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

 更新时间:2017年06月28日 11:06:24   作者:机器矩阵  
这篇文章主要介绍了Java常用类String的面试题汇总,非常不错,具有参考借鉴价值,需要的朋友可以参考下

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面试题),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Java接入支付宝授权第三方登录的完整步骤

    Java接入支付宝授权第三方登录的完整步骤

    不管是支付宝支付,还是微信支付,还是银联支付等,大部分的支付流程都是相似的,这篇文章主要给大家介绍了关于Java接入支付宝授权第三方登录的相关资料,使用支付宝的沙盒环境示例,需要的朋友可以参考下
    2021-07-07
  • Sa-Token记住我模式实现七天免登录

    Sa-Token记住我模式实现七天免登录

    这篇文章主要为大家介绍了Sa-Token记住我模式实现七天免登录示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • JAVA异常体系结构详解

    JAVA异常体系结构详解

    Java把异常当作对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类,下面通过本文给大家分享JAVA异常体系结构,感兴趣的朋友一起看看吧
    2017-11-11
  • Java长字符串加密的实现

    Java长字符串加密的实现

    在Java中,字符串是一种常见的数据类型,我们经常需要对其进行加密和解密,本文主要介绍了Java长字符串加密的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • 学习Java之如何正确地跳出循环结构

    学习Java之如何正确地跳出循环结构

    我们在利用循环执行重复操作的过程中,存在着一个需求:如何中止,或者说提前结束一个循环,所以就给大家讲解一下,如何在java代码中返回一个结果,如何结束和跳出一个循环,需要的朋友可以参考下
    2023-05-05
  • Java+Mysql学生管理系统源码

    Java+Mysql学生管理系统源码

    这篇文章主要为大家详细介绍了Java+Mysql学生管理系统源码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • Java9新特性中的模块化详解

    Java9新特性中的模块化详解

    今天介绍一个Java 9的功能,模块化(Modular),这可能使Java有史以来最大的Feature,对Java9模块化相关知识感兴趣的朋友一起看看吧
    2022-03-03
  • java把字符串写入文件里的简单方法分享

    java把字符串写入文件里的简单方法分享

    这篇文章主要介绍了java把字符串写入到文件里的简单方法,这是跟一个外国朋友学的代码,需要的朋友可以参考下
    2014-03-03
  • java如何在应用代码里捕获线程堆栈

    java如何在应用代码里捕获线程堆栈

    这篇文章主要为大家介绍了java如何在应用代码里捕获线程堆栈实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • Spring的@Scope注解详细解析

    Spring的@Scope注解详细解析

    这篇文章主要介绍了Spring的@Scope注解详细解析,@Scope注解主要作用是调节Ioc容器中的作用域,springboot 程序启动时会对classpath路径下的包中的类进行扫描,将类解析成BeanDefinition,需要的朋友可以参考下
    2023-11-11

最新评论