IndexOf:有多少个元音?

时间:2017-06-08 18:15:58

标签: java

我需要让代码告诉用户在第一个字符串中有五个元音(a,e,i,o,u)中有多少个,以及第二个字符串。这是我到目前为止所做的工作,但我在如何打印总共有多少元音方面陷入困境。

System.out.println("Hello world!".split(" ")[0]);

3 个答案:

答案 0 :(得分:1)

尝试

int count = s1.split("a").length - 1

答案 1 :(得分:1)

就像我上面说的那个人一样,你需要设置一个名为totalVowels的变量(或类似的东西)并在每次遇到元音时递增它。

我将使用您自己的代码(为了让您更容易),并稍​​微修改它以便您可以看到我的意思

       int totalVowels=0;

       int letterA=(s1.indexOf(('a')));
       int letterE=(s1.indexOf(('e')));
       int letterO=(s1.indexOf(('o')));
       int letterI=(s1.indexOf(('i')));
       int letterU=(s1.indexOf(('u')));

       if(letterA >=0){
          totalVowels ++; (this increments the total number of vowels)
       }
       if(letterE >=0){
          totalVowels ++; 
       }
       if(letterO >=0){
          totalVowels ++; 
       }
       if(letterI >=0){
          totalVowels ++; 
       }
       if(letterU >=0){
          totalVowels ++; 
       }

      System.out.println ("String1 contains" + totalVowels +" of the 5 vowels");
      totalVowels =0;

现在这不是真正的最佳方式,但它会密切关注您的代码并且应该完成这项工作。

答案 2 :(得分:0)

试试这段代码。

var compiled_costs = _.chain(costs)
                      .groupBy("flight")
                      .value();

{
"100":
    [    {"name":"JON","flight":100,"value":12,"type":"uns"},
         {"name":"JON","flight":100,"value":35,"type":"sch"}
    ],
"200":
    [
         {"name":"BILL","flight":200,"value":33,"type":"uns"},  
         {"name":"BILL","flight":200,"value":45,"type":"sch"}
    ]
}