• 2022-08-08 第四小组 修身课 学习笔记(every day)


    目录

    JUint

    JUnit断言

    集合面试题

    Stream

    归集

    IO流

    File类


    JUint

    JUint是一个java语言的单元测试框架

    启动后自动化测试

    只需要查看最后的结果

    每个单元测试的用例相对独立,由JUnit启动

    添加,删除,屏蔽测试方法

    jar包
    如果要引入第三方的插件,xxx.jar的文件。
    首先要把这个文件导入到我们的工程目录下
    其次,要添加到工程的依赖目录中

    Test注解是JUnit提供的一个单元测试注解
    如果你的工程没有导入JUnit的jar包,Test注解是不认识的

    测试方法:
    1.不能有返回值
    2.不能有参数列表
    3.必须有Test注解


    JUnit断言

    JUnit的所有的断言都包含Assert类中
    这个类提供了很多有用的断言来编写测试用例。
    只有失败的断言才会被记录。
    1.assertEquals:检查两个变量或等式是否平衡
    2.assertTrue:检查条件是否为真
    3.assertFalse:检查条件是否为假
    4.assertNotNull:检查对象是否不为空
    5.assertNull:检查对象是否为空
    断言不成功会抛异常,即使程序正常运行但是结果不正确,也会以失败结束。

    1. public class Ch04 {
    2. @Test
    3. public void test01(){
    4. Assert.assertTrue(false);
    5. }
    6. }

    集合面试题


    1.Hashtable和ConcurrentHashMap性能测试
    2.ArrayList和LinkedList性能测试
    数组查询快,插入慢,链表插入快,查询慢
    1.尾插数组快,链表慢
    2.遍历,数组快
    3.头插,链表快,数组慢
    4.随机删除,如果要过滤,建议用linkedlist
    开发中,还是以arraylist为主


    Stream

    JDK8新增
    Stream编程
    容器对象功能的增强
    我们可以将流看做流水线,这个流水线是处理数据的流水线
    当我们使用一个流的时候,通常包括三个步骤:
    1.获取一个数据源
    2.执行操作获取想要的结果
    3.每次操作,原有的流对象不改变,返回一个新的Stream对象
    Stream有几个特性:
    1.Stream不存储数据,一般会输出结果
    2.Stream不会改变数据源,通常情况下会生成一个新的集合
    3.Stream具有延迟执行的特性,只有调用终端操作时,中间操作才会执行。

    归集

            因为流不存储数据,那么在流中的数据完成处理后,需要将流中的数据重新归集到新的集合里。 toList、toSet和toMap比较常用,另外还有toCollection、toConcurrentMap等复杂一些的用法。

    归约(reduce)

    缩减,把一个流缩减成一个值,可以实现对集合的求和,求乘积,求最值

    分组

    分组将集合分为多个map,比如员工按性别分组、员工按薪资是否高于8000分组

    筛选

    映射:将一个流的元素按照一定的映射规则映射到另一个流中

    排序:sorted

    自然排序;compare接口

    临时排序:compartor

    peek操作:调试

    在stream中调试,stream不支持debug

    peek类似打断点,输出一下结果

    去重 distinct

    skip 跳过几个数据

    limit 限制使用几个数据


    JDK8函数式接口
    Consumer:消费者 void accept(T t)
    Supplier:供应商 T get()
    Function: R apply(T t),将一个数据转化成另一个数据
    Predicate:断言,boolean test(T t),判断返回值是boolean

    Optional类是java8为了解决null问题
    JDK8新增:
    1.函数式接口
    2.箭头函数(lambda表达式),不是java特有的。阉割版
    3.Optional类
    4.断言
    5.Stream编程


    IO流

    Java IO流---对于文件的操作
    Input:把数据从物理内存加载到运行内存。(读文件)
    Output:把数据从运行内存写到物理内存。(写文件)
    java.io包下的类
    计算机的输入输出都是通过二进制完成。
    0和1
    工具类:File操作文件的类
    1.文件的路径
     正斜杠:左斜杠,撇,/
     反斜杠:右斜杠,捺,\
     在Unix/Linux,路径的分隔采用正斜杠/,
     在windows中,路径分隔采用反斜杠\。
     在java中,\代表转义
     在File类中,定义了路径分隔符的常量,自动识别操作系统。


    File类

    1. File类的构造器

    尽量不要拼接字符串

    1. 文件的操作

    创建一个文件

     

    creatNewFile创建文件,mkdir创建文件夹。

    mkdir只能创建一级文件夹,创建多级文件夹用mkdirs

    creatNewFile新建文件时不会覆盖已有的重名文件

    绝对路径:以盘符开头

    相对路径:没有指定的盘符开头

    如果没有以盘符开头,系统默认以相对路径创建文件

     

  • 相关阅读:
    文件服务器 — File Browser
    C开发环境与基础
    arx 实体标准
    常用工具链和虚拟环境-WSL
    初识Redis与桌面客户端
    【tensorflow】制作自己的数据集
    VSCode开启Pull Request更新代码分支可视化新篇章
    MMDP: A Mobile-IoT Based Multi-Modal Reinforcement Learning Service Framework
    网络安全系列-四十三:使用Suricata分析恶意流量pcap文件
    Java安全之Velocity模版注入
  • 原文地址:https://blog.csdn.net/weixin_45777469/article/details/126235949