Java SE8 的流库

JAVA中,流旨在创建一种关注“做什么而非怎么做”的设计理念,我们无需关心流内具体的实现,而把更多精力放在流需要做什么上面。例如我们需要计算一个字符串数组中,长度大于10的有多少,参见下面的代码清单: public static void main(String args[]) throws IOException{ String contents = new String(Files.readAllBytes(Paths.get("/Users/liebes/Desktop/open.route")), StandardCharsets.UTF_8); List<String> words = Arrays.asList(contents.split("\\PL+")); long count = 0; // 怎么做 for(String s : words){ if(s.length() > 10) count++; } System.out.println(count); // 做什么 count = words.stream().filter(s -> s.length() > 10).count(); System.out.println(count); count = words.parallelStream().filter(s -> s.length() > 10).count(); System.out.println(count); } 第一种方式,是很容易想到的一种,循环遍历计算的一种方法,而第二种则是使用了流的概念。 Stream,流。我们可以理解为水流,所有的流操作都是惰性的,即当你访问数据的时候,相关操作才会执行。我们在水流的行进方向设置我们想要完成的操作,当水流经过时,就会执行相关的操作。例如上面的 count = words.stream().filter(s -> s.length() > 10).cou...     阅读全文
Liebes's avatar
Liebes 5月 03, 2018

Ubuntu16.04 配置JAVA环境、搭建tomcat环境、安装php-java-bridge工具

下载安装jdk 配置JAVA环境变量 搭建tomcat环境 安装php-java-bridge工具 下载安装jdk首先去Oracle官网下载jdk安装包:下载地址根据系统版本选择要下载的安装包,海痴选择的是 jdk-8u111-linux-x64.tar.gz下载后解压 $ tar -xzvf jdk-8u111-linux-x64.tar.gz 在/opt下创建java目录,并将解压后的文件夹移动到java目录下 $ sudo mkdir /opt/java $ sudo mv jdk1.8.0_111 /opt/java 配置JAVA环境变量修改 /etc/profile 文件,在文件尾添加如下内容 $ sudo vim /etc/profile export JAVA_HOME=/opt/java/jdk1.8.0_111 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE...     阅读全文
Liebes's avatar
Liebes 1月 17, 2017