chapter09
import java.io.File
import java.nio.file._ import scala.collection.mutable.ArrayBuffer
/**
* Created by EX-CHENZECHAO001 on 2018-04-02.
*/
class Chapter09 {
// 9.7 访问目录
def subdirs(dir: File): Iterator[File] = {
val children = dir.listFiles().filter(_.isDirectory)
children.toIterator ++ children.toIterator.flatMap(subdirs(_))
}
implicit def makeFileVisitor(f: (Path) => Unit) = new SimpleFileVisitor[Path] { }
} object Chapter09 extends App{
val files = new Chapter09().subdirs(new File("D:\\chenzechao\\_learn"))
for(file <- files){
println(file.getName)
}
} // 9.8 序列化
class Person98 extends Serializable { }
// 如果接受缺省ID,可略去@SerialVersionUID
// 按常规方式对对象进行序列化和反序列化
object Person98 {
val fred = new Person98()
import java.io._
val out = new ObjectOutputStream(new FileOutputStream("/tmp/abc.obj"))
out.writeObject(fred)
out.close()
val in = new ObjectInputStream(new FileInputStream("/tmp/abc.obj"))
val saveFred = in.readObject().asInstanceOf[Person98] // Scala集合类都是可序列化的
class Person98_01 extends Serializable{
private val friends = new ArrayBuffer[Person98]
}
} // 9.8 进程控制
import sys.process._
// "ls -al .."
// sys.process包包含一个从字符器到ProcessBuilder对象的隐式转换。!操作符执行的就是这个ProcessBuilder对象
// !操作符返回的被执行程序的返回值:程序成功执行的话就是0,否则就是显示错误的非0值
// 如果使用!!则返回命令执行结果
val result = "ls -al .." !!
chapter09的更多相关文章
- Chapter09 项目
Chapter09 项目 房屋出租系统(面向对象中级) 9.1 房屋出租系统-需求 9.1.1项目需求说明 实现基于文本界面的<房屋出租软件>. 能够实现对房屋信息的添加.修改和删除(用数 ...
- Redux你的Angular 2应用--ngRx使用体验
Angular2和Rx的相关知识可以看我的Angular 2.0 从0到1系列第一节:Angular 2.0 从0到1 (一)第二节:Angular 2.0 从0到1 (二)第三节:Angular 2 ...
- Hibernate Validator 6.0.9.Final - JSR 380 Reference Implementation: Reference Guide
Preface Validating data is a common task that occurs throughout all application layers, from the pre ...
- ASP.NET Core 入门教程 9、ASP.NET Core 中间件(Middleware)入门
一.前言 1.本教程主要内容 ASP.NET Core 中间件介绍 通过自定义 ASP.NET Core 中间件实现请求验签 2.本教程环境信息 软件/环境 说明 操作系统 Windows 10 SD ...
- 《Linux就该这么学》第十二天课程
使用ssh服务管理远程主机 绑定两块网卡 原创地址:https://www.linuxprobe.com/chapter-09.html 第1步:在虚拟机系统中再添加一块网卡设备,请确保两块网卡都处在 ...
- List遍历三种方法:1.for 2.增强性for 3.迭代器
package chapter09; import java.util.ArrayList;import java.util.Iterator;import java.util.List; /* * ...
- 集合List和ArrayList的示例
package chapter09; import java.util.ArrayList;import java.util.List; /* * List * ArrayList底层是数组 * 特点 ...
- 《Gradle权威指南》--Android Gradle多项目构建
No1: Android多项目设置 目录结构: MyProject/ setting.gradle app/ build.gradle libraries/ lib1/ build.gradle li ...
- Entity Framework 6 Recipes 2nd Edition(目录索引)
Chapter01. Getting Started with Entity Framework / 实体框架入门 1-1. A Brief Tour of the Entity Framework ...
随机推荐
- 白话算法(6) 散列表(Hash Table)从理论到实用(中)
不用链接法,还有别的方法能处理碰撞吗?扪心自问,我不敢问这个问题.链接法如此的自然.直接,以至于我不敢相信还有别的(甚至是更好的)方法.推动科技进步的人,永远是那些敢于问出比外行更天真.更外行的问题, ...
- BZOJ1217:[HNOI2003]消防局的设立
我对贪心的理解:https://www.cnblogs.com/AKMer/p/9776293.html 题目传送门:https://www.lydsy.com/JudgeOnline/problem ...
- logback个人使用配置
提供一个目前个人供词使用的,无需日志汇总的日志配置文件: <?xml version="1.0" encoding="UTF-8"?> <co ...
- C++输入输出知识
1.strtok将字符串中的单词用' '分割出来 #include<iostream> #include<cstdio> #include<cstdlib> #in ...
- VS Code:快捷方式
转于:vscode: Visual Studio Code 常用快捷键 博主:魚魚 更多操作参见官网:https://code.visualstudio.com/docs/getstarted/key ...
- TModJS:目录
ylbtech-TModJS:目录 1.返回顶部 1. https://github.com/aui/tmodjs 2. https://www.npmjs.com/package/tmodjs 3. ...
- 一 vue开发环境搭建
2016年,Vue同Angular.React形成三足鼎立的局面,让前端的开发者顾不暇接,今天我们就来了解一下Vue的环境搭建. 一.node.js安装: node.js:一种javascript的运 ...
- 面向对象要点(this关键字)
package day07; public class ThisKeywords { private String name; private void Foo(String name) { this ...
- JSP介绍(4)--- JSP Cookie 处理
Cookie是存储在客户机的文本文件,它们保存了大量轨迹信息. JSP脚本通过request对象中的getCookies()方法来访问这些cookie,这个方法会返回一个Cookie对象的数组. 通常 ...
- ES6学习之Async函数
定义:Async函数是一个异步操作函数,本质上,Async函数是Generator函数的语法糖.async函数就是将 Generator 函数的星号(*)替换成async,将yield替换成await ...