Java面试题整理常用类部分

一、String类的常用方法

length():求字符串的长度

indexOf():求某个字符在字符串中的位置

charAt():求一个字符串中某个位置的值

equals():比较两个字符串是否相同

replace():将字符串中的某些字符用别的字符替换掉。形如replace("abc","ddd"); 字符串中的abc将会被ddd替换掉。

split():根据给定正则表达式的匹配拆分此字符串。形如String s = "The time is going quickly ! "; str1 = s.split(" ");

substring():输出一个新的字符串,它是此字符串的子串,形如substring(3,7) ; 它将字符串中的第四个、第五个、第六个输出。

trim():将字符串开头的空白(空格)和尾部的空白去掉。

format():使用指定的语言环境、格式字符串和参数返回一个格式化字符串。

toLowerCase():将字符串中所有的大写改变成小写

toUpperCase():将字符串中所有的小写改变为大写

getBytes():获取字符串字节数组

二、String类中的intern()方法作用

intern()方法会首先从常量池中查找是否存在该常量值,如果常量池中不存在则现在常量池中创建,如果已经存在则直接返回。

比如

String s1 = "aa";

String s2 = s1.intern();

System.out.print(s1 == s2); //返回true

三、String str = "i" 与 String str = new String("i")一样吗

不一样,因为内存的分配方式不一样。String str = "i"; 的方式,Java虚拟机会将其分配到常量池中;而String str = new String("i"); 则会被分到堆内存中。

四、String 和 StringBuffer、StringBuilder 的区别

相同点:三个类都是处理字符串的类;

不同点:String是长度不可变字符串,StringBuffer 和 StringBuilder 是长度可变的字符串,维护一个缓冲区。

StringBuilder 线程不安全,效率高;StringBuffer线程安全,效率低;

五、Object类中常用方法

hashCode():计算对象成员的哈希值

equals():判断对象是否相等

clone():对对象进行clone

getClass():获取对象的Class字节码文件对象

wait():线程阻塞线程挂起等待

notify()nitifyAll():线程唤醒,线程就绪,继续运行

toString():获取对象信息,一般重写,默认返回地址值

相关推荐
allnlei2 分钟前
s6-overlay - 装在 Docker 容器里的轻量级管家
java·docker·容器
IT_Octopus6 小时前
IntelliJ 本地日志路径自定义:`-DLOG_PATH=./logs` 为什么总“不听话“
java·log4j·intellij-idea
长征coder6 小时前
【无标题】
java·性能优化
新时代牛马7 小时前
PCI与PCIe 硬件原理、配置空间/BAR 与 Linux 驱动完整篇:从 LTSSM、TLP 到 ECAM 与probe
java·linux·服务器
Bs_MoneyMagnet7 小时前
基于springboot+vue的医疗健康便民服务平台的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring
sunshine22 girl8 小时前
Java学习一 环境配置2 Idea的入门使用和maven配置,项目启动脚本配置
java·maven
有点。9 小时前
*C++哈夫曼树与哈夫曼编码
java·c++·servlet
CRMEB系统商城9 小时前
CRMEB标准版系统(Java)v3.1正式发布
java·spring·微信小程序·php·教育电商
写后端的胖头鱼9 小时前
【高频面试题】Java 基础类型 + 包装类 + String 互相转换
java·开发语言
weixin_4604435610 小时前
企业考试系统从.NET迁移到Java+Linux:数据库迁移、接口兼容与灰度切换实践
java·煤矿培训考试系统·煤矿在线考试系统·煤矿安全培训·煤矿考试系统·一人一档