java - 刚学Map容器,联系键与值的联系,但程序中关于freq++ 产生了疑问
高洛峰
高洛峰 2017-04-17 17:12:49
[Java讨论组]

程序是 由Random 产生的数字,而值是该数字出现的次数

语句为 map . put (key , freq == null ? 1 : freq +1) ;

    /*{0=496, 1=514, 2=482, 3=480, 4=477, 5=508, 6=469, 7=482, 8=526, 9=511, 10=504, 11=518, 12=496, 13=516, 14=525, 15=508, 16=514, 17=506, 18=490, 19=478}*/

而语句为map . put (key , freq == null ? 1 : freq ++) ; 则错误

    /*{0=1, 1=1, 2=1, 3=1, 4=1, 5=1, 6=1, 7=1, 8=1, 9=1, 10=1, 11=1, 12=1, 13=1, 14=1, 15=1, 16=1, 17=1, 18=1, 19=1}*/

代码如下:

import java . util . * ;

public class MapTest
{
        public static void main (String [ ] args  )
        {
                Map <Integer , Integer > map  = new HashMap  <Integer , Integer >( ) ;
                Random rand = new Random ( ) ;
                
                for (int i = 0; i < 10000 ; i++)
                {
                        int key = rand . nextInt ( 20) ;
                        Integer freq = map . get (key) ; 
                        map . put (key , freq == null ? 1 : freq ++) ;    
                }
                System . out . print ( map) ;
        }
}
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(1)
伊谢尔伦
++freq
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号