String的20个方法
String的20个方法
面试题
1、new和不new的区别
String A="OK";
String B="OK";//会去常量池查找有没有“Ok”这个常量,没有就在常量池创建
String C=new String("OK");
String D=new String("OK");//每次new都是创建一个新地址
不new涉及到内存常量池查找机制
2、String、StringBuffer、StringBuilder的区别
String和StringBuffer/StringBuilder区别
StringBuffer/StringBuilder创建时会预留16个缓冲区,当缓存区满了,会按照(当前大小+将要存入的个数)*2规则扩容
String不会预留,每次满了,创建新数组并复制过去,较慢
StringBuffer、StringBuilder的区别
单线程和多线程,StringBuffer支持多线程,多线程中每次只让一个线程访问,效率低,但是是安全的,不会出现并发错误
StringBuilder允许多个线程同时访问,效率高,但也很容易出问题
方法
| 返回类型 | 方法名 | 作用 |
|---|---|---|
| int | length() | 字符串中字符的个数 |
| byte[] | getBytes() | 字符串转成字节类型数组(注意中英文,中文为负数两个字节) |
| char[] | toCharArray() | 字符串转成char类型数组 |
| String | split(String str) | 字符串按照指定内容从中间劈开,这个指定的内容消失 |
| boolean | equals(String str) | (区分大小写)判断两个字符串的内容是否相同(需要数据类型相同再比较,即使内容相同),尽量把固定内容放前面 |
| boolean | equalsIgnoreCase() | 忽略大小写的equals()比较 |
| boolean | contains(String str) | 判断字符串中是否有str子字符串 |
| boolean | startsWith(String pre) | 判断字符串是否以pre开头 |
| boolean | endsWith(String suf) | 判断字符串是否以suf结尾 |
| String | toUpperCase() | 字符串转大写 |
| String | toLowerCase() | 字符串转小写 |
| String | replace(String,String) | 把一个字符串的内容全部替换成指定内容 |
| String | replaceAll(String,String) | 把一个字符串的内容全部替换成指定内容(支持正则) |
| String | replaceFirst(String,String) | 将字符串中第一个出现的某个内容替换成指定内容 |
| String | trim() | 去除字符串的前后空格 |
| String | substring(int x ,int y) | 从下标x截取到下标y-1个元素 |
| String | substring(int x) | 从下标x截取到最后 |
| char | charAt(int index) | 返回index下标对应的元素 |
| int | indexOf(String str) | 找到第一个str的下标 |
| int | lastIndexOf(String str) | 找到最后一个str的下标 |
String的20个方法的更多相关文章
- Java中String类的format方法使用总结
可参考: http://www.cnblogs.com/fsjohnhuang/p/4094777.html http://kgd1120.iteye.com/blog/1293633 String类 ...
- windows中java读目录空格变成%20 处理方法
URL url = Thread.currentThread().getContextClassLoader().getResource(""); String path = ur ...
- String中的“equal方法”和“==”
二话不说,先来说下重写的事情: 在Java中,String .Math.还有Integer.Double....等这些封装类重写了Object中的equals()方法,让它不再比较其对象在内存中的地址 ...
- 小白基础Python重要的字符串详解String的内置方法
String的内置方法: st='hello world {name} is {age}' {} 特殊内容需要识别format print(st.count('1')) 统计元素个数 print ...
- Javascript 中 with 的替代方案和String 中的正则方法
这几天在升级自己的MVVM 框架,遇到很多小问题,就在这里统一解决了. with 语法 在代码中,要执行这么一个函数 function computeExpression(exp, scope) { ...
- 关于JAVA的String类的一些方法
一.得到字符串对象的有关信息 1.通过调用length()方法得到String的长度. String str=”This is a String”; int len =str.length(); 2. ...
- String equals()方法使用以及子串加密
String equals()方法的实现方法: 名称 说明 String.Equals (Object) 确定此 String 实例是否与指定的对象(也必须是 String)具有相同的值. Strin ...
- C++ string 类的 find 方法实例详解
1.C++ 中 string 类的 find 方法列表 size_type std::basic_string::find(const basic_string &__str, size_ty ...
- java.lang.String 类的所有方法
java.lang.String 类的所有方法 方法摘要 char charAt(int index) 返回指定索引处的 char 值. int codePointAt(int index) 返回指定 ...
随机推荐
- php压缩文件夹并下载到本地
/** * @param $path 要压缩的文件夹路径 * @param $filename 要生成的压缩包名称 */ public function create_zip($path,$filen ...
- 【转】Js中的window.parent ,window.top,window.self 详解
[转自]http://blog.csdn.net/zdwzzu2006/article/details/6047632 在应用有frameset或者iframe的页面时,parent是父窗口,top是 ...
- 24V降压3.3V芯片,低压降线性稳压器
PW6206系列是一款高精度,高输入电压,低静态电流,高速,低压降线性稳压器具有高纹波抑制.在VOUT=5V&VIN=7V时,输入电压高达40V,负载电流高达300mA,采用BCD工艺制造.P ...
- PW2320芯片N沟道增强型MOSFET
PW2320采用先进的沟道技术,以提供优良的RDS(ON),低栅电荷和电压门极电压低至2.5V时工作.该装置适合用作电池保护或在其他开关应用中. 特征 VDS=20V ID=8A RDS(开)< ...
- centos7服务器远程安装图形化页面
以下是我用云的centos 7.4的安装步骤,照着我的命令操作肯定OK的,其他的就不敢保证了... 1.首先安装X(X Window System),命令为:(注意有引号) yum groupinst ...
- (15)-Python3之--configparser模块
1.模块简介 configparser模块是python用来读取配置文件的模块,置文件的格式跟windows下的ini或conf配置文件相似,可以包含一个或多个节(section), 每个节可以有多个 ...
- jQuery mock.js模拟的使用
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- MySQL的双主配置
配置MySQL双主配置,需要先配置MySQL的主从复制,传送门: 0.集群规划 hadoop105 hadoop106 hadoop107 MySQL(master,slave) MySQL(slav ...
- 利用Javascript制作网页特效(其他常见特效)
设置为首页和加入收藏夹 ①:在body标签内输入以下代码: <a onclick="this.style.behavior='url(#default#homepage)'; this ...
- java实现hbase数据库的增删改查操作(新API)
操作环境: java版本: jdk 1.7以上 hbase 版本:1.2.x hadoop版本:2.6.0以上 实现功能: 1,创建指定表 2,删除指定表 3,根据表名,行键,列族,列描述符,值 ...