optional

ArrayList源码-不常用方法

自古美人都是妖i 提交于 2020-08-20 00:16:37
这篇笔记主要记录一些不常用方法,了解一下可以干什么,有个印象。 改变数组容量 /** * 将该<tt> ArrayList </ tt>实例的容量调整为列表的当前大小。 * 应用程序可以使用此操作来最大程度地减少<tt> ArrayList </ tt>实例的存储。 */ public void trimToSize () { modCount ++ ; if ( size < elementData . length ) { elementData = ( size == 0 ) ? EMPTY_ELEMENTDATA : Arrays. copyOf ( elementData , size ) ; } } /** * 如有必要,增加此<tt> ArrayList </ tt>实例的容量,以确保它至少可以容纳最小容量参数指定的元素数。 * * @param minCapacity the desired minimum capacity */ public void ensureCapacity ( int minCapacity) { int minExpand = ( elementData != DEFAULTCAPACITY_EMPTY_ELEMENTDATA ) // any size if not default element table ? 0 //

《Java8实战》笔记汇总

前提是你 提交于 2020-08-19 17:23:20
《Java8实战》笔记(01):为什么要关心Java8 《Java8实战》笔记(02):通过行为参数传递代码 《Java8实战》笔记(03):Lambda表达式 《Java8实战》笔记(04):引入流 《Java8实战》笔记(05):使用流 《Java8实战》笔记(06):用流收集数据 《Java8实战》笔记(07):并行数据处理与性能 《Java8实战》笔记(08):重构、测试和调试 《Java8实战》笔记(09):默认方法 《Java8实战》笔记(10):用Optional取代null 《Java8实战》笔记(11):CompletableFuture-组合式异步编程 《Java8实战》笔记(12):新的日期和时间API 《Java8实战》笔记(13):函数式的思考 《Java8实战》笔记(14):函数式编程的技巧 《Java8实战》笔记(15):面向对象和函数式编程的混合-Java 8和Scala的比较 《Java8实战》笔记(16):结论以及Java的未来 来源: oschina 链接: https://my.oschina.net/jallenkwong/blog/4513442

Azure Web App (三)切换你的Net Core Web 项目的数据库连接字符串

喜你入骨 提交于 2020-08-19 00:56:41
一,引言   上一篇文章讲到今天我们演示了一下,如何在Web App中创建 “Deployment Slot”进行快速无停机部署新功能代码,也使用VS进行发布到创建的Web App中创建的新的部署槽位中,同时也引出了另外一个问题,环境变量怎么切换,切换槽位后,生产环境的数据库连接字符串怎么办。本篇文章,我会继续 部署槽,进行配置部署槽设置,同时在交换槽位的时候,测试环境/生产环境都能够准确的连接到对于的数据库。😎😎😎😎😎 --------------------我是分割线-------------------- Azure Web App 部署系列: 1,Azure Web App(一)发布你的Net Core Web 项目 2,Azure Web App(二)使用部署槽切换部署环境代码 3,Azure Web App(三)切换你的Net Core Web 项目的数据库连接字符串 二,正文 1,新建Net Core Web 项目 项目名称 “CnBateBlogWeb” 选择 “Web 应用程序(模型视图控制器)”,去掉 “为HTTPS 配置” 的勾选,点击创建 删除 “launchSettings” 文件中 IIS 配置部分 添加一个名叫 “appsettings.Production.json” 配置文件,里面当前项目的生产环境的数据库连接字符串。 ”appsettings

《Java8实战》笔记(13):函数式的思考

拥有回忆 提交于 2020-08-19 00:47:32
函数式的思考 实现和维护系统 为了让程序易于使用,你还希望它具备哪些特性呢? 你会希望它具有良好的结构,最好类的结构应该反映出系统的结构,这样能便于大家理解; 甚至软件工程中还提供了指标,对结构的合理性进行评估,比如耦合性(软件系统中各组件之间是否相互独立)以及内聚性(系统的各相关部分之间如何协作)。 对大多数程序员而言,最关心的日常要务是代码维护时的调试:代码遭遇一些无法预期的值就有可能发生崩溃。 为什么会发生这种情况? 它是如何进入到这种状态的? 想想看你有多少代码维护的顾虑都能归咎到这一类!很明显, 函数式编程提出的“无副作用”以及“不变性”对于解决这一难题是大有裨益的 。 共享的可变数据 无法预知的变量修改问题,都源于共享的数据结构被你所维护的代码中的多个方法读取和更新。 假设几个类同时都保存了指向某个列表的引用。 那么到底谁对这个列表拥有所属权呢? 如果一个类对它进行了修改,会发生什么情况? 其他的类预期会发生这种变化吗? 其他的类又如何得知列表发生了修改呢? 我们需要通知使用该列表的所有类这一变化吗? 抑或是不是每个类都应该为自己准备一份防御式的数据备份以备不时之需呢? 换句话说,由于使用了可变的共享数据结构,我们很难追踪你程序的各个组成部分所发生的变化 。 假设有这样一个系统,它不修改任何数据。维护这样的一个系统将是一个无以伦比的 美梦

Spring Boot + Spring Security自定义用户认证

浪尽此生 提交于 2020-08-18 23:37:12
引入依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> 自定义认证过程 自定义认证的过程需要实现Spring Security提供的UserDetailService接口 ,源码如下: public interface UserDetailsService { UserDetails loadUserByUsername(String username) throws UsernameNotFoundException; } loadUserByUsername方法返回一个UserDetail对象

How to convert Optional<Object> to Optional<String> [closed]

柔情痞子 提交于 2020-08-18 19:30:47
问题 Closed . This question needs details or clarity. It is not currently accepting answers. Want to improve this question? Add details and clarify the problem by editing this post. Closed 12 months ago . Improve this question I have this code in Java 11 Object a = getObjectOrNullIfNotAvailable(); String value = a==null ? null : a.toString(); I want to write this code using Optional, the best I could come up with is. I haven't tried running it but I suspect it will work Optional<Object> oa =

How to convert Optional<Object> to Optional<String> [closed]

半世苍凉 提交于 2020-08-18 19:30:27
问题 Closed . This question needs details or clarity. It is not currently accepting answers. Want to improve this question? Add details and clarify the problem by editing this post. Closed 12 months ago . Improve this question I have this code in Java 11 Object a = getObjectOrNullIfNotAvailable(); String value = a==null ? null : a.toString(); I want to write this code using Optional, the best I could come up with is. I haven't tried running it but I suspect it will work Optional<Object> oa =

How to convert Optional<Object> to Optional<String> [closed]

巧了我就是萌 提交于 2020-08-18 19:28:38
问题 Closed . This question needs details or clarity. It is not currently accepting answers. Want to improve this question? Add details and clarify the problem by editing this post. Closed 12 months ago . Improve this question I have this code in Java 11 Object a = getObjectOrNullIfNotAvailable(); String value = a==null ? null : a.toString(); I want to write this code using Optional, the best I could come up with is. I haven't tried running it but I suspect it will work Optional<Object> oa =

How to convert Optional<Object> to Optional<String> [closed]

北城以北 提交于 2020-08-18 19:28:07
问题 Closed . This question needs details or clarity. It is not currently accepting answers. Want to improve this question? Add details and clarify the problem by editing this post. Closed 12 months ago . Improve this question I have this code in Java 11 Object a = getObjectOrNullIfNotAvailable(); String value = a==null ? null : a.toString(); I want to write this code using Optional, the best I could come up with is. I haven't tried running it but I suspect it will work Optional<Object> oa =

Azure Web App (三)切换你的Net Core Web 项目的数据库连接字符串

半世苍凉 提交于 2020-08-18 09:11:56
一,引言   上一篇文章讲到今天我们演示了一下,如何在Web App中创建 “Deployment Slot”进行快速无停机部署新功能代码,也使用VS进行发布到创建的Web App中创建的新的部署槽位中,同时也引出了另外一个问题,环境变量怎么切换,切换槽位后,生产环境的数据库连接字符串怎么办。本篇文章,我会继续 部署槽,进行配置部署槽设置,同时在交换槽位的时候,测试环境/生产环境都能够准确的连接到对于的数据库。😎😎😎😎😎 --------------------我是分割线-------------------- Azure Web App 部署系列: 1,Azure Web App(一)发布你的Net Core Web 项目 2,Azure Web App(二)使用部署槽切换部署环境代码 3,Azure Web App(三)切换你的Net Core Web 项目的数据库连接字符串 二,正文 1,新建Net Core Web 项目 项目名称 “CnBateBlogWeb” 选择 “Web 应用程序(模型视图控制器)”,去掉 “为HTTPS 配置” 的勾选,点击创建 删除 “launchSettings” 文件中 IIS 配置部分 添加一个名叫 “appsettings.Production.json” 配置文件,里面当前项目的生产环境的数据库连接字符串。 ”appsettings