• 2024-04-24JTCR-Stream API-23
    流基础流是数据管道,表示一系列数据。流的操作是针对数据源来说的,但是流的操作不会改变数据源的数据,只会产生新的流。最基础的流是BaseStream接口。interfaceBaseStream<T,SextendsBaseStream<T,S>>T表示流中数据的类型,S表示扩展了BaseStream的流。BaseStream扩展
  • 2024-04-24JTCR-正则、反射和文本格式化-24 (end)
    正则Pattern类用于定义正则表达式,Matcher类用于匹配正则表达式。Pattern没有构造器,使用工厂方法compile()创建模式(pattern)。staticPatterncompile(Stringpattern)它将字符串转换成Matcher可以使用的正则表达式。Pattern的matcher()方法创建Matcher。Matcherm
  • 2024-04-24JTCR-网络-21
    InetAddressInetAddress类用于封装IP地址或者域名,支持IPv4和IPv6。创建InetAddress对象需要使用工厂方法,因为没有提供显式构造器。工厂方法如下staticInetAddressgetLocalhost();staticInetAddressgetByName(StringhostName);//一个域名对应多个IP地址时,返回
  • 2024-04-24JTCR-探究 NIO-20
    nio支持面向缓冲区、基于通道(channel-based)的I/O操作方法。JDK9开始,包java.nio及其子包位于java.base模块。nio子系统不是为了取代面向流的I/O类。NIO基础nio系统构建在缓冲区(buffers)和通道之上。缓冲区用于存放数据,通道表示一个已打开的与I/O设备的连接。通过
  • 2024-04-23JTCR-java.util 更多实用类-18
    BitSetBitSet类是用于存放二进制位值的布尔数组,数组大小按需增加。构造器为BitSet();//指定初始化数组大小BitSet(intsize);publicclassBitSetDemo{//bit1的值//{0,2,4,6,8,10,12,14}//bit2的值//{1,2,3,4,6,7,8,9,11,12,
  • 2024-04-23JTCR-java.util 集合框架-17
    JDK9开始,java.util包作为java.base模块的一部分。概述集合框架的设计目标高性能。不同类型的集合使用方式相似,有很好的互操作性。容易扩展或适配集合。Iterator接口提供了访问集合中元素通用、标准化的方式。任意集合类都可以使用Iterator提供的方法访问元素。JDK
  • 2024-04-23JTCR-探索 java.lang-16
    原始类型包装器为了在必须使用类类型的地方使用原始类型,每个原始类型都有一个包装器,该包装器将原始类型封装成类类型。抽象类Number作为所有数值类型包装类的父类,定义了返回不同类型值的抽象方法。它的子类有Byte、Short、Integer、Long、Float和Double。这些抽象方法形式
  • 2024-04-22JTCR-处理字符串-15
    Java将字符串作为String类型的对象,不像其他语言,以字符数组的方式实现。字符串创建之后就不可修改。进行修改相关操作返回的是新字符串,原先的字符串不会发生变化。将字符串以不可变的方式实现是为了更有效率。与String对应的StringBuffer和StringBuilder类创建之后可以修
  • 2024-04-22JTCR-模块-14
    JDK9引入了模块,用于描述代码之间的关系和依赖,控制某模块是否可以被其他模块访问。模块基础一个模块由一组包和资源组成。模块定义在名为module-info.java的文件中,javac将这个文件编译成类文件,称为moduledescriptor。该文件仅能包含一个模块定义。模块定义的一般形式为://
  • 2024-04-22JTCR-lambda 表达式-13
    介绍lambda表达式本质上是一个匿名方法,用于实现函数式接口(functionalinterface)定义的方法。这就产生了匿名类。lambda也称为闭包(closures)。函数式接口是仅有一个抽象方法的接口。如Runnable接口仅有run()方法,该方法表明了接口的目的。函数式接口定义了lambda表达式的目
  • 2024-04-22JTCR-泛型-12
    什么是泛型具有参数化类型的类、接口或方法。具体的类型在运行时才确定。在泛型出现前通过使用Object引用也可以达到泛型的效果,但是缺乏类型安全检查,泛型添加了这一点。简单的泛型例子//T是类型参数,作为实际类型的占位符classGen<T>{Tv;Gen(To){v=o;
  • 2024-04-22JTCR-I/O,Try-with-Resources 及其他-11
    I/O基础Java的I/O操作通过流来实现。流是对输入、输出数据的抽象,每个流都和一个具体的物理实体关联,比如在输入中,流可以和键盘、磁盘文件或者网络输入等关联,虽然每个物理实体不同,但是流可以以同样的方式进行处理。Java定义了字节流和字符流。字节流处理的对象是二进制数据,以
  • 2024-04-18JTCR-枚举、装箱和注解-10
    枚举枚举定义了一个数据类型和该数据类型允许的若干个值,这些值为命名常量。一个枚举实例的值必须是定义的值。Java中,枚举是类类型,可以有构造器、方法和实例变量,甚至实现接口。但不能使用new实例化。enumName{value1,value2,...}//定义Namen=Name.value1;//
  • 2024-04-18JTCR-多线程-09
    基于进程和线程的多任务,其最小的调度单位分别是进程和线程。在基于线程的环境中,单个进程可以同时处理不同的任务,每个线程共享地址空间。基于线程的多任务和基于进程的相比,开销小。相互间的通信和上下文切换开销不同。Java的线程模型Java的运行时系统使用多线程,当某一个线程
  • 2024-04-18JTCR-异常处理-08
    异常处理基础try{//可能产生异常的代码块}catch(ExceptionTypeex){//处理异常}catch(ExceptionTypeex){//处理异常}...finally{//无论是否发生异常,必须执行的代码块}异常类型所有异常类型的超类是Throwable,该类有两个直接子类,一个是Excepti
  • 2024-04-18JTCR-包和接口-07
    包包用于划分类的命名空间,使得不同包中的同名类不会冲突。Java使用文件夹存储包,文件夹名和包名一致。Java运行时系统从当前目录中、CLASSPATH变量定义的值、-classpath指定的值这三种途径寻找包。包和成员访问可访问性private无修饰符protectedpublic同一个
  • 2024-04-18JTCR-深入了解方法和类-05
    方法重载一个类中存在多个同名方法,这些方法的形参类型或数量不同的现象称为方法重载。同名方法的返回值类型在判断是否构成重载时不予考虑。方法重载是支持多态的方式之一。当调用同名方法时,Java根据传入方法的实参类型、数量和顺序确定某个唯一精确匹配的方法,然后调用该方法;如
  • 2024-04-18JTCR-继承-06
    继承基础classA{inti;voidm(){//body}}classBextendsA{intk;voidn(){//body}}没有类可以成为其自身的超类(superclass)。子类不能访问超类中的private成员。超类类型变量可以引用派生自该超类的子类对象,但是使用该变量只
  • 2024-04-18JTCR-介绍类-04
    类基础类表示一个新的数据类型。简单类的一般形式:classClassName{typeinstanceVariable;//...typemethod(parameterList){//方法体}//...}有些Java应用不需要main方法。定义对象new操作符在运行时动态地给一个对象分配内存并返回指向该
  • 2024-04-18JTCR-数据类型、变量和数组-01
    原始类型Java是强类型语言,在编译时会检查所有变量、表达式的类型是否兼容。Java为数据定义了8种原始类型(primitivetype),分为4组:整型:byte、short、int、long,表示整数。浮点数:float、double,表示小数。字符:char,表示字符集中的元素。Boolean:boolean,表示true/false值。
  • 2024-04-18JTCR-运算符-02
    算术运算符算术操作符不能对boolean类型使用,可以对char类型使用,因为char类型是int类型的子集。除操作符对整数使用,结果为整数。取模运算符对整数和浮点数使用,都返回余数。在某些情况下,复合赋值操作符比它的等价形式更有效率。位运算符运算符运算结果~按位