2012-04-27 87 views
0
public class Driver { 

public static void main(String[] args) { 


    int length=0; 
    int MaxNumber=100; 
    StringBuilder password = new StringBuilder(); 



    do { 
     if (PasswordGenerator.matchLength (length)) 
      System.out.println("The length of the character is " + length); 
     length++; 
    } while (length < MaxNumber); 

    do { 
     if (PasswordGenerator.matchCharAt (password)) 
      System.out.println("The password is " + password); 
    } while (); 



} 
} 

我的代码应该找到给定密码的长度,它已经做了。然后下一步应该通过在Stringbuilder中附加每个单独的字符来确定密码。将MatchCharAt与StringBuilder进行比较?

但不管怎么说我不断收到这

方法matchCharAt类PasswordGenerator不能用于给定类型的错误: 要求:焦炭,诠释 发现:StringBuilder的 原因:实际的和正式的参数列表中的不同长度*

任何帮助将是可怕的!

P.S.密码生成器是一个“制造”类,如果您需要文档,我可以发布它。

+0

你可以发布'PasswordGenerator.matchCharAt'吗? – 2012-04-27 14:37:35

回答

1

错误代码说清楚,你正在使用错误的参数:

method matchCharAt in class PasswordGenerator cannot be applied to given types: Required: char, int Found: StringBuilder Reason: Actual and formal argument lists differ in length 

您需要提供两个参数:一是一个char,第二一个int

这个问题声音和气味像功课。如果是这样:请将其标记为家庭作业。

+0

啊,我不知道你是否打算在堆栈溢出标记你的作业。感谢您的参考。 – 2012-04-27 14:41:58

0

StringBuilder类似于一个字符串,但不一样。它缓存一个长度,以便可以连接而不会创建一堆额外的字符串(因为字符串是不可变的)。

它看起来并不像您实际上在该方法的任何地方使用StringBuilder,我建议您在PasswordGenerator.matchCharAt()方法中定义它并返回一个完整的密码字符串。

我们需要PasswordGenerator的文档才能在作业的约束范围内获得更具体的内容。