博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java其他常用类
阅读量:4203 次
发布时间:2019-05-26

本文共 4652 字,大约阅读时间需要 15 分钟。

1. Random类

Math 类中虽然为我们提供了产生随机数的方法 Math.random(),但是通常我们需要的随机数范围并不是[0, 1)之间的 double 类型的数据,这就需要对其进行一些复杂的运算。如果使用 Math.random()计算过于复杂的话,我们可以使用例外一种方式得到随机数,即Random 类,这个类是专门用来生成随机数的,并且 Math.random()底层调用的就是Random 的 nextDouble()方法。

1.1. Random 类的常用方法

import java.util.Random;public class RandomTest01 {
public static void main(String[] args) {
Random rand = new Random(); //随机生成[0,1)之间的 double 类型的数据 System.out.println(rand.nextDouble()); //随机生成 int 类型允许范围之内的整型数据 System.out.println(rand.nextInt()); //随机生成[0,1)之间的 float 类型的数据 System.out.println(rand.nextFloat()); //随机生成 false 或者 true System.out.println(rand.nextBoolean()); //随机生成[0,10)之间的 int 类型的数据 System.out.print(rand.nextInt(10)); //随机生成[20,30)之间的 int 类型的数据 System.out.print(20 + rand.nextInt(10)); //随机生成[20,30)之间的 int 类型的数据(此种方法计算较为复杂) System.out.print(20 + (int) (rand.nextDouble() * 10)); }}

1.2 生成[0,4)之前不重复的5个随机数

import java.util.Random;public class RandomTest02 {
public static boolean contains(int[] arr,int temp){
for (int i: arr){
if (temp==i){
return true; } } return false; } public static void main(String[] args) {
Random random = new Random(); int[] arr = {
5,5,5,5,5}; //使用循环生成随机数储存到上面的数组 int index = 0; while (index<=4){
int temp = random.nextInt(5); if (!contains(arr,temp)){
arr[index++] = temp; } } for (int i:arr){
System.out.println(i); } }}

2. File类

java.io.File 类:代表文件和目录。 在开发中,读取文件、生成文件、删除文件、修改文件的属性时经常会用到本类。

2.1 使用 File 类创建文件

import java.io.File;import java.io.IOException;public class TestFile01 {
public static void main(String[] args) throws IOException {
System.out.println(System.getProperty("user.dir")); //获取项目根路径 File file1 = new File("d/movies/功夫熊猫.mp4"); //绝对路径 file1.createNewFile(); File file2 = new File("功夫之王.mp4"); //相对路径,放到user.dir下 file2.createNewFile(); }}

2.2 使用 File 类访问文件或目录属性

import java.io.File;import java.util.Date;public class TestFile02 {
public static void main(String[] args) {
File f = new File("d:/两只蝴蝶.mp3"); System.out.println("File 是否存在:"+f.exists()); System.out.println("File 是否是目录:"+f.isDirectory()); System.out.println("File 是否是文件:"+f.isFile()); System.out.println("File 最后修改时间:"+new Date(f.lastModified())); System.out.println("File 的大小:"+f.length()); System.out.println("File 的文件名:"+f.getName()); System.out.println("File 的目录路径:"+f.getPath()); }}

2.3 使用 mkdir 创建目录

import java.io.File;import java.io.IOException;public class TestFile03 {
public static void main(String[] args) throws IOException {
File f = new File("d:/c.txt"); f.createNewFile(); // 会在 d 盘下面生成 c.txt 文件 f.delete(); // 将该文件或目录从硬盘上删除 File f2 = new File("d:/电影/华语/大陆"); boolean flag = f2.mkdir(); //目录结构中有一个不存在,则不会创建整个目录树 System.out.println(flag);//创建失败 }}

2.4 使用 mkdirs 创建目录

import java.io.File;import java.io.IOException;public class TestFile04 {
public static void main(String[] args) throws IOException {
File f = new File("d:/c.txt"); f.createNewFile(); // 会在 d 盘下面生成 c.txt 文件 f.delete(); // 将该文件或目录从硬盘上删除 //目录结构中有一个不存在也没关系;创建整个目录树 File f2 = new File("d:/电影/华语/大陆");boolean flag = f2.mkdirs(); System.out.println(flag);//创建成功 }}

3. 枚举

JDK1.5 引入了枚举类型。枚举类型的定义包括枚举声明和枚举体。格式如下:

enum 枚举名 {
枚举体(常量列表)}

3.1 创建枚举类型

enum Season {
SPRING, SUMMER, AUTUMN, WINDER}

所有的枚举类型隐性地继承自 java.lang.Enum。枚举实质上还是类!而每个被枚举的成员实质就是一个枚举类型的实例,他们默认都是 public static final 修饰的。可以直接通过枚举类型名使用它们。

3.2 枚举的使用

import java.util.Random;public class TestEnum {
public static void main(String[ ] args) {
// 枚举遍历 for (Week k : Week.values()) {
System.out.println(k); } //switch 语句中使用枚举 int a = new Random().nextInt(4); // 生成 0,1,2,3 的随机数 switch (Season.values()[a]) {
case SPRING: System.out.println("春天"); break; case SUMMER: System.out.println("夏天"); break; case AUTUMN: System.out.println("秋天"); break; case WINDTER: System.out.println("冬天"); break; } }}/**季节*/enum Season {
SPRING, SUMMER, AUTUMN, WINDTER}/**星期*/enum Week {
星期一, 星期二, 星期三, 星期四, 星期五, 星期六, 星期日}

转载地址:http://yqpli.baihongyu.com/

你可能感兴趣的文章