目录
String类
- 字符串常量池
- 常见方法
- charAt(int index):返回字符串指定位置的字符
- indexOf(String s):返回指定字符串第一次出现的位置
- startsWith(String s):测试字符串是否以指定前缀开始
- endsWith(String s):测试字符串是否以指定后缀开始
- subString(int index):返回字符串的子字符串
- replace(char a,char b):替换字符串的指定字符
- trim():去掉字符串的前后空格
- concat():连接两个字符串
- split(String regex):给定正则表达式的匹配来拆分字符串
- 正则表达式
- 字符通配符
- 次数通配符
- 其他通配符
- StringBuffer和StringBuilder
日期时间类
-
Date类
Date表示特定的瞬间,精确到毫秒。Date类中的大部分方法都已经被Calendar类中的方法所取代
-
SimpleDateFormat类
-
Calendar类:Calenda在Java 8及以后的版本中通常被 java.time 包中的类所取代
数学类
- math类
包装类
-
什么是包装类
包装类主要用于将Java中的八种基本数据类型(boolean、char、byte、short、int、long、float、double)封装为对象形式,以便在需要对象特性的场合中使用。这些包装类均位于java.lang包中,是Java类库的一部分。
-
包装类的特点
- 封装基本数据类型:Java是面向对象的编程语言,但基本数据类型并不直接支持对象的特性(如继承、多态等)。包装类通过将基本数据类型封装为对象,使得这些基本数据类型可以参与对象的操作。
- 提供额外功能:包装类不仅包含了对应基本数据类型的值,还提供了一系列实用的对象操作方法,如类型转换、进制转换、比较大小、获取最大值和最小值等。
- 支持集合操作:Java的集合(如List、Set、Map等)只能存储对象,不能直接存储基本数据类型。通过使用包装类,可以将基本数据类型转换为对象,从而存储在集合中。
- 缓存机制:对于Integer类(以及可能的其他包装类),Java虚拟机(JVM)会缓存一定数量的常用值(如-128到127之间的整数),以避免频繁地创建和销毁对象,提高性能。
-
基本数据类型与包装类
基本数据类型 包装类
byte Byte
boolean Boolean
short Short
char Character
int Integer
long Long
float Float
double Double
-
包装类共同点
自动装箱/拆箱 封装基本数据类型 自动拆装箱
8种包装类提供不用类型间的转换方式
Number父类中提供的6个共性方法parseXXX( )静态方法
valueOf( )静态方法
注意:需保证类型兼容,否则抛出NumberFormatException异常
Runtime类
-
1.获取运行时环境信息
-
可以通过Runtime类的实例获取当前JVM的处理器个数、空闲内存量、最大可用内存量和内存总量的信息。
-
示例代码:
Runtime rt = Runtime.getRuntime(); System.out.println("处理器的个数: " + rt.availableProcessors() + "个"); System.out.println("空闲内存数量: " + rt.freeMemory() / 1024 / 1024 + "M"); System.out.println("最大可用内存数量: " + rt.maxMemory() / 1024 / 1024 + "M"); System.out.println("虚拟机中内存总量: " + rt.totalMemory() / 1024 / 1024 + "M");
-
2.Runtime类的实例化和使用
实例化:由于Runtime类是单例的,程序中一般不能显式地主动实例化一个Runtime实例,而是通过Runtime.getRuntime()
来获取当前程序的Runtime实例。
使用:获取到Runtime实例后,就可以调用其提供的方法来获取运行时环境信息、执行系统命令、调用垃圾回收等。
-
3.执行系统命令
Runtime类提供了一个exec(String command)
方法,用于执行指定的系统命令或脚本。该方法返回一个Process
对象,通过该对象可以获取进程的标准输出流、错误输出流等,以进行进一步的处理。
-
示例代码:
java复制代码 Process process = Runtime.getRuntime().exec("notepad.exe");
System类
System类是Java中的一个非常重要的类,它位于java.lang
包中,代表当前Java程序的运行平台,提供了许多与系统相关的属性和方法。由于System类的构造方法是private的,因此无法创建System类的对象,即无法实例化该类。不过,System类提供了许多静态的类变量和类方法,允许直接通过System类来调用这些变量和方法。
以下是System类的一些主要特点和功能:
1. 标准输入输出和错误输出
- 标准输入流(in):
public final static InputStream in
,代表标准输入流,通常是键盘输入。 - 标准输出流(out):
public final static PrintStream out
,代表标准输出流,通常是显示器输出。 - 标准错误输出流(err):
public final static PrintStream err
,代表标准错误输出流,同样是输出到显示器,但通常用于输出错误信息。
2. 系统属性
- 获取系统属性:
Properties getProperties()
方法返回当前系统的所有属性。 - 获取指定键的系统属性:
String getProperty(String key)
方法根据键名获取对应的属性值。 - 设置系统属性:
String setProperty(String key, String value)
方法允许设置指定键的系统属性,但需要注意的是,并非所有系统属性都可以被设置。
3. 时间和日期
- currentTimeMillis():返回当前时间与GMT时间(格林尼治时间)1970年1月1日0时0分0秒之间的毫秒差值。这个方法常用于测量程序执行时间等场景。
4. 数组操作
- arraycopy():这是一个用于数组复制的方法,其原型为
public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
。它可以将指定源数组中的元素复制到目标数组的指定位置,是系统级的操作,性能较高。
5. 其他重要方法
- exit(int status):用于退出当前运行的Java虚拟机。当参数status为0时表示正常退出,非0值表示异常退出。
- gc():请求JVM执行垃圾回收。但是否立即执行垃圾回收取决于JVM的垃圾回收算法和当前系统的执行状况。
System类提供的这些功能使得Java程序能够与运行环境进行交互,实现输入输出、系统属性访问、时间测量、数组操作以及程序退出等功能。由于这些功能都是静态的,因此可以通过System类直接调用,无需创建对象。
标签:常用,Java,String,包装,数据类型,System,Runtime From: https://www.cnblogs.com/yangcurry/p/18352228