利用java实现单词倒序排列
本文就是会将数组里面的单词进行倒序排列例如howoldareyou->youareoldhow
示例程序输出结果:
thefirst:
Howoldareyou!?Idon'tunderstand
thesecond:
understanddon'tI?!youareoldHow
示例代码
publicstaticvoidmain(String[]args){ char[]chars=newString("Howoldareyou!?Idon'tunderstand").toCharArray(); System.out.println("thefirst:"); System.out.println(chars); reverseWords(chars);//主要方法 System.out.println("thesecond:"); System.out.println(chars); } /** *会将数组里面的单词倒序排列例如howoldareyou->youareoldhow *@paramchars */ publicstaticvoidreverseWords(char[]chars){ reverseChars(chars,0,chars.length-1); intbegin=-1; intend=0; for(inti=0;i<chars.length;i++){ charc=chars[i]; if((c>='a'&&c<='z')||(c>='A'&&c<='Z')||c=='\''){//简单的判断了一下是否是连续的单词 if(begin==-1){ begin=i; end=i; }else{ end=i; if(i==chars.length-1){ reverseChars(chars,begin,end); } } }else{ if(begin!=-1){ reverseChars(chars,begin,end); begin=-1; end=0; } } } } /** *将char一定范围内的字符倒序排列例如hello->olleh *@paramchars数组 *@parambegin开始位置 *@paramend结束位置 */ publicstaticvoidreverseChars(char[]chars,intbegin,intend){ while(end>begin){ charc=chars[begin]; chars[begin]=chars[end]; chars[end]=c; begin++; end--; } }
以上就是利用java实现单词倒序排列,希望对大家能够理解,对大家有所帮助