关键词搜索

源码搜索 ×
×
JAVA

Java 8中处理集合的优雅姿势——Stream

在Java中,集合和数组是我们经常会用到的数据结构,需要经常对他们做增、删、改、查、聚合、统计、过滤等操作。相比之下,关系型数据库中也同样有这些操作,但是在Java8之前,集合和数组的处理并不是很便捷。不过,这一问题在Java8中得到了改善,Java8API添加了一个新的抽象称为流Stream,可以让你以一种声明的方式处理数据。本文就来介绍下如何使用Stream。特别说明一下,关于Stream的性
前端开发

javascript动态构建函数

可以动态构建一个函数。为啥要这么做?我还真的就有这么一个需求。原因是,我有一个查找函数,根据输入条件的不同进行查找。从一大堆数据里面进行查找。为了提高点性能,我想根据输入条件,预先在循环外部构造好函数,在循环里面直接调用这个函数。否则的话,循环里面充斥着各种判断,每一轮循环都要判断。所以,需要动态构造函数,将判断提取到循环外。javascript还真支持。原理主要是可以将字符串转成语句。varf=
JAVA

Java 8中字符串拼接新姿势:StringJoiner

在为什么阿里巴巴不建议在for循环中使用”+”进行字符串拼接一文中,我们介绍了几种Java中字符串拼接的方式,以及优缺点。其中还有一个重要的拼接方式我没有介绍,那就是Java8中提供的StringJoiner,本文就来介绍一下这个字符串拼接的新兵。如果你想知道一共有多少种方法可以进行字符串拼接,教你一个简单的办法,在IntellijIDEA中,定义一个JavaBean,然后尝试使用快捷键自动生成一
JAVA

Java工程师成神之路(2019正式版)

主要版本更新时间备注v1.02015-08-01首次发布v1.12018-03-12增加新技术知识、完善知识体系v2.02019-02-19结构调整,更适合从入门到精通;进一步完善知识体系;新技术补充;一、基础篇面向对象什么是面向对象面向对象、面向过程面向对象的三大基本特征和五大基本原则平台无关性Java如何实现的平台无关JVM还支持哪些语言(Kotlin、Groovy、JRuby、Jython、
前端开发

javascript 遍历json对象检查是否不存在某些属性/字段

javascript函数中,如果参数很多,可以设置一个json参数,将一些可选参数项放到里面去。这样就有一个问题,既然是可选参数,那么调用的时候,既可以指定,也可以不指定,怎么知道有哪些属性并没有指定?如果不指定,该如何处理?我的想法是,这个json参数有一个默认值,调用方指定的属性,当然采用调用方的指定;否则采用默认值。具体实现就是将传过来的json参数与默认json参数做个属性一一对照,有则用
前端开发

javascript采用依赖注入维护公用页面的纯净性

这就好像黑板风格,各路专家都可以将自己的知识在黑板上进行展示。1、基础页面(黑板)提供基本功能,并对外暴露抓手2、具体控件(专家)在需要运行时,动态在黑板上进行注册,进而可以使用黑板3、也可以在有需要的时候,让黑板加载额外的JS我描述一下背景:我们做的一个BS项目,有一个GIS页面,是公用的。基本上,所有模块,所有功能,都或多或少要用到地图,将自己的结果展示在地图上,甚至与地图交互。类似这样(船讯
JAVA

Java线程使用同步锁交替执行打印奇数偶数

对同一个对象进行多线程操作时,如何保证线程执行结果的一致性?我们需要对线程操作对象加同步锁。(这是一道面试题)需求描述1-20个数字A线程打印奇数:1,3,5,7,9,11,13,15,17,19B线程打印偶数:2,4,6,8,10,12,14,16,18,20C线程在AB两个线程执行完了之后打印结果:“success”。线程代码实现Num.javapackagecom.boonya.thread
前端开发

Vue.js渐进式 JavaScript 框架

目录什么是Vue.js概念资源 快速搭建框架开发环境实践什么是Vue.js概念中文教程:http://doc.vue-js.com/Vue.js(读音/vjuː/,类似于 view)是一套构建用户界面的 渐进式框架。与其他重量级框架不同的是,Vue采用自底向上增量开发的设计。Vue的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue
前端开发

JavaScript WebSocket实现长连接通信连接重连

JavaScript-JS依靠WebSoket也可以像其他语言一样能够实现通信代码,不过使用的时候需要注意检查连接断开的情况。最基本的必须保证IP和端口都可以访问。目录WebSocket代码及测试调用初始化代码通信示例代码测试效果WebSocket连接关闭重连处理连接断开问题代码实现重连重连效果WebSocket代码及测试调用初始化代码CvNetVideo.Websocket=newWebSock
JAVA

Java7/8 中的 HashMap 和 ConcurrentHashMap 全解析

网上关于HashMap和ConcurrentHashMap的文章确实不少,不过缺斤少两的文章比较多,所以才想自己也写一篇,把细节说清楚说透,尤其像Java8中的ConcurrentHashMap,大部分文章都说不清楚。终归是希望能降低大家学习的成本,不希望大家到处找各种不是很靠谱的文章,看完一篇又一篇,可是还是模模糊糊。阅读建议:四节基本上可以进行独立阅读,建议初学者可按照Java7HashMap
JAVA

Java面试题合集-2018最新版,必看!

1.java三大特征封装:把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行封装隐藏。封装分为属性的封装和方法的封装。继承:是对有着共同特性的多类事物,进行再抽象成一个类。这个类就是多类事物的父类。父类的意义在于抽取多类事物的共性。多态:允许不同类的对象对同一消息做出响应。方法的重载、类的覆盖正体现了多态。有时也说四大特征,此时加上抽象抽象:就是把现实生
JAVA

2018年排名Top 100的Java类库——在分析了277,975份源码之后得出的结论

最近,OveOps公布了TheTop100JavaLibrariesin2018-Basedon277,975SourceFiles,Hollis查看了这份榜单,做了翻译和补充,向你展示2018年的风云Java类库,希望可以给正在使用Java的你一些帮助和启示。不能说榜单中的类库都是最好的,但是至少是目前比较受欢迎的。时间如流水,转眼间2018年已经要接近尾声了,过去的一年,可以说是疯狂的一年。S
JAVA

Java中线程池,你真的会用吗?

在《深入源码分析Java线程池的实现原理》这篇文章中,我们介绍过了Java中线程池的常见用法以及基本原理。在文中有这样一段描述:可以通过Executors静态工厂构建线程池,但一般不建议这样使用。关于这个问题,在那篇文章中并没有深入的展开。作者之所以这么说,是因为这种创建线程池的方式有很大的隐患,稍有不慎就有可能导致线上故障,如:一次Java线程池误用引发的血案和总结(https://zhuanl
点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载