Java_3 常用类

目录

  • Random
  • Arrays
  • StringBuilder
  • Date
  • Calendar
  • Math
  • System


Random

生成伪随机流。

// RandomDemo.java
import java.util.Random;

public class RandomDemo{
    public static void main(String[] args){
        Random r = new Random();
        System.out.println("随机整数:" + r.nextInt());
        System.out.println("[0, 100]:" + r.nextInt(100 + 1));
        System.out.println("[0, 100):" + r.nextInt(100));
        System.out.println("[40, 100]:" + r.nextInt(100 - 40 + 1) + 40);
        System.out.println("随机long整数:" + r.nextLong());
        System.out.println("随机float,[0, 1.0):" + r.nextFloat());
        System.out.println("随机double,[0, 1.0):" + r.nextDouble());
    }
}

Arrays

包含操作数组的各种方法。

// ArraysDemo.java
import java.util.Arrays;
import java.util.Random;

public class ArraysDemo{
    public static void main(String[] args){
        int [] arr = new int[10];
        Arrays.fill(arr, 9);
        System.out.println("全部赋值为9:" + Arrays.toString(arr));

        Random random = new Random();
        for (int i = 0; i < arr.length; i++){
            arr[i] = random.nextInt(101);
        }
        System.out.println("随机赋值后:" + Arrays.toString(arr));

        arr[5] = 50;
        Arrays.sort(arr);
        System.out.println("升序:" + Arrays.toString(arr));
        int j = Arrays.binarySearch(arr, 50);
        System.out.println("必须先升序,50所在位置:" + j);

        int [] newArr = Arrays.copyOf(arr, arr.length - 1);
        System.out.println("newArr:" + Arrays.toString(newArr));
        System.out.println("复制后对比:" + Arrays.equals(arr, newArr));
    }
}

StringBuilder

StringBuilder是可变字符串。

// StringBuilderDemo.java
public class StringBuilderDemo{
    public static void main(String[] args){
        StringBuilder s1 = new StringBuilder();  // 空串,容量16字符
        StringBuilder s2 = new StringBuilder("I");
        StringBuilder s3 = new StringBuilder(10);  // 空串,空量为10

        s3.insert(0, "u evol ");
        System.out.println("s3的长度:" + s3.length());
        s3.setCharAt(5, 'L');
        System.out.println("s3.reverse():" + s3.reverse());
        s2.append(s3);
        System.out.println(s2.toString());
        s2.replace(1, 2, "  don't ");
        System.out.println(s2.toString());
        s2.delete(1, 2);
        System.out.println(s2.toString());
    }
}

Date

通常用来获取系统当前时间。

// DateDemo.java
import java.util.TimeZone;
import java.util.Date;
import java.text.SimpleDateFormat;

public class DateDemo{
    public static void main(String[] args){
        String strDate, strTime;
        Date objDate = new Date();
        System.out.println(objDate);
        // 时区调整
        TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));
        System.out.println(objDate);
		
		// 截取时间
        long time = objDate.getTime();
        System.out.println("自1970-01-01以来毫秒:" + time);
        strDate = objDate.toString();
        strTime = strDate.substring(11, strDate.length());
        System.out.println("时间:" + strTime.substring(0, 8));

        // 格式化
        SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        System.out.println("格式化:" + fmt.format(objDate));
    }
}

Calendar

Calendar类是一个抽象类,完成Date与普通日期表示法之间的转换。

// CalendarDemo.java
import java.util.TimeZone;
import java.util.Date;
import java.util.Calendar;
import java.text.SimpleDateFormat;
import java.text.DateFormat;

public class CalendarDemo{
    public static void main(String[] args){
        TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));
        DateFormat dfmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String str = dfmt.format(new Date());
        System.out.println(str);

        Calendar cal = Calendar.getInstance();
        // 非必须  初始化 Calendar ;可对时间进行重置
        cal.setTime(new Date());
        System.out.println("年:" + cal.get(Calendar.YEAR));
        System.out.println("月:" + (cal.get(Calendar.MONTH) + 1));  // 月度从0开始
        System.out.println("日:" + cal.get(Calendar.DATE));
        System.out.println("时:" + cal.get(Calendar.HOUR_OF_DAY));
        System.out.println("分:" + cal.get(Calendar.MINUTE));
        System.out.println("秒:" + cal.get(Calendar.SECOND));

        // 设置
        cal.set(2020, 2, 20, 20, 20, 20);
        System.out.println(dfmt.format(cal.getTime()));
        cal.set(Calendar.MINUTE, 11);
        cal.set(Calendar.SECOND, 11);
        System.out.println(dfmt.format(cal.getTime()));
        cal.setTime(new Date());

        // 计算
        cal.add(Calendar.HOUR_OF_DAY, 3);
        System.out.println("三小时后:" + cal.getTime());
        str = (new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")).format(cal.getTime());
        System.out.println(str);
        Calendar newCal = Calendar.getInstance();
        // 前者大为 1 ;后者大为 -1
        System.out.println("时间比较:" + newCal.compareTo(cal));
    }
}

Math

包含于java.lang中,用于执行基本的数学运算。

// MathDemo.java
public class MathDemo{
    public static void main(String[] args){
        System.out.println(Math.abs(-1.4));
        System.out.println(Math.ceil(1.4));
        System.out.println(Math.rint(1.4));
        System.out.println(Math.rint(1.5));
        System.out.println("sin30 = " + Math.sin(Math.PI / 6));
    }
}

System

System不能被实例化,只能使用它的静态方法。
System类的功能有:

  • 标准输入、输出和错误输出流
  • 访问外部定义的属性和环境变量
  • 加载文件和库的方法
  • 用于快速复制数组的方法
// SystemDemo.java
import java.util.Arrays;

public class SystemDemo{
    public static void main(String[] args){
        int [] a = {1, 2, 3, 4, 5, 6};
        int [] b = {7, 8, 9, 10, 11, 12};
        // 从数组a中第2个元素开始,复制b中第3个位置,复制长度为3
        System.arraycopy(a, 1, b, 2, 3);
        System.out.println(Arrays.toString(b));
        System.out.println("当前时间:" + System.currentTimeMillis())
        System.out.println("java版本信息:" + System.getProperty("java.version"));
        // java 垃圾回收
        System.gc();
        // 退出  0
        System.exit(0);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值