java - 字符串操作java

标签 java string

所以我经常使用这个网站,但找不到答案... 如何从较大的字符串中操作特定的字符/字符串。我正在尝试使用 string.substring(pos,amount) 但是当我尝试在循环中使用它时我得到一个字符串索引错误。 例如-我如何从字符串“abcdefg”中删除 [4] 处的“e”或仅将“cde”大写?抱歉,我的问题中缺少正式代码,这主要是概念性的问题。谢谢。

感谢您的建议,我试图回答这个问题: 编写一个程序,将仅包含字母的字符串作为输入并显示该字符串 从第二个字母开始每隔三个字母大写,所有其他字母小写。

使用这段代码:

public class Test {
    public static void main(String[] arguments){
        Scanner fish = new Scanner(System.in);      
        String a = fish.nextLine();
        int len=a.length();
        for (int i = 1; i < len; i += 3){
            String z = a.substring(i, 1);
            String q = a.substring(i + 1);
            a = z.toUpperCase() + q;
        }
        System.out.println(a);
    }
}

最佳答案

String 本身是一个不可变类,因此您不能对其进行修改。当您进行修改时,将返回一个新对象...但这并不总是操作字符串的最佳方式(就性能而言),尤其是当您有一个大字符串时。

Java 还有一些其他类,如 StringBuffer 和 StringBuilder,它们公开了更多的字符串操作操作。以下是一个片段:

`public String manipulateStr(String sourceStr) {
    StringBuffer sb = new StringBuffer(sourceStr);
    sb.delete(5,7); // Delete characters between index 5-7
    sb.insert(10, "<inserted str>"); // Insert a new String
    return sb.toString();
}`

希望以上内容对您有所帮助。

关于java - 字符串操作java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9713205/

相关文章:

java - 通过http GET从Json对象中提取数据

javascript - 反转字符串函数不起作用

perl - 如何在 Perl 中引用长字符串?

java - 如何在 Android Java 中将 strVarName.equals 嵌套在 toLowerCase 周围

c# - 使用 InvariantCultureIgnoreCase 而不是 ToUpper 进行不区分大小写的字符串比较

java - 如何在 jOOQ 的 MockDataProvider 中使用示例数据创建自定义记录?

java - OpenJDK 14.0.1 给出 "the switch expression does not cover all possible input values"

javascript - jQuery 自动完成与 java 自定义数据并显示存储值

java - 有没有办法让 Eclipse 按域单独导入?

java - 查找重复的单词