热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

String常用方法

1.字符串长度:length()publicintlength();返回该字符串的长度publicclassStringTest{publicstaticvoidmain(Stri




1.字符串长度:length()

public int length();//返回该字符串的长度

public class StringTest {
public static void main(String[] args) {
String str = new String("我是豆豆");
System.out.println(str.length());
}
}
//结果:4

2.字符串某一位置字符:charAt()

public char charAt(int index)//返回字符串中指定位置的字符

注意:字符串中第一个字符索引是0,最后一个是length()-1

public class StringTest {
public static void main(String[] args) {
String str = new String("啦啦啦,我是豆豆");
System.out.println(str.charAt(3));
}
}
//结果:,

3.提取字串:substring()


  • public String substring(int beginIndex)

    该方法从beginIndex位置起,从当前字符串中取出剩余的字符作为一个新的字符串返回

  • public String substring(int beginIndex,int endIndex)

    该方法从beginIndex位置起,从当前字符串中取出到endIndex-1位置的字符作为一个新的字符串返回

public class StringTest {
public static void main(String[] args) {
String str = new String("啦啦啦,我是豆豆");
System.out.println(str.substring(4));
System.out.println(str.substring(4,6));
}
}
//结果:我是豆豆
//结果:我是

4.字符串比较:compareTo()、equals()


  • public int compareTo(String anotherString)

    该方法是对字符串内容按字典顺序进行大小比较,通过返回的整数值指明当前字符串与参数字符串的大小关系。若当前对象比参数大则返回正整数,反之返回负整数,相等返回0。

  • public int compareToIgnore(String anotherString)

    与compareTo方法相似,但忽略大小写

  • public boolean equals(Object anotherObject)

    比较当前字符串和参数字符串,在两个字符串相等的时候返回true,否则返回false。

  • public boolean equalsIgnoreCase(String anotherString)

    与equals方法相似,但忽略大小写

public class StringTest {
public static void main(String[] args) {
String str1 = new String("abc");
String str2 = new String("ABC");
int a = str1.compareTo(str2);//a>0
int b = str1.compareToIgnoreCase(str2);//b=o
boolean c = str1.equals(str2);//c=false
boolean d = str2.equalsIgnoreCase(str2);//d=true
}
}

5.字符串连接:concat()

public String concat(String str)//将参数中的字符串str连接到当前字符串的后面,效果等价于"+"

public class StringTest {
public static void main(String[] args) {
String str1 = new String("啦啦啦");
String str2 = str1.concat("我是豆豆");
System.out.println(str2);
}
}
//结果:啦啦啦我是豆豆

6.查找子串:indexOf()


  • public int indexOf(int ch/String str)

    用于查找当前字符串中字符或子串,返回字符或子串在当前字符串中从左边起首次出现的位置,若没有出现则返回-1。

  • public int indexOf(int ch/String str, int fromIndex)

    改方法与第一种类似,区别在于该方法从fromIndex位置向后查找。

  • public int lastIndexOf(int ch/String str)

    该方法与第一种类似,区别在于该方法从字符串的末尾位置向前查找。

  • public int lastIndexOf(int ch/String str, int fromIndex)

    该方法与第二种方法类似,区别于该方法从fromIndex位置向前查找。

public class StringTest {
public static void main(String[] args) {
String str = new String("啦啦啦,我是豆豆");
int a = str.indexOf('是');//5
int b = str.indexOf("我是");//4
int c = str.indexOf('啦',1);//1
int d = str.lastIndexOf('啦');//2
int e = str.lastIndexOf('豆',1);//-1
}
}

7.字符串中字符的大小写转换:toLowerCase()、toUpperCase()


  • public String toLowerCase()

    返回将当前字符串中所有字符转换成小写后的新串

  • public String toUpperCase()

    返回将当前字符串中所有字符转换成大写后的新串

public class StringTest {
public static void main(String[] args) {
String str = new String("MynameisSHENJIANTAO");
System.out.println(str.toLowerCase());
System.out.println(str.toUpperCase());
}
}
//结果:mynameisshenjiantao
//结果:MYNAMEISSHENJIANTAO

8.字符串中字符的替换:replace()


  • public String replace(char oldChar, char newChar)

    用字符newChar替换当前字符串中所有的oldChar字符,并返回一个新的字符串。

  • public String replaceFirst(String regex, String replacement)

    该方法用字符replacement的内容替换当前字符串中遇到的第一个和字符串regex相匹配的子串,应将新的字符串返回。

  • public String replaceAll(String regex, String replacement)

    该方法用字符replacement的内容替换当前字符串中遇到的所有和字符串regex相匹配的子串,应将新的字符串返回。

public class StringTest {
public static void main(String[] args) {
String str = new String("啦啦啦,我是豆豆");
System.out.println(str.replace('是','叫'));
System.out.println(str.replaceFirst("啦","嘿"));
System.out.println(str.replaceAll("啦","嘿"));
}
}
//结果:啦啦啦,我叫豆豆
//结果:嘿啦啦,我是豆豆
//结果:嘿嘿嘿,我是豆豆

9.是否包含:contains()

public boolean contains(String str)

判断字符串中是否有子字符串,如果有则返回true,没有则返回false

public class StringTest {
public static void main(String[] args) {
String str = new String("啦啦啦,我是豆豆");
System.out.println(str.contains("豆豆"));
}
}
//结果:true


推荐阅读
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • IOS开发之短信发送与拨打电话的方法详解
    本文详细介绍了在IOS开发中实现短信发送和拨打电话的两种方式,一种是使用系统底层发送,虽然无法自定义短信内容和返回原应用,但是简单方便;另一种是使用第三方框架发送,需要导入MessageUI头文件,并遵守MFMessageComposeViewControllerDelegate协议,可以实现自定义短信内容和返回原应用的功能。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 本文介绍了一个Java猜拳小游戏的代码,通过使用Scanner类获取用户输入的拳的数字,并随机生成计算机的拳,然后判断胜负。该游戏可以选择剪刀、石头、布三种拳,通过比较两者的拳来决定胜负。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 本文介绍了iOS数据库Sqlite的SQL语句分类和常见约束关键字。SQL语句分为DDL、DML和DQL三种类型,其中DDL语句用于定义、删除和修改数据表,关键字包括create、drop和alter。常见约束关键字包括if not exists、if exists、primary key、autoincrement、not null和default。此外,还介绍了常见的数据库数据类型,包括integer、text和real。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • 本文介绍了在iOS开发中使用UITextField实现字符限制的方法,包括利用代理方法和使用BNTextField-Limit库的实现策略。通过这些方法,开发者可以方便地限制UITextField的字符个数和输入规则。 ... [详细]
  • 纠正网上的错误:自定义一个类叫java.lang.System/String的方法
    本文纠正了网上关于自定义一个类叫java.lang.System/String的错误答案,并详细解释了为什么这种方法是错误的。作者指出,虽然双亲委托机制确实可以阻止自定义的System类被加载,但通过自定义一个特殊的类加载器,可以绕过双亲委托机制,达到自定义System类的目的。作者呼吁读者对网上的内容持怀疑态度,并带着问题来阅读文章。 ... [详细]
author-avatar
修竹
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有