A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

张琨123

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

© 张琨123 初级黑马   /  2019-9-20 23:02  /  931 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

        局部变量
                写在一对大括号({},类除外)里面的变量,称为局部变量。
                int[] arr 写在main方法里面 就是局部变量
                局部变量存储在栈内存中
                在main方法结束以后,该局部变量会立即消失
               
        对象
                通过new出来的称之为对象
                对象存在堆内存中,使用完以后不会立即消失(被回收)
                等垃圾回收器空闲时在合适的时间回收。
                在堆里面的数据都有默认的初始化值
                整型                                        0
                浮点型                                        0.0
                布尔类型                                false
                字符                                        空字符
                引用类型(包括String)        null
        建立关系
                对象开辟内存空间并且初始化之后,会把自己空间的地址值给到指向自己的变量(该变量存储在栈内存中)
               
        直接使用数组变量
                如果直接输出arr(局部变量),输出的实际是arr指向的对象的地址值(该对象在堆里面的地址值)
               
        操作数组中的每个元素
                arr
                首先找到栈里面的arr,arr指向的是堆内存中的某个地址。
                找到该地址以后,会根据索引找到对应的元素,找到以后可以进行赋值/读取等操作。
      
        g 内存图解2
                两个不同的int数组类型的变量,指向了同一个int数组对象
                通过任意一个变量,均可操作数组对象内的元素。
      
               
               
               
               
2. 数组大厂面试题实战(百度)
        在一个数组中,某一个元素出现的次数>length/2,请用程序获取数组中的该数字。
        {1,2,6,1,5,1,3,1,1}
        1. 遍历数组,统计每个元素出现的次数,如果某个元素出现次数大于长度的一半。
      
        2. 排序
                从小到大排序 结果是 1 1 1 1 1 2 3 5 6    6 5 3 2 1 1 1 1 1

                1 1 1 1 1  3 5 6    6 5 3  1 1 1 1 1
               
                对数组进行排序,获取数组中索引为length/2的元素,即为该数字
               
               
        3. 火拼
               
                1 1 1 1 1  3 5 6
                {1,6,1,1,1,3,1,5}
               
                第一个元素上场前
                场上目前胜利的帮派/某个值winner = 0;
                场上有的人数/元素数量count = 0;
               
                第一元素1上场后
                winner = 1;
                count = 1;
               
                第二个元素6上场后
                winner = 0;
                count = 0;
               
                第三元素1上场后
                winner = 1;
                count = 1;
               
                第四个元素1上场后
                winner = 1;
                count = 2;
                ……
               
               
                上场 看count == 0
                        是 winer = 自己
                           count++
                          
                        否
                                看是不是自己人
                                        是winner==自己      
                                                count++
                                                //winer=自己
                                        否 count--

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马