java取字符串中第一个出现已知字符的后一段字符串,请给出示例代码
时间: 2023-10-07 20:12:21 浏览: 45
以下是示例代码:
```java
public class Main {
public static void main(String[] args) {
String str = "Hello, world!";
char ch = ',';
int index = str.indexOf(ch);
if (index != -1) {
String result = str.substring(index + 1);
System.out.println(result); // 输出 " world!"
}
}
}
```
在这个示例中,我们首先定义了一个字符串 `str` 和一个字符 `ch`,然后使用 `indexOf()` 方法查找字符串 `str` 中第一次出现字符 `ch` 的位置。如果找到了,我们就使用 `substring()` 方法从该位置的下一个字符开始提取子字符串,最后将结果输出到控制台。注意,`substring()` 方法的参数是子字符串的起始位置,所以我们需要将 `index` 加 1。
相关问题
java中如何把一个已知的字符串数组转为字符串
在 Java 中,可以使用 `String.join()` 方法将一个已知的字符串数组转换为字符串。
例如:
```
String[] arr = {"apple", "banana", "cherry"};
String str = String.join(", ", arr);
```
此代码将创建一个字符串:`"apple, banana, cherry"`。
题目描述 已知字符串str。 输出字符串str中最长回文串的长度。 用c编写,直接给出示例代码
如果你想在 C 语言中查找字符串 str 中最长回文串的长度,可以使用以下代码:
```
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int i, j, k, maxLen = 1, start = 0;
// 输入字符串
scanf("%s", str);
// 获取字符串长度
int len = strlen(str);
// 暴力枚举每一个子串的起始位置
for (i = 0; i < len; i++)
{
// 双指针枚举子串长度
for (j = i + 1, k = i; j < len && k >= 0 && str[j] == str[k]; j++, k--);
// 如果找到更长的回文串,则更新最长回文串长度
if (j - k - 1 > maxLen)
{
maxLen = j - k - 1;
start = k + 1;
}
}
// 输出最长回文串
for (i = start; i < start + maxLen; i++)
{
printf("%c", str[i]);
}
return 0;
}
```
上述代码使用了暴力枚举的方法,从字符串的第一个字符开始,逐一枚举每一个子串,并使用双指针判断子串是否为回文串。如果找到更长的回文串,则更新最长回文串的长度。
注意:上述代码仅供参考,并不能保证在所有情况下都能正确输出最长回文串。