繁体   English   中英

替换字符串中的相应字符(java)

[英]Replacing corresponding characters in Strings (java)

任务是:编写静态函数操作并返回String s

public static String tr(String s, String from, String to)

该方法返回一个String ,其中来自所有字符s存在于from由相应的(在相同的位置)字符替换从to 为此, from所有字符都必须不同,并且fromto的长度应该相同。 例如,如果from是“abc”, to是“XXY”,那么所有出现的 'a' 和 'b' 都应该被 'X' 替换,'c' 应该是 'Y'。

结果来自

System.out.println(tr("November 2016", "abcdefghijklmnopqrstuvwyz", "ABCDEFGHIJKLMNOPQRSTUVWYZ"));

System.out.println(tr("abcXYZ","aZcX","||Cx"));

应该分别是 2016 年 11 月和 |bCxY|。

这是我的代码。 我什至无法正确编译它。 任何人都可以看看并帮助我。

public static String tr(String s, String from, String to) {
    for (int i = 0; i < s.length(); i++) {
        if s.charAt(i) == from.charAt(i) {
            s = s.replace(s.charAt(i), to.charAt(i));
        }
    }
    return s;
}

你的 if 语句需要括号

if (s.charAt(i) == from.charAt(i))

注意已检查您的逻辑

你的逻辑应该是

for (int i = 0; i < s.length(); i++) {

    int idexof = from.indexOf(s.charAt(i));
    if (idexof != -1) {
        s = s.replace(s.charAt(i), to.charAt(idexof));   
    }

}
return s;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM