代码随想录算法训练营第8天 LeetCode 344.反转字符串 541. 反转字符串II 卡码网:54.替换数字 151.翻转字符串里的单词 卡码网:55.右旋转字符串

Java中字符串常用方法,刷题再也不怕了:

String常用方法  
String s=new String();
length():返回字符串的长度。

1.toCharArray();将字符串转化为字符数组

2.charAt(int index):返回指定索引处的字符。

3.indexOf(int ch) 或 indexOf(int ch, int fromIndex):返回指定字符在字符串中第一次出现的位置,可选参数指定搜索的起始位置。

4.lastIndexOf(int ch) 或 lastIndexOf(int ch, int fromIndex):返回指定字符在字符串中最后一次出现的位置,可选参数指定搜索的起始位置。

5.substring(int beginIndex) 或 substring(int beginIndex, int endIndex):返回从指定索引开始到结束的子字符串,第二个参数为可选参数,表示结束索引(不包括在内)。

6.toLowerCase():将字符串转换为小写。

7.toUpperCase():将字符串转换为大写。

8.trim():去除字符串两端的空白字符。

9.startsWith(String prefix) 或 endsWith(String suffix):检查字符串是否以指定的前缀或后缀开始或结束。

10.equals(Object anObject) 或 equalsIgnoreCase(String anotherString):用于比较字符串是否相等,可选的忽略大小写。

11.replace(char oldChar, char newChar) 或 replace(CharSequence target, CharSequence replacement):替换字符串中的字符或者字符串序列。

12.split(String regex):根据指定的正则表达式拆分字符串为子字符串数组。

13.contains(CharSequence s):检查字符串是否包含指定的字符序列。

14.isEmpty():检查字符串是否为空。

15.concat(String str) 或 + 运算符:连接字符串。

16.compareTo(String anotherString) 或 compareToIgnoreCase(String str):比较字符串的大小关系。

17.matches(String regex):检查字符串是否匹配指定的正则表达式。

18.intern():返回字符串的规范化表示形式。

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
StringBuilder 是 Java 中用于动态修改字符串的类,它提供了一系列方法来进行字符串的增删改查操作。以下是 StringBuilder 常用的方法:

1. append(String str) / append(char c):将指定的字符串或字符追加到当前字符串的末尾。
示例:
      StringBuilder sb = new StringBuilder("Hello");
      sb.append(", world!");
      System.out.println(sb); // 输出: Hello, world!

2.insert(int offset, String str) / insert(int offset, char c):在指定位置插入指定的字符串或字符。
示例:
       StringBuilder sb = new StringBuilder("Hello");
       sb.insert(5, ", world!");
       System.out.println(sb); // 输出: Hello, world!

3.delete(int start, int end):删除从指定起始索引到结束索引的字符。
示例:
       StringBuilder sb = new StringBuilder("Hello, world!");
       sb.delete(5, 13);
       System.out.println(sb); // 输出: Hello!

4.deleteCharAt(int index):删除指定位置的字符。
示例:
       StringBuilder sb = new StringBuilder("Hello, world!");
       sb.deleteCharAt(5);
       System.out.println(sb); // 输出: Helloworld!

5.replace(int start, int end, String str):用指定的字符串替换从起始索引到结束索引的字符。
示例:
      StringBuilder sb = new StringBuilder("Hello, world!");
      sb.replace(7, 12, "everyone");
      System.out.println(sb); // 输出: Hello, everyone!

6.substring(int start) / substring(int start, int end):提取从指定起始索引到结束索引的子字符串。
示例:
       StringBuilder sb = new StringBuilder("Hello, world!");
       String sub1 = sb.substring(7); // 输出: world!
       String sub2 = sb.substring(0, 5); // 输出: Hello

7.length():返回当前字符串的长度。

8.charAt(int index):返回指定位置的字符。
示例:
       StringBuilder sb = new StringBuilder("Hello, world!");
       char ch = sb.charAt(7); // 返回 'w'

9.indexOf(String str):返回指定字符串在当前字符串中第一次出现的索引,如果没有找到则返回 -1。
示例:
       StringBuilder sb = new StringBuilder("Hello, world!");
       int index = sb.indexOf("world"); // 返回 7

10.toString():将 StringBuilder 对象转换为普通的字符串对象。

以上是 StringBuilder 常用的方法,它们可以满足对字符串进行动态修改的需求


 

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
第二十二天的算法训练主要涵盖了Leetcode题目中的三道题目,分别是Leetcode 28 "Find the Index of the First Occurrence in a String",Leetcode 977 "有序数组的平方",和Leetcode 209 "长度最小的子数组"。 首先是Leetcode 28题,题目要求在给定的字符串中找到第一个出现的字符的索引。思路是使用双指针来遍历字符串,一个指向字符串的开头,另一个指向字符串的结尾。通过比较两个指针所指向的字符是否相等来判断是否找到了第一个出现的字符。具体实现的代码如下: ```python def findIndex(self, s: str) -> int: left = 0 right = len(s) - 1 while left <= right: if s[left == s[right]: return left left += 1 right -= 1 return -1 ``` 接下来是Leetcode 977题,题目要求对给定的有序数组中的元素进行平方,并按照非递减的顺序返回结果。这由于数组已经是有序的,所以可以使用双指针的方法来解决问题。一个指针指向数组的开头,另一个指针指向数组的末尾。通过比较两个指针所指向的元素的绝对值的大小来确定哪个元素的平方应该放在结果数组的末尾。具体实现的代码如下: ```python def sortedSquares(self, nums: List[int]) -> List[int]: left = 0 right = len(nums) - 1 ans = [] while left <= right: if abs(nums[left]) >= abs(nums[right]): ans.append(nums[left ** 2) left += 1 else: ans.append(nums[right ** 2) right -= 1 return ans[::-1] ``` 最后是Leetcode 209题,题目要求在给定的数组中找到长度最小的子数组,

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值