| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
大量收QQ微信精准粉/交友粉,非诚勿扰千里之行 始于足下
共有 407 人关注过本帖
标题:关于数组越界问题
只看楼主 加入收藏
lousang
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-12-27
结帖率:80%
  已结贴   问题点数:15  回复次数:4   
关于数组越界问题
程序代码:
package countletter;

import java.util.Scanner;

public class Countletter {
    public static void main(String args[]) {
        Scanner in = new Scanner(System.in);
        String str = in.nextLine();
        str=str.toLowerCase();
        int[] a = new int[26];
        for(int i = 0;i < str.length();i++) {
            char c = str.charAt(i);
            int index = c - 'a';
            a[index] = a[index] + 1;
        }
        for(int i = 0;i < a.length;i++) {
            if(a[i]!=0) {
                System.out.println("("+(char)(i+'A')+")"+"Num="+a[i]);
            }
        }
    }
}
2018-03-29 19:42
lousang
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2016-12-27
  得分:0 


错误提示
附件: 您没有浏览附件的权限,请 登录注册
2018-03-29 19:43
疯狂的小a
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:22
帖 子:378
专家分:1655
注 册:2018-2-6
  得分:2 
回复 2楼 lousang
index大于25就越界了呗
收到的鲜花
  • 静夜思 于 2018-03-31 01:31 送鲜花  1朵  

假如人生没有梦想,和咸鱼有什么区别!
2018-03-29 20:10
桃花岛主丶
Rank: 2
等 级:论坛游民
威 望:3
帖 子:26
专家分:58
注 册:2018-3-20
  得分:3 
int[] a = new int[str.length()];问题在于你怎么保证你输入的字符串的长度数组能装的下
2018-03-29 22:40
郭俊森1234
Rank: 2
等 级:论坛游民
帖 子:5
专家分:10
注 册:2018-3-25
  得分:10 
程序如果输入的是26个字母的时候没有问题,但是如果有符号或者数字之类的index就不是在0-25之间就会出现越界。这个时候我们需要对输入进行判断是否都是字母
2018-03-30 19:12







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027123 second(s), 10 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved