int Array中的char数组

时间:2016-03-19 05:12:02

标签: arrays char

  String s = "abcdeffa"      

  char[] input1 = s.toCharArray();

  int[] freq = new int[10];
  for (int i = 0; i < input1.length; i++)
      freq[input1[i]]++;

我不理解freq[input[i]]++;部分。 freq是一个int [],但它如何在freq []数组中存储chari。

任何人都可以解释freq[input1[i]]++;的工作原理吗? 感谢

2 个答案:

答案 0 :(得分:0)

此代码应该提供一个超出范围的异常,因为input[i]返回字符代码。因此freq[input[0]] freq[97]'a'的ASCII代码为97)超出界限,因为您的数组只能占用10个元素。

答案 1 :(得分:0)

我认为你会发现ArrayIndexOutBound Exception。因为它会将相应的char转换为ASCII值,但是你的数组大小只有10,所以它会给你ArrayIndexOutBound异常。