首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >调用Java方法

调用Java方法
EN

Stack Overflow用户
提问于 2015-11-13 20:50:37
回答 3查看 220关注 0票数 0

我试图调用java方法来确定用户输入的字母是元音还是辅音。不确定如何正确调用该方法。

代码语言:javascript
运行
复制
import java.util.*;
public class HW8Problem1{
   public static void main(String[] args) {

      Scanner input = new Scanner(System.in);

      System.out.print("Enter a letter: ");

      String letter = input.nextLine();

   }

   public static void vowel(String a){

      if (a.charAt(0) == 'a' || a.charAt(0) == 'A'){
         System.out.println(" is a vowel");

         if (a.charAt(0) == 'e' || a.charAt(0) == 'E')
            System.out.println(" is a vowel");

         if (a.charAt(0) == 'i' || a.charAt(0) == 'I')
            System.out.println(" is a vowel");

         if (a.charAt(0) == 'o' || a.charAt(0) == 'O')
            System.out.println(" is a vowel");

         if (a.charAt(0) == 'u' || a.charAt(0) == 'U')
            System.out.println(" is a vowel");

         else
            System.out.println(" is a consonant");    

      }
   }
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-11-13 20:53:38

您可以通过指定一个方法的名称,然后加上括号(())来调用它,如果有的话,它包含要传递给该方法的参数。就你而言,例如:

代码语言:javascript
运行
复制
public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    System.out.print("Enter a letter: ");
    String letter = input.nextLine();
    vowel(letter); // Here!
}
票数 2
EN

Stack Overflow用户

发布于 2015-11-13 21:08:20

正如Mureinik所说,您可以使用vowel(line);调用该方法

但是看到你的代码,我会提出另一个改进的建议。永远不要重复自己。您能看到如何多次重复几乎相同部分的代码吗?删除重复项并以不同方式创建方法,例如:

代码语言:javascript
运行
复制
private static boolean isVowel(String line) {
    line = line.toLowerCase();
    return line.equals("a") || line.equals("e") || line.equals("i") || line.equals("o") || line.equals("u");
}

然后在main方法中打印

代码语言:javascript
运行
复制
System.out.println(isVowel(line) ? " is a vowel" : " is a consonant");

请注意,此解决方案假定line不是null,并且是line.length() == 1。尝试自己执行输入参数处理,这样就不会将单词传递到isVowel()方法中。

票数 2
EN

Stack Overflow用户

发布于 2020-08-19 07:24:20

以下是我的建议,它是测试和良好的工作。请注意,您必须确保if表达式应该在一行中。

代码语言:javascript
运行
复制
import java.util.*;

public class HW8Problem1{
   public static void main(String[] args) {

      Scanner input = new Scanner(System.in);

      System.out.print("Enter a letter: ");

      String letter = input.nextLine();
//the below is the start of  IF expression, put it in one line code
      if (letter.toUpperCase().charAt(0)== 'A'||letter.toUpperCase().charAt(0)== 'E'||letter.toUpperCase().charAt(0)== 'O'||letter.toUpperCase().charAt(0)== 'i'||letter.toUpperCase().charAt(0)== 'U' ){ //End of IF expression until here, in 1 line
            System.out.println("is a vowel");
      }else{
        System.out.println(" is a consonant"); 
      }
      
   
   }

 }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33701532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档