package stringRe;
//元音字母反转
public class ReverseVowelsofString {
public static void main(String[] args) {
// TODO Auto-generated method stub
String s = "hello";
SolutionVo sv = new SolutionVo();
String res = sv.reverseVowels(s);
Show1.show(res);
}
}
class SolutionVo {
public String reverseVowels(String s) {
// //将字符串中的原因反转存储===============》居然说超时
// String reverString = new StringBuffer(s).reverse().toString();
// String vols = "";//存储反转后的元音
// int sl = s.length();
// for(int i = 0; i<sl;i++)
// {
// char c = reverString.charAt(i);
// if(c=='a'||c=='A'||c=='e'||c=='E'||c=='i'||c=='I'||c=='o'||c=='O'||c=='u'||c=='U')
// {
// vols =vols+c;
// }
// }
//
// //然后在按原顺序在字符串中查找元音 找到后就替换
// String res = "";
// int t = 0;//检索vols中的元音
// for(int i = 0; i<sl; i++)
// {
// char c = s.charAt(i);
// if(c=='a'||c=='A'||c=='e'||c=='E'||c=='i'||c=='I'||c=='o'||c=='O'||c=='u'||c=='U')
// {
// res += vols.charAt(t);
// t++;
// }
// else//若不是元音则按原顺序
// {
// res += c;
// }
// }
// return res;
char[] c=s.toCharArray();
char[] c2=new StringBuffer(s).reverse().toString().toCharArray();
char[] temp =new char[c2.length];
int count=0;
for(int i=0;i<c2.length;i++)
if(c2[i]=='a'||c2[i]=='A'||c2[i]=='e'||c2[i]=='E'||c2[i]=='i'||c2[i]=='I'||c2[i]=='o'||c2[i]=='O'||c2[i]=='u'||c2[i]=='U'){
temp[count++]=c2[i];
int count2=0;
for(int i1=0;i1<c.length;i1++)
if(c[i1]=='a'||c[i1]=='A'||c[i1]=='e'||c[i1]=='E'||c[i1]=='i'||c[i1]=='I'||c[i1]=='o'||c[i1]=='O'||c[i1]=='u'||c[i1]=='U'){
c[i1]=temp[count2++];
}
}
return new String(c);
}
}
class Show1{
public static void show(String s)
{
System.out.println(s);
}
}
java字符串中元音字母反转
最新推荐文章于 2022-02-23 11:15:39 发布