实习:java集合应用和sql语句

来源:互联网 发布:sql 2005 64位个人版 编辑:程序博客网 时间:2024/06/06 00:13

    之前的东西都没想起来要记,就写下上周写的东西吧

上周开始看Java里以前想看没时间看的东西……比如集合;然后又得到了敲代码的任务,一样,又很幸运地用上了前两天看的集合的东西:比如addAll方法,把collection a中的元素全部加到collection b中,最好的一点就在于,重复的元素不会添加进来(collection的实现类为set,set存储的是无序不重复的数据),这样就很巧妙地实现了去掉集合中重复元素的需求~

还用了集合的retainAll方法,collection a中留下与collection b重复的元素,我用于统计两个集合重复元素的个数,间接统计出新添加的元素……我刚刚写着写着突然发现这个逻辑有点混乱冗长……直接用addAll就可以同时达到添加不重复元素和统计新添加元素个数两个目的呀……

写这块的过程中,我写着这样一行:Set<String> setVotedVoters = summary.getVotedVoters();当我修改setVotedVoters 时,summary中相应的votedVoters数据也被改了(刚才看object类提供的常用方法,发现clone方法可以得到当前对象的副本,而且二者之间完全隔离,这样votedVoters数据可能就不会随之改变了吧……),而我没有恢复它,导致结果错误,也是精准地找出了逻辑Bug……所以要处理啊,虽然最后我更改成了上段写到的实现方法后就不需要对setVotedVoters 进行修改操作了……

2015.08.18 刚才改程序,又看见了我之前的一个新发现:int $.inArray(a, b),判断元素a是否在集合b中,为“js判断集合中是否有重复元素而间接决定是否添加”这个功能助力了;


java就到这了,然后说sql语句:就一个distinct的使用和group by,有时候想用distinct控制查询出的某个字段的值都是唯一的,然而如果distinct后还有其他字段,并不能达到我们要的需求,它会认为distinct之后的所有字段的组合值是唯一的,这时候辅助group by(还是只用group by 我忘了……)可以达到目的~


0 0
原创粉丝点击