美文网首页
技术训练营——第五周思想报告

技术训练营——第五周思想报告

作者: 灬醉饮千殇 | 来源:发表于2019-03-11 13:49 被阅读0次

    【第 5 周讨论主题:Java 基本编程语法】
    1.写几行你觉得能代表你个人技术标签的 Java 代码

    TridentTopology topology = new TridentTopology();
    Stream stream = topology.newStream("spout", spout);
    EsConfig esConfig = new EsConfig("http://localhost:9300");
    Fields esFields = new Fields("index", "type", "source");
    EsTupleMapper tupleMapper = EsTestUtil.generateDefaultTupleMapper();
    StateFactory factory = new EsStateFactory(esConfig, tupleMapper);
    TridentState state = stream.partitionPersist(factory,esFields,new EsUpdater(),new Fields());
    

    2.如何解决 if-else 多层嵌套的问题。
    首先,要梳理一下代码业务,将业务分层,把接口分为外部和内部接口,所有空值判断放在外部接口完成;而内部接口传入的变量由外部接口保证不为空,从而减少空值判断

    其次,利用多态,把业务判断消除,各子类分别关注自己的实现,并实现子类的创建方法,避免用户了解过多的类。

    然后。可以考虑把分支状态信息预先缓存在HashMap里,直接get获取具体值,消除分支。

    3.switch 有哪些奇葩的脾气?
    switch中是不能写变量的,只能写常量,但不支持boolean和long类型,支持枚举类型和字符串类型。

    要注意避免数据穿透的问题,break一定要记得添加在case条件中

    default便于后续补充你没有想到的逻辑,因此如果要用switch一定要加default条件

    相关文章

      网友评论

          本文标题:技术训练营——第五周思想报告

          本文链接:https://www.haomeiwen.com/subject/pdavpqtx.html