java代码写出艺术范儿

1.健值对数据排序

我们在写代码的过程中,肯定会把数据存放在数据结构中,而经常遇到需要对数据作排序的业务步骤,这样更方便我们后续处理数据,关于健值对的数据存储,在业务流程中,我

们组织一批大量的健值对数据,但数据是无序的,混乱的,假设,我们的key保存的是time 格式为 yyyyMMddHHmmss这个样子,然后我们想要对这批数据通过key来排序,正常的

话我们会自己去排序,或者通过实现comparator去排序,这样比较麻烦而且会影响程序执行的性能,其实jdk中实现的map数据结构,TreeMap,她的底层是实现了红黑二叉树的算

法,这个有兴趣的可以直接去看源码,好处是,将新元素加入到treeMap中时,她会去自动的对key进行自然升序排序。实用、简单。

简单的例子:

public class TreeMapSortTest {

// 声明一个treeMap

private static TreeMap<String,String> treeMap =null;

// 声明一个hashtable

private static Hashtable<String,String> hashtable =null;

// 在构造函数中,创建对象时对map进行初始化

public TreeMapSortTest(){

treeMap = new TreeMap<String,String>();

hashtable = new Hashtable<String, String>();

}

public static void main(String []args){

TreeMapSortTest test =new TreeMapSortTest();

test.treeMap.put("3","3");

test.treeMap.put("1","1");

test.treeMap.put("2","2");

test.hashtable.put("3","3");

test.hashtable.put("1","1");

test.hashtable.put("2","2");

for (Stringstr : test.treeMap.keySet()){

System.out.println("treeMap:"+test.treeMap.get(str));

}

for (Stringstr :test.hashtable.keySet()){

System.out.println("hashMap:"+test.hashtable.get(str));

}

}

}


结果:

treeMap:1

treeMap:2

treeMap:3

hashMap:3

hashMap:2

hashMap:1


map的key是set集合?

其map的内部排序其实并不像表面那么简单,必须要深刻理解源码,才能够在编程过程中随心所欲的写出漂亮的代码,关于map内部排序,我转载了另一篇详细的博文


2.使用set的特性去重

例:new set(list),list直接转换为set


3.在类中定义一个map,用来扩展不确定字段

很多时候,在写代码,一个类中的字段并不是百分之百的完全确定下来,这样就导致类结构不稳定,扩展难。一个简单的想法,在类中定义一个map对象,ok了,哈哈。

当你需要对类做字段扩展的时候,直接在对象中获取到map,然后将字段以健值对的形式put进去,完美。我觉得挺有意思,挺方便的。


4.static{}静态代码块




未完。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值