java如何将前n个字符串移到最后
字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串”abcdefg”和数字2,该函数将返回左旋转两位得到的结果”cdefgab”。
例如:
输入: s = “abcdefg”, k = 2
输出: “cdefgab”
输入: s = “lrloseumgh”, k = 6
输出: “umghlrlose”
第一个方法可以用切片法来做:
public class ReverseString {
public static void main(String[] args) {
// 要将前k个字符移动到后面
int k = 2;
// 字符串s
String s = "abcdefg";
System.out.println(s.substring(k, s.length()) + s.substring(0, k));
}
}
第二个方法可以用列表遍历拼接的方法来做:
public class ReverseString {
public static void main(String[] args) {
// 要将前k个字符移动到后面
int k = 2;
// 字符串s
String s = "abcdefg";
// 定义一个可变字符串以便于添加
StringBuilder builder = new StringBuilder();
for (int i = k; i <s.length(); i++) {
builder.append(s.charAt(i));
}
for (int i = 0; i < k; i++) {
builder.append(s.charAt(i));
}
System.out.println(builder.toString());
}
}
运行结果:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/83635.html