【问题标题】:Creating a method with char parameter in java在java中创建一个带有char参数的方法
【发布时间】:2016-03-30 14:20:21
【问题描述】:

如果有人能分解这些说明,我将不胜感激(我是 java 新手)

我必须写一个方法drawSeparators,参数是要用于水平分隔符的字符....我需要-和=字符作为分隔符。到目前为止,我有这个(下),但不知道如何让它在调用时实际工作,一旦调用我得到 必需:字符 发现:没有参数 原因:实际参数列表和形式参数列表的长度不同

private void drawSeparators(char separator)
 {
 ta.append("----------------------------------------------------------");
 ta.append("==========================================================");

 }

【问题讨论】:

    标签: java parameters char parameter-passing


    【解决方案1】:
    private static final int NUM_CHARS = 40; //number of chars to print
    private void drawSeparators(char separator)
    {
        for(int i = 0; i < NUM_CHARS; i++) 
        {
            ta.append(separator);
        }
    }
    

    打电话:

    drawSeparators('=');
    

    【讨论】:

    • 你要在最后加上\n
    • 我把它漏掉了,因为他也在他的示例代码中漏掉了它
    【解决方案2】:
    private void drawSeparator(final char separator)
    {
      for (int index = 0; index < SOME_NUMBER_OF_YOUR_CHOICE; ++index)
      {
        ta.append(separator);
      }
    }
    

    【讨论】:

    • 为什么我们需要在方法参数中使用 final 关键字?
    • 不需要,但我猜他选择它是明确的,因为这种方法预计不会改变要打印的请求字符
    • 我总是使用 final 作为参数。这是一个好习惯,但并不是普遍接受的好习惯。如果您的参数是最终的,编译器将标记任何在方法内更改它们的尝试。
    【解决方案3】:
    private final static int SEPARATOR_COUNT = <your_max_number>;
    
    public void main(String[] args) {
        //
        //
        //
        // code
        //
        //
        //
    
        // When passing a character, make sure to use ' (char) and not " (String)
        // You can also make these characters constants, but that's up to you
        drawSeparators('-');
        // and/or
        drawSeparators('=');
    }
    
    private void drawSeparators(char separator) {
        for (int index = 0; i < SEPARATOR_COUNT; index++) {
            ta.append(separator);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2017-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-03
      • 1970-01-01
      相关资源
      最近更新 更多