3. Math 类
3.1
java.lang.Math 提供了一系列静态方法用于科学计算,其方法的参数和返回值类型一般为double类型
3.2 方法
3.2.1 random()
返回 0.0 ~ 1.0 之间的随机数
3.2.2 sqrt()
求平方根
4.File 类
4.1 File 类的由来
java.io
需求:对磁盘有些操作: 新建文件/夹 打开文件/夹...交由java代码实现
解决:1. 操作---方法
2. OOP 语法:方法必须定义在某个类的内部--- File 类
4.2 构造
public class Test { public static void main(String[] args) { //定义文件Test.java String s1 = "E:\a\Test.java "; / 表示转义字符!!!!!===> "E:\\a\\Test.java" //定义文件夹a String s2 = "E: \a "; File f1 = new File(s1); File f2 = new File(s2); } }
==========>> 错误:找不到符号
原因1:拼写错误
原因2:类没有配置到classpath
特殊: 1. 首先找到File.class的位置:rt.jar---java----io---File.class
2.查看classpath环境,确实发现rt.jar没有配置到classpath中,
所以有可能是这个原因导致JVM没找到File.class
3.把rt.jar配置到classpath中
4.再次编译,仍然找到不到符号
5.问题出哪里了?
JVM 只能从classpath环境变量中只能看到rt.jar,
而File.class位于rt.jr下面的java/io文件夹(package)下面
6.所以需要显示告诉JVM要到java/io去找File.class类
方法一:全路径类名 File f1 = newjava.io.File(s1);====>>> 本质:相对路径
既然是相对路径,相对于谁?==========>相对于rt.jar
方法二:import
import java.io.File
import java.io.File public class Test { public static void main(String[] args) { m1(); } public static void m1() { String s1 = "E:\\a\\Test.java "; // String s = "a\\Test4.java" // 相对路径,相对于当前上下文环境Test4.java,位于E://a File f1 = new File(s1); System.out.println(f.canRead()); System.out.println(f.canWrite()); } public static void m2() { String s2 = "E: \\a "; File f2 = new File(s2); } }
4.3 方法
4.3.1 构造函数:(6种重载)
public File(String) { 形参字符串表示磁盘上文件夹或者文件的名称(包含路径) //全路径文件(夹)名称
}
4.3.2 可读可写
booleancanRead()
booleancanWrite()
4.3.3 判断文件是否存在
booleanexists()
4.3.4 判断是文件还是文件夹
booleanisFile()
booleanisDirectory()
4.3.5 是否隐藏
booleanisHidden()
4.3.6 最后一次修改时间
long lastModified() 1970.1.1 00:00:00 到现在相聚多少毫秒(1秒=1000毫秒)
4.3.7 文件长度
longlength()
4.3.8 获取文件(夹)名/文件(夹)父路径 /文件(夹)全路径/文件(夹)的绝对路径
StringgetName()
StringgetParent()
StringgetPath()
StringgetAbsolutePath()
4.3.9 创建子目录------------文件上传
booleanmkdir() 在已有的文件夹下创建一级目录
booleanmkdirs() 在已有的文件夹下创建多级目录
4.3.10 创建文件
booleancreateNewFile() ------需要抛异常(try{}catch 或者 throws )
try{
//判读父路径是否存在,如果不存在,先创建父路径
System.out.println(f.createNewFile());
}catch (IOException e) {
e.printStackTrace(); }
4.3.11 删除文件(夹)
booleandelete()
总结:
1.getXXXXX() :获取名称、父路径、 绝对路径
2.canXX() : 查看属性
3.isXXXX() : 是不是文件(夹)?
4.exists() : 是否存在
5.mkXXX() :创建文件夹
6.createNewFile : 创建文件
4.3.12 获取父路径的封装对象
Fileget ParentFile() ------------- String getParent()
4.3.13 获取绝对路径的封装对象
Fileget AbsoluteFile() ------------ StringgetAbsolutePath()
4.3.14 获取文件直接孩子的名字
String[]list()
FilelistFiles()