如何反转java中单词中的特定字母?

时间:2018-04-16 05:35:11

标签: java

我想要反转用户在java中输入的单词中的一组特定字母 例如,
输入:
输入字词:电视
输入要反转的组:visi
输出:Teleisivon。
这是我用来翻转单词的java程序

import java.util.Scanner;

public class ReverseString  
{  
 public static void main(String[] args)  
 {  
    System.out.println("Enter string to reverse:");  
    Scanner read = new Scanner(System.in);
    String str = read.nextLine();
    String reverse = "";
    for(int i = str.length() - 1; i >= 0; i--)
    {
        reverse = reverse + str.charAt(i);
    }
    System.out.println("Reversed string is:");
    System.out.println(reverse);
 }
}

3 个答案:

答案 0 :(得分:1)

这很简单,只需使用

    String old = "Television";
    String partStr = "visi";
    StringBuilder part = new StringBuilder(partStr);
    part.reverse();
    String newStr = old.replace(partStr, part.toString());
    System.out.println(newStr);

答案 1 :(得分:0)

public static String revSubString(String input, String subString) {
    int index = input.indexOf(subString);
    String head = input.substring(0, index);
    String end = input.substring(index + subString.length());

    String result = head + new StringBuilder(subString).reverse().toString() + end;
    return result;
}

答案 2 :(得分:0)

public static String reverseSubstring(String text, int startIndex, int endIndex) {
        String result = text.substring(0,startIndex); //before reversing
        result += new StringBuilder(text.substring(startIndex,endIndex)).reverse().toString(); //reversed part
        result += text.substring(endIndex); //after reversing
        return result;
    }

你也可以只使用StringBuilder作为整个字符串。我想通过分成三个部分来使它更具可读性。答案的答案显示了你。