Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 字符串索引愤怒,但看不出原因。代码按照我的要求执行,但在提交到大学检查系统时失败_Java_Oop_Random_Passwords - Fatal编程技术网

Java 字符串索引愤怒,但看不出原因。代码按照我的要求执行,但在提交到大学检查系统时失败

Java 字符串索引愤怒,但看不出原因。代码按照我的要求执行,但在提交到大学检查系统时失败,java,oop,random,passwords,Java,Oop,Random,Passwords,因此,我目前正在学习一门在线课程,并取得了相当好的进展,直到有一次练习,我应该创建一个密码生成器,密码长度由用户给定 代码的输出看起来不错,它生成了给定长度的密码,但当提交给大学在线检查系统时;我收到一个失败和此错误: StringIndexOutOfBoundsException:字符串索引超出范围:26 我是新来的,我真的很努力地想自己解决这个问题。但作为一个新事物,即使是表面的解决方案也很难理解 我将代码放在这里,不确定如何最小化代码以显示问题 我将感谢任何帮助。如果我有机会的话,我肯定

因此,我目前正在学习一门在线课程,并取得了相当好的进展,直到有一次练习,我应该创建一个密码生成器,密码长度由用户给定

代码的输出看起来不错,它生成了给定长度的密码,但当提交给大学在线检查系统时;我收到一个失败和此错误:

StringIndexOutOfBoundsException:字符串索引超出范围:26

我是新来的,我真的很努力地想自己解决这个问题。但作为一个新事物,即使是表面的解决方案也很难理解

我将代码放在这里,不确定如何最小化代码以显示问题

我将感谢任何帮助。如果我有机会的话,我肯定会提前支付的。祝您一切顺利,谢谢。

这是一行:

thisChar = passwordOptions.charAt(random.nextInt(passwordLength + 1)); 

passwordLength是传入的参数;如果超过25,则可能会选择不在passwordOptions范围内的字符。对于较小的passwordLength值,您的密码中的所有字母是否都位于字母表的开头?

没有人会为您调试代码(尤其是当某些索引过时时!)。试试看@arghtype,我很抱歉。对于一个初学者来说,这让我感到慌乱。这不会再发生了。谢谢你的链接,它帮助我理解。你的最后一个问题和其他回复帮助我解决了这个问题。我无意中说从0和passwordLength+1之间的随机索引中获取一个passwordOptions字符。但是,用户可以设置密码长度,这样就不会从密码选项中提供的全部字符范围中进行选择。我将此参数更改为(passwordOptions.length());因此,它可以从可用字符的整个范围中选择一个字符,而不仅仅是用户给定的范围。我相信你知道我只是在为别人解释和说谢谢。