String对象的声明和操作

xiaoxiao2021-02-28  53

String类是用来构造一个字符串对象的.字符串对象操作在程序当中会频繁的使用到,我们可以通过实现这个类,就可以构造我们需要的字符串对象。 通过String类构造字符串对象的方式主要有两种: (1)常用的创建方式     String s = "常用的创建方式";(这种创建方式比较节省内存资源)     如:String s1 = "abcd";         String s2 = "abcd";(s1==s2,这是因为这两个引用变量在内存中存的地址是一样的) (2)不常用的创建方式     String str = new String();     如:String str1 = new String("abcd");         String str2 = new String("abcd");(s1!=s2,这是因为每次创建一个对象,都会在内存中开辟一块内存空间,即使它们中存的值是一样的,但是内存地址不一样。)     String对象是不可变的,即是一个常量。类中每一个看来会修改String值的方法,其实都是创建了新的String对象(包含修改后的字符串内容)。String的只读性带来效率优化可能, 字符串字面值存储于字符串池中,String对象优先指向该字符串池,避免反复生成重复的字符串实例。系统对String的非修改处理效率很高,远远超过另外两个字符串类StringBuffer和 StringBuilder。 (3)String对象的常用方法     length():返回此字符串的长度;     charAt(int index):返回指定索引处的char值;     concat(String str):将指定字符串连接到此字符串的结尾;     contains(CharSequence s):是否包含指定的字符串序列;https://www.cnblogs.com/skywang12345/p/string01.html     equals(Object anObject):将此字符串与指定的对象比较;     compareTo(String anotherString):按字典顺序比较两个字符串;     indexOf(int ch):返回指定字符串在此字符串中首次出现的下标;     split(String regex):根据给定正则表达式的匹配来拆分此字符串;     subString(int beginIndex):截取字符串;     toLower/UpperCase():将指定的字符串进行大小写转换;     replace(CharSequence target, CharSequence replacement):使用replacement中的值替换此字符串中所有的target对象,并返回一个新的字符串; // 查找指定字符串在给定字符串中出现的次数 public class Demo { public static void main(String[] args) { String src = "朋友啊朋友,这是你最好的朋友!"; String dst = "朋友"; int index = 0; int count = 0; index = src.indexOf(dst); while(index != -1){ count++; index += dst.length(); index = src.indexOf(dst, index); } System.out.println(count); } }
转载请注明原文地址: https://www.6miu.com/read-2631031.html

最新回复(0)