这是在问我创建两个不同的构造函数,但是我没有发现两者之间的区别。是第一个问我实例化数组或其他东西吗?而且我不明白对方会要求我做什么。更新:我相信第一个构造函数是正确的。我不确定如何在第二个数组中添加数组。我正在考虑尝试使用ASCii值或其他值,但是我不确定如何执行此操作。
第二个构造函数应计算每个字母在字符串输入中出现的次数。
如果字符串仅包含字母A-Z,则可以使用charAt()
方法在每个索引处获取字母。因为分配给这些字母的代码不是从0开始,所以在将其用作数组索引之前,您需要从每个字母中减去一个偏移量。
char ch = data.charAt(i);
if (ch < 'A' || ch > 'Z') throw new IndexOutOfBoundsException("Invalid input: " + ch);
int code = ch - 'A'; /* Translate 'A' to zero, 'B' to 1, etc. */