的最後一個字母我編程腳本用於交換在一個句子中每個字母有帶旁邊的字母。腳本截斷字符串
例如,ABRACADABRA
成爲BARCADABARA
...但是,有一個問題,當我編譯它截斷最後一個A,導致BARCADABARA
腳本。這導致任何字符串,即使是那些不以A結尾
/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone {
public static void main (String[] args) throws java.lang.Exception {
String word = "ABRACADABRA";
String finalword = "";
for (int i = 0; i < word.length()-1; i++) {
String wordsub = word.substring(i, i+1);
String wordsub2 = word.substring(i+1, i+2);
if(wordsub.equals("A") && !wordsub2.equals("A")){
i++;
finalword = finalword + wordsub2;
finalword = finalword + wordsub;
} else {
finalword = finalword + wordsub;
}
}
System.out.println(finalword);
}
}
順便說一句,在循環中連接字符串是一個糟糕的主意,它可能會導致嚴重的性能缺陷,爲更多的長字符串。考慮使用'StringBuilder'。 –
這是針對AP計算機科學實踐的......你認爲'StringBuilder'是集合的一部分嗎?我不這麼認爲,但謝謝。 @TagirValeev – seanlevan