黑马程序员———字符串和字符串缓冲区
来源:互联网 发布:centos www服务器配置 编辑:程序博客网 时间:2024/06/04 22:30
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
String类是用于描述字符串事物。那么它提供多个方法对字符串进行操作。
StringBuffer是字符串缓冲区,
且是一个容器,
特点:(和数组的区别)
1. 是可变长度的,
2. 可以直接操作多个数据类型,
3.最终通过toString方法变成字符串。
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
- String类
字符串是一个特殊的对象字符串一旦初始化就不可以被改变。
String str = "abc";//str是一个类类型变量,"abc"是一个对象。// 字符串最大特点:一旦被初始化,不可以被改变。
String str1 = new String("abc");public final class String extends Object不能被继承。
equals比较的是内存地址。
str==str1;//falsestr.equals(str1);//true
- str和str1有什么区别?
str在内存中有一个对象。str1在内存中有两个对象。
String类复写了Object类中equals方法,该方法用于判断字符串是否相同。
String类是用于描述字符串事物。那么它提供多个方法对字符串进行操作。
常见的操作有哪些?"abcd"1.获取1.1字符串中包含的字符数,也就是字符串的长度int length();获取长度。1.2根据位置获取位置上的某个字符。char charAt(int index);1.3根据字符获取该字符在字符串中的位置。int indexOf(int ch),返回的是ch在字符串中第一次出现的位置。int indexOf(int ch,int fromIndex);从fromIndex指定位置开始索引,获取ch在字符串出现的位置。int indexOf(String str),返回的是str在字符串中第一次出现的位置。int indexOf(String str,int fromIndex);从fromIndex指定位置开始索引,获取str在字符串出现的位置。int lastIndexOf(int ch);根据字符反向索引位置2.判断2.1字符串中是否包含某一个子串。boolean contains(str);特殊之处:indexOf(str);可以索引str第一次出现的位置,如果返回-1表示该str不在字符串中存在,所以也可以用于对指定字符串的判断是否包含。if(str.indexOf("aa")!=-1)而且该方法既可以判断,又可以获取出现的位置。2.2字符串是否有内容。boolean isEmpty();//原理就是判断长度是否为0.2.3字符串是否以指定内容开头。boolean startsWith(str);2.4字符串是否以指定内容结尾。boolean endsWith(str);2.5判断字符串内容是否相同。复写了Object类的equals方法。boolean equals(str);2.6判断内容是否相同,并忽略大小写。boolean equalsIgnoreCase();3.转换3.1将字符数组转成字符串构造函数: String(char[]);String(char[],offset,count);将字符数组中的一部分转成字符串静态方法: static String copyValueOf(char[]);static String copyValueOf(char[],int offset,int count);static String ValueOf(char[]);3.2将字符串转成字符数组 **char[] toCharArray();3.3将字节数组转成字符串String(byte[]);String(byte[],offset,count);3.4将字符串转成字节数组byte[] getBytes();3.5将基本数据类型转成字符串。static String valueOf(int)static String valueOf(double)//3+"abc"; //String.valueOf(3);特殊:字符串和字节数组在转换过程中,是可以指定编码表的。4.替换String replace(oldchar,newchar);5.切割String[] split(regex);6.子串 。获取字符串中的一部分String substring(int beginindex);Stirng substring(int beginindex,int endinde);获取头不获取尾7.转换,去除空格,比较。7.1将字符串转成大写或则小写。String toUpperCase();String toLowerCase();7.2将字符串两端的空格去掉。String trim();7.3对两个字符串进行自然顺序比较。int compareTo(String);
StringBuffer是字符串缓冲区,
且是一个容器,
特点:(和数组的区别)
1. 是可变长度的,
2. 可以直接操作多个数据类型,
3.最终通过toString方法变成字符串。
C create U update R read D delete
1.存储。
StringBuffer append();将制定的数据作为参数添加到已有数据的结尾处。
StringBuffer insert(index,数据);可以将数据插入到制定index位置。
2.删除。
StringBuffer delete(start,end);删除缓冲区中的数据,包含头不包含尾
StringBuffer deleteCharAt(index);删除指定位置的字符。
3.获取。
char charAt(int index)
int indexOf(String str)
int lastIndexOf(String str)
int length()
String substring(int start,int end)
4.修改。
StringBuffer replace(start,end,string);
void setCharAt(int index,char ch);
5.反转。
StringBuffer reverse();
6.将缓冲区中的数据存储到指定数组中。
void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin)
JDK1.5版本之后出现了StringBuilder
StringBuffer是线程同步的,线程安全。
StringBuilder是线程不同步,效率更高。
开发建议使用StringBuilder。
Java的升级三要素:
1.提高效率
2.简化书写
3.提高安全性
2.简化书写
3.提高安全性
0 0
- 黑马程序员———字符串和字符串缓冲区
- 黑马程序员09——字符串、字符串缓冲区
- 黑马程序员—Java API(字符串缓冲区StringBuffer、StringBuilder)
- 黑马程序员--字符串缓冲区
- 黑马程序员--字符串缓冲区StringBuffer 和 StringBuiler
- 黑马程序员—字符串
- 黑马程序员—字符串
- 黑马程序员_字符串缓冲区
- 黑马程序员 字符串缓冲区小结
- 黑马程序员_StringBuilder字符串缓冲区
- 黑马程序员——数组和字符串
- 黑马程序员—进制、数组和字符串
- 黑马程序员--字符串以及字符串缓冲区
- 黑马程序员--字符串以及字符串缓冲区
- 黑马程序员--java基础--String类和字符串缓冲区
- 黑马程序员——字符串
- 黑马程序员——字符串
- 黑马程序员——字符串
- 计算机视觉、机器学习相关领域论文和源代码大集合--持续更新
- Android ListView使用BaseAdapter与ListView的优化
- (转)linux下,USB四大主要数据结构
- 一个安卓小项目(3)——安卓FTP方式发送文件到服务器
- 牛人林达华推荐有关机器学习的数学书籍
- 黑马程序员———字符串和字符串缓冲区
- java 文件操作之byte数组间的转换
- iOS coreText 图文混排
- Bundle类的作用
- PlaySound与CFileDialog
- 【DP经典问题】
- PhotoShop算法实现--直方图(十)
- POJ2353——Ministry
- 黑马程序员———基本数据类型对象包装类