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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李兆宁 中级黑马   /  2012-8-10 10:42  /  2659 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 李兆宁 于 2012-8-10 10:48 编辑

class Array2
{
        public static void main(String[] args)
        {
                int[] arr = new int[]{2,4,12};
                int[] brr = {2,4,1};
        }
}

学习视频中,对于数组的定义,初始化时用new与不用new的区别在哪里呢?
什么时候需要new,什么时候不需要,有硬性规定吗?

另外问个小技巧,看视频中,老师用单行注释,一次注释多行,是怎么注释的呢?
(就是先选定要注释的行,然后就在每一行的前面加上注释符了)像:

class Array2
{
        public static void main(String[] args)
        {
                //int[] arr = new int[]{2,4,12};
                //int a = 9;
                //int[] brr = {2,4,1};
        }
}

编辑器是editplus。

评分

参与人数 1技术分 +1 收起 理由
杨志 + 1

查看全部评分

6 个回复

倒序浏览
不同于String类,String由于实现了常量池 所以new 和不new 有区别
对于数组的定义,初始化时用new与不用new 没区别
只是两种方式罢了,因为数组是引用数据类型,建立对象时,无论用不用new,数组实体都是放在
堆内存中,引用变量放在栈内存。

老师用单行注释,一次注释多行,应该是定义的快捷键
不用定义快捷键也可以,就是鼠标选定内容后 右键按F再按O就行了

评分

参与人数 2黑马币 +15 收起 理由
杨志 + 10
李兆宁 + 5 很给力!

查看全部评分

回复 使用道具 举报
对于数组new与不new我认为是没有区别的,多行注释要像这样/*注释部分*/
回复 使用道具 举报
class Array2
{
        public static void main(String[] args)
        {
                int[] arr = new int[]{2,4,12};
                int[] brr = {2,4,1};
        }
}

学习视频中,对于数组的定义,初始化时用new与不用new的区别在哪里呢?
什么时候需要new,什么时候不需要,有硬性规定吗?
/*
有区别啊,可以简化书写,至于什么时候用,当你不知道数组里需要存什么元素,
需要先定义一个容器在哪里,你就必须new了,以便以后使用的时候用。

*/


另外问个小技巧,看视频中,老师用单行注释,一次注释多行,是怎么注释的呢?
(就是先选定要注释的行,然后就在每一行的前面加上注释符了)像:

/*
默认没有,可以自己设,工具---参数设置---工具---快捷键---编辑---行注释
*/


class Array2
{
        public static void main(String[] args)
        {
                //int[] arr = new int[]{2,4,12};
                //int a = 9;
                //int[] brr = {2,4,1};
        }
}

评分

参与人数 2黑马币 +20 收起 理由
杨志 + 15 鼓励一下!
李兆宁 + 5 很给力!

查看全部评分

回复 使用道具 举报
在Java中声明数组后,1.在栈内存中分配内存给数组变量.2.在堆内存中分配内存给数组对象.
实际上数组要初始化的是数组对象,栈内存是不用初始化的.其实Java中的引用类型都是这样的.
Java数组的初始化共有三种.1.静态初始化.2.动态初始化.3.不去初始化,而是直接引用其他数组的数组对象.
A:静态初始化:初始化的时候显示指定每个数组元素的初始值.不用指定长度,系统将自己根据元素来获取长度.
先定义一个数组,需用一下格式 type[] ArrayName;
静态初始化如下:  arrayName=new type[]{element1,element2,elements3............}
B:动态初始化:初始化的时候只指定长度,不指定元素.  arrayName= new type[6] ;
C:不能同时使用动态和静态.  
你写的  int[] arr = new int[]{2,4,12};和 int[] brr = {2,4,1};都是静态初始化,只不过一个加了定义,而另一个没加定义。

你问的小技巧:选定要注释的行,按ctrl+?键,要取消时也是ctrl+?
               

评分

参与人数 1技术分 +1 收起 理由
杨志 + 1 不错不错!讲到点子上了!

查看全部评分

回复 使用道具 举报
谢谢诸位,问题解决。
回复 使用道具 举报
顶!E:\LB33.jpg
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马