String newStr;
public RandomCuriosity(String input){
newStr = input;
}
public void shiftChars(){
char[] oldChar = newStr.toCharArray();
char[] newChar = new char[oldChar.length];
newChar[0] = oldChar[oldChar.length-1];
for(int i = 1; i < oldChar.length; i++){
newChar[i] = oldChar[i-1];
}
newStr = String.valueOf(newChar);
}
我创建了一个方法,将字符向前移动一个位置。例如,输入可能是:
输入:
Stackoverflow
输出:wStackoverflo
我的操作方式是改变字符串实例。将该字符串转换为 char
数组(称为 oldChar
),将 oldChar
的最后一个索引指定为 my new Char
数组的第一个索引,并创建一个 for 循环,将 oldChar
的第一个索引作为新的 Char
数组的第二个索引,以此类推。最后,我将 char 数组转换回字符串。我感觉我做了太多事情来完成一些非常简单的东西。有没有更有效的方法来完成这样的任务?
编辑:感谢伟大的答案!
substring
дҢүз”Ёй‡ҚиҢҢзљ„жһ„йЂ е‡Ңж•°пәЊиҮӨжһ„йЂ е‡Ңж•°жҺӨ受偏移量和и®Ұж•°пәЊе№¶дҢүз”ЁArrays.copyOfRange()
иҺ·еЏ–е—符数组的е‰Үжњ¬гЂ‚ - Sotirios Delimanolis