java数组元素个数问题

怎么得到数组中各个元素的个数。求大神解答啊,非常感谢... 怎么得到数组中各个元素的个数。求大神解答啊,非常感谢 展开
 我来答 举报
haodemumu168
2015-01-20 · TA获得超过299个赞
知道小有建树答主
回答量:479
采纳率:100%
帮助的人:286万
展开全部

遍历出来数组的各个元素啊:

比如

1
2
3
4
5
6
7
int num[] = {111,22,3333,4,555};
      
     for(int a : num){
         System.out.println(a);//这里a就是num下的每个元素,string也类似
         //想得到长度也很简单,歪招一个转成string拿到length
          System.out.println(a + "**" +String.valueOf(a).length());
     }
追问
我的意思是求出每个元素有重复的个数:例如{1,1,2,3,4,5} 求出1 有几个,2有几个,3有几个,4有几个,5有几个
追答

那样你这个就有点蛋疼了,本身你这个数组元素就是不确定的,我们根本就不知道数组里面会有什么元素,统计的时候当然不好统计了,就拿这个举例子,我知道有1-5数字还好可以这么做

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
int num[] = {111,22,3333,4,555};
     int a=0,b=0,c=0,d=0,e=0;
         for(int m : num){
             String ss[] = String.valueOf(m).split("");
             for(String s:ss){
                 System.out.println(s);
                  
                 if(s.equals("1")){
                     a++;
                 }
                 if(s.equals("2")){
                     b++;
                 }
                 if(s.equals("3")){
                     c++;
                 }
                 if(s.equals("4")){
                     d++;
                 }
                 if(s.equals("5")){
                     e++;
                 }
             }
         }
         System.out.println(a +"**" +b+"**" + c+"**" +d+"**" + e  );

但是如果我们不知道,我abcde要如何定义跟1-5相关呢

白菜一颗
推荐于2016-10-04 · TA获得超过8916个赞
知道大有可为答主
回答量:3260
采纳率:69%
帮助的人:3779万
展开全部
1
2
3
4
int[] i = {1,2,3};
for (int j = 0; j < i.length; j++) {
    System.out.println(i[j]);
}

数组元素下标由0开始,比如上面的i数组里面有3个元素,就是i[0],i[1],i[2]

本回答被提问者和网友采纳
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
0808xyj
推荐于2018-03-23 · TA获得超过1891个赞
知道大有可为答主
回答量:1237
采纳率:100%
帮助的人:1092万
展开全部
1
2
3
4
5
6
7
8
9
public static void main(String[] args) {
        String str[][] = {{"a","b","c"},{"d","e"},{"f"}};
        int num = str.length;
        System.out.println("======数组外部长度>>>>" + num);
        for (int i = 0; i < str.length; i++) {
            int num2 = str[i].length;
            System.out.println("======数组内部长度>>>>" + num2);
        }
    }
追问
我的意思是求出每个元素有重复的个数:例如{1,1,2,3,4,5} 求出1 有几个,2有几个,3有几个,4有几个,5有几个
追答
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
 
public class TestDuplicateCount {
    public static void main(String args[]){
        int [] array = {1,1,2,3,4,5,5,5,9,0,9,10};
 
        Map<Integer,Integer> map = new HashMap<Integer,Integer>();
 
 
        for(int i = 0; i < array.length;i++){
            if(!map.isEmpty() && map.containsKey(array[i])){
                map.put(array[i], map.get(array[i]) + 1);
            }
            else{
                map.put(array[i], 1);
            }
        }
        Set<Integer> set = map.keySet();
        for (Integer key : set) {
            System.out.println(key + "==>" + map.get(key));
        }
    }
}
result:
0==>1
1==>2
2==>1
3==>1
4==>1
5==>3
9==>2
10==>1
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式