格式化输出

格式化输出 c语言中有个printf函数,在java中,也有对应的方法,他们的用户基本一致。 System.out.printf("%8.2f", x); 下面是printf可以使用的转换符 可以使用s转换符格式化任意的对象。 可以使用多个标志, 例如 , “%,( . 2 f ” 使用分组的分隔符并将负数括在括号内 。 可以使用静态的String.format方法创建一个格式…

javase

BigInteger、BigDouble

如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有用的类:BigInterger和BigDecimal。这两个类可以处理任意长度数字序列的数值。BigInterger实现任意精度的整数运算,BigDecimal实现任意精度的浮点数运算。 使用大数需要注意的是,不能使用人们习惯的算术运算符(+、-、*、/)等,而需要使用大数自己的方法。 import java.m…

javase

System类

System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。 由于该类的构造器是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员变量和成员方法都是static的,所以也可以很方便的进行调用。 成员属性 System类内部包含in、out和err三个成员变量,分别代表标准输入流(键盘输入),标准输出流(显示器)和标准错误输出流(显示…

javase

Objects

在JDK7版本的时候,Java引入了java.util.Objects工具类,用于封装一些平时使用频度很高或容易出错的操作,这些操作形成了Objects的各个方法,下来我们来看看这些方法。 1. Objects()构造方法 private Objects() { throw new AssertionError("No java.util.Objects instances for yo…

Stream介绍

Java8中有两大最为重要的改变。第一个是 Lambda 表达式;另外一个则是Stream API。注意,这里的Stream不同于java.io的InputStream和OutputStream,它代表的是任意Java对象的序列。两者对比如下: java.io java.util.stream 存储 顺序读写的byte或char 顺序输出的任意Java对象实例 用途 序列化至文件或网络 内存计算/…

创建Stream

下面介绍四种方法介绍如何创建Stream 通过集合 Java8 中的 Collection 接口被扩展,提供了两个获取流的方法,这两个方法是默认实现方法: default Stream stream() : 返回一个顺序流 default Stream parallelStream() : ArrayList<Integer> nums = new ArrayList<>(…

Stream中间操作

多个 中间操作可以连接起来形成一个 流水线,除非流水线上触发终止操作,否则 中间操作不会执行任何的处理!而在 终止操作时一次性全部处理,称为“惰性求值”。 筛选与切片 方法 描述 filter(Predicate p) 接收 Lambda , 从流中排除某些元素 distinct() 筛选,通过流所生成元素的 hashCode() 和 equals() 去除重复元素 limit(long maxS…

Stream终止操作

终端操作会从流的流水线生成结果。其结果可以是任何不是流的值,例如:List、Integer,甚至是 void 。流进行了终止操作后,不能再次使用。 匹配与查找 方法 描述 allMatch(Predicate p) 检查是否匹配所有元素 anyMatch(Predicate p) 检查是否至少匹配一个元素 noneMatch(Predicate p) 检查是否没有匹配所有元素 findFirst(…