两个for

第一个for将每一个元音依次存放进一个char数组

第二个for,每检测到元音,就从char数尾部开始,依次赋值

如何检测元音呢?当然写一个冗长的if(),不过我们有更好的选择

hashset的contains,

或者String自带的contains,

或者建一个int[128],因为元音有5个,算上大小写,一共10个,他们的ascii值都在128以内,然后将元音对应的int[]值设为1,其它设为0,只要检测int[strs[i]] ?= 0即可判断是否为元音

 class Solution {
public String reverseVowels(String s) {
if(s.length() == 0)
return ""; String v = "aeiouAEIOU";
char[] vowel = new char[s.length()];
char[] s2 = s.toCharArray();
int idx = 0; for(int i=0; i<s.length(); i++){
if(v.contains(s.charAt(i)+""))
vowel[idx++] = s.charAt(i);
} for(int i=0; i<s.length(); i++){
if(v.contains(s.charAt(i)+""))
s2[i] = vowel[--idx]; }
return new String(s2);
}
}

最新文章

  1. css选择器
  2. 发现 OpenStack: 架构、功能和交互
  3. Sharepoint2012 Report权限
  4. URAL 1936 Roshambo 题解
  5. JSP/Servlet 中的汉字编码问题
  6. C++ 学习笔记(一)
  7. ActiveMQ 集群(1)
  8. 如何快速正确的安装 Ruby, Rails 运行环境
  9. HAproxy健康检查的三种方式
  10. ABP PUT、DELETE请求错误405.0 - Method Not Allowed 因为使用了无效方法(HTTP 谓词) 引发客户端错误 No &#39;Access-Control-Allow-Origin&#39; header is present on the requested resource
  11. 调出js控制台可以在浏览器地址栏输入about:blank
  12. Markdown中特殊字符的转义字符
  13. idea 优先引用项目代码,而非jar包
  14. February 28th, 2018 Week 9th Wednesday
  15. Intellij Idea 2017创建web项目及tomcat部署实战
  16. java io系列13之 BufferedOutputStream(缓冲输出流)的认知、源码和示例
  17. matplotlib 与 seaborn 中出现中文乱码的解决方法
  18. dispatch_barrier_async,加锁
  19. 微信小程序在当前页面设置其他页面的数据
  20. php正则表达式的三个最基本原则分享

热门文章

  1. php+jquery 上拉加载
  2. SQL Server ODBC 解决方案
  3. 最大流拆点——poj3281
  4. Python 迭代器与生成器及装饰器
  5. 解决ubuntu16.04鼠标键盘自动休眠导致的失灵问题
  6. 夏令营501-511NOIP训练17——蛇形矩阵
  7. PHP面向对象之继承的基本思想
  8. Java并发编程中的若干核心技术,向高手进阶!
  9. 2019-8-31-win2d-通过-CanvasActiveLayer-画出透明度和裁剪
  10. 如何快速合并多个TXT文本内容