java代码中一点习惯问题

清凌渡 发布于 2011/04/09 22:34
阅读 562
收藏 2

我们JAVA老师给我提出来的,我的作业她总要指指点点,总得找出点问题,其实感觉不太像是问题。。

第一个:  java方法对于传入的对象是引用方式传值的,相当于“传址”, 所以在方法中修改了参数的值,方法外同样也有效,而我一般习惯将修改后的参数返回,比如:

public static int[] removeZero(int[] arr) {
    int[] newArr = {};
    int i=0;
    for(int v:arr) {
        if(v !=0) {
            newArr = Arrays.copyOf(newArr,i+1);
            newArr[i++]=0;
        }
    }
    return newArr;
}

我比较喜欢使用return将函数处理的结果返回,统一都这样使用。

另外,还有一个,比如,我有一个类:

class People {
    private String name;
    public void love(People p) {
        // 这句,老师说用p.name比较好
        System.out.println(this.name + p.getName());
    }
    public String getName() {
        return this.name;
    }
    public void setName(String name) {
        this.name = name;
    }
}
加载中
0
华宰
华宰

我觉得老师说得对!尽管这个问题不是很严重,但是养成好习惯总不会有错

0
清凌渡
清凌渡

引用来自#2楼“华宰”的帖子

我觉得老师说得对!尽管这个问题不是很严重,但是养成好习惯总不会有错

两个都对吗?主要是我不知道哪个习惯比较好一些。

第一个,感觉统一将函数处理后的数据return返回,这样更明确一些,代码更易读易理解。

第二个,我一般只调用对象自身数据时使用.name,而调用其它对象都用.getName(),这样如果getName()方法中有处理逻辑,同样也可以被执行。

0
红薯
红薯

引用来自#3楼“李毅”的帖子

引用来自#2楼“华宰”的帖子

我觉得老师说得对!尽管这个问题不是很严重,但是养成好习惯总不会有错

两个都对吗?主要是我不知道哪个习惯比较好一些。

第一个,感觉统一将函数处理后的数据return返回,这样更明确一些,代码更易读易理解。

第二个,我一般只调用对象自身数据时使用.name,而调用其它对象都用.getName(),这样如果getName()方法中有处理逻辑,同样也可以被执行。

所以呢,你要是听话就按老师的写法,要是个性比较强,就坚持自己的写法

反正没有对错

0
清凌渡
清凌渡

引用来自#4楼“红薯”的帖子

引用来自#3楼“李毅”的帖子

引用来自#2楼“华宰”的帖子

我觉得老师说得对!尽管这个问题不是很严重,但是养成好习惯总不会有错

两个都对吗?主要是我不知道哪个习惯比较好一些。

第一个,感觉统一将函数处理后的数据return返回,这样更明确一些,代码更易读易理解。

第二个,我一般只调用对象自身数据时使用.name,而调用其它对象都用.getName(),这样如果getName()方法中有处理逻辑,同样也可以被执行。

所以呢,你要是听话就按老师的写法,要是个性比较强,就坚持自己的写法

反正没有对错

那,您的习惯呢? 真的没有对错吗?对性能,或者代码的可读性等方面?  我是不是有点钻牛角尖了? 呵呵

0
红薯
红薯

我更倾向于你老师的说法,但有时也用你的方法

0
清凌渡
清凌渡

引用来自#6楼“红薯”的帖子

我更倾向于你老师的说法,但有时也用你的方法

嗯,谢谢!

0
R3商业智能
R3商业智能

淘宝面试问这个问题,答错了一票否决

0
清凌渡
清凌渡

引用来自#8楼“rivues”的帖子

淘宝面试问这个问题,答错了一票否决

晕,, 感觉 这问题的确不大。。  

不过认为在团队协作开发中,还是与大家保持一致最好。

0
ITspy
ITspy

团队里、、、还是要遵循规范的好、、、

0
sunyh
sunyh

感觉第一个  两种都可以  第二个  老师说的对。

返回顶部
顶部