Mam następujący kod, aby odwrócić ciąg słowo po słowie, mam pytanie jednak, po pierwsze może ktoś wskazać, jak zrobić lepszy kod? i po drugie, jak mogę usunąć przestrzeń, którą kończę na początku nowego łańcucha.Odwróć ciąg słowo po słowie w Javie
String str = "hello brave new world";
tStr.reverseWordByWord(str)
public String reverseWordByWord(String str){
int strLeng = str.length()-1;
String reverse = "", temp = "";
for(int i = 0; i <= strLeng; i++){
temp += str.charAt(i);
if((str.charAt(i) == ' ') || (i == strLeng)){
for(int j = temp.length()-1; j >= 0; j--){
reverse += temp.charAt(j);
if((j == 0) && (i != strLeng))
reverse += " ";
}
temp = "";
}
}
return reverse;
}
zdanie w tej chwili staje się:
olleh evarb Wen dlrow
Zawiadomienie przestrzeń na początku nowego łańcucha.
kodzie będzie działać tylko przez edycję pętli jak 'if ((str.charAt (i) == '„) || (i == strLeng)) { \t \t if (i == strLeng) { \t \t \t temp + = ""; \t } dla (int j = temp.length() - 2; j> = 0; j -) {'Ale jeśli szukasz lepszego kodowania, Dawood ma najprostszy i wbudowany sposób działania to. –
Co to jest "lepszy kod"? Szybciej? Bardziej zwięzły? Więcej "elegancki" lub "sprytny"? Czytelnik łatwiej czytać? To wyraźnie wymaga odpowiedzi opartych na opiniach. –