Java实验 实验八

实验八、常用实用类

1、字符串比较

public class test {

    public static void main(String[] args) {

        String s1="abc",s2="abc",s3=new String("abc"),s4=new String("abc");

        System.out.println(s1==s2);

        System.out.println(s1.equals(s2));

    }

}

public class test {

    public static void main(String[] args) {

        String s1="abc",s2="abc",s3=new String("abc"),s4=new String("abc");

        System.out.println(s3==s4);

        System.out.println(s3.equals(s4));

    }

}

public class test {

    public static void main(String[] args) {

        String s1="abc",s2="abc",s3=new String("abc"),s4=new String("abc");

        System.out.println(s1==s4);

        System.out.println(s1.equals(s4));

    }

}

2、正则表达式

public class test {

    public static void main(String[] args) {

        String s1="abc",s2="abc",s3=new String("abc"),s4=new String("abc");

        System.out.println(s1==s4);

        System.out.println(s1.equals(s4));

        s1="5cat";

        System.out.println(s1.matches("\\dcat"));

    }

}

public class test {

    public static void main(String[] args) {

        String s1="abc",s2="abc",s3=new String("abc"),s4=new String("abc");

        System.out.println(s1==s4);

        System.out.println(s1.equals(s4));

        s1="acat";

        System.out.println(s1.matches("\\dcat"));

    }

}

//元字符

public class test {

    public static void main(String[] args) {

        String s1="abc",s2="abc",s3=new String("abc"),s4=new String("abc");

        System.out.println(s1==s4);

        System.out.println(s1.equals(s4));

        s1="5cat";

        System.out.println(s1.matches("\\dcat"));

        System.out.println(s1.matches("[135]cat"));

    }

}

public class test {

    public static void main(String[] args) {

        String s1="abc",s2="abc",s3=new String("abc"),s4=new String("abc");

        System.out.println(s1==s4);

        System.out.println(s1.equals(s4));

        s1="6cat";

        System.out.println(s1.matches("\\dcat"));

        System.out.println(s1.matches("[135]cat"));

    }

}

  1. z A-Z|0-9|下划线]+”与任何由英文字母,下划线,数字

public class test {

    public static void main(String[] args) {

        String s1="abc",s2="abc",s3=new String("abc"),s4=new String("abc");

        System.out.println(s1==s4);

        System.out.println(s1.equals(s4));

        s1="6acat";

        System.out.println(s1.matches("\\dcat"));

        System.out.println(s1.matches("[135]cat"));

        System.out.println(s1.matches("[a-zA-Z|0-9|_]+cat"));

    }

}

public class test {

    public static void main(String[] args) {

        String s1="abc",s2="abc",s3=new String("abc"),s4=new String("abc");

        System.out.println(s1==s4);

        System.out.println(s1.equals(s4));

        s1="6a_+cat";

        System.out.println(s1.matches("\\dcat"));

        System.out.println(s1.matches("[135]cat"));

        System.out.println(s1.matches("[a-zA-Z|0-9|_]+cat"));

    }

}

 String str ="12hello567bird".replaceAll("[a-zA-Z]+","你好");

//字符串的分解

import java.util.Scanner;
public class test2 {
    public static void main (String args[ ]) {
        System.out.println("一行文本:");
        Scanner reader=new Scanner(System.in);
        String str ="regex<=>?@[\\匹配  由空格、数字和!\"#$%$'()*+,-.]^_'{|}~组成的字符序列";
        String regex = "[\\s\\d\\p{Punct}]+";
        String words[] = str.split(regex);
        for(int i=0;i<words.length;i++){
            int m = i+1;
            System.out.println("单词"+m+":"+words[i]);
        }
    }
}

public class test3 {

    public static void main(String[] args) {

       StringBuffer s1=new StringBuffer("abcde");

       s1.append("1234567891234567") ;

       System.out.println(s1.capacity());

       System.out.println(s1);

    }

}

public class test3 {

    public static void main(String[] args) {

        StringBuffer s1=new StringBuffer("abcde");

        s1.append("12345678901234567") ;

        System.out.println(s1.capacity());

        System.out.println(s1);

    }

}

//逆序

s1.reverse();

例如用LocalTime给程序计时
LocalTime n1= LocalTime.now();//程序开始时
……
LocalTime n1= LocalTime.now();//程序结束时
 System.out.println(n1.until(n2, ChronoUnit.NANOS));//输出纳秒值

import java.time.*;

import java.time.temporal.ChronoUnit;

public class test4 {

    public static void main(String args[ ]) {

        LocalDate dateOne = LocalDate.now();

        System.out.println("本地日期:"+dateOne);

        LocalDate dateTwo = LocalDate.of(2025,1,22);

        System.out.println("自定日期:"+dateTwo);

        System.out.println(dateOne+"在"+dateTwo+"之后:"+dateOne.isAfter(dateTwo));

        System.out.println(dateOne+"在"+dateTwo+"之前:"+dateOne.isBefore(dateTwo));

        System.out.println(dateOne+"和"+dateTwo+"相同:"+dateOne.isEqual(dateTwo));

        int year = 18,month = 23,day = 8976;

        LocalDate dateAgo=dateOne.plusYears(-year);

        System.out.println(dateOne+" "+ year+"年前是:\n"+dateAgo);

        System.out.println("那天是"+dateAgo.getDayOfWeek());

        LocalDate dateAfter=dateTwo.plusYears(year).plusMonths(month).plusDays(8976);

        System.out.println(dateTwo+"再过"+year+"年"+month+"个月"+day+"天之后是:");

        System.out.println(dateAfter);

        System.out.println("那天是"+dateAfter.getDayOfWeek());

        int second = 1897;

        LocalTime time = LocalTime.of(23,30,1);

        LocalTime nextTime = time.plusSeconds(second);

        System.out.println(time+"再过"+second+"秒是:"+nextTime);

        System.out.println(dateOne.until(dateTwo, ChronoUnit.DAYS));

    }

}

运行结果:

本地日期:2023-11-02

自定日期:2025-01-22

2023-11-02在2025-01-22之后:false

2023-11-02在2025-01-22之前:true

2023-11-02和2025-01-22相同:false

2023-11-02 18年前是:

2005-11-02

那天是WEDNESDAY

2025-01-22再过18年23个月8976天之后是:

2069-07-20

那天是SATURDAY

23:30:01再过1897秒是:00:01:38

447

import java.time.*;

import java.time.temporal.ChronoUnit;

public class test4 {

    public static void main(String args[ ]) {

        LocalTime n1=LocalTime.now();

        LocalDate dateOne = LocalDate.now();

        System.out.println("本地日期:"+n1);

        LocalDate dateTwo = LocalDate.of(2025,1,22);

        System.out.println("自定日期:"+dateTwo);

        System.out.println(dateOne+"在"+dateTwo+"之后:"+dateOne.isAfter(dateTwo));

        System.out.println(dateOne+"在"+dateTwo+"之前:"+dateOne.isBefore(dateTwo));

        System.out.println(dateOne+"和"+dateTwo+"相同:"+dateOne.isEqual(dateTwo));

        int year = 18,month = 23,day = 8976;

        LocalDate dateAgo=dateOne.plusYears(-year);

        System.out.println(dateOne+" "+ year+"年前是:\n"+dateAgo);

        System.out.println("那天是"+dateAgo.getDayOfWeek());

        LocalDate dateAfter=dateTwo.plusYears(year).plusMonths(month).plusDays(8976);

        System.out.println(dateTwo+"再过"+year+"年"+month+"个月"+day+"天之后是:");

        System.out.println(dateAfter);

        System.out.println("那天是"+dateAfter.getDayOfWeek());

        int second = 1897;

        LocalTime time = LocalTime.of(23,30,1);

        LocalTime nextTime = time.plusSeconds(second);

        System.out.println(time+"再过"+second+"秒是:"+nextTime);

        System.out.println(dateOne.until(dateTwo, ChronoUnit.DAYS));

        LocalTime n2=LocalTime.now();

        System.out.println(n1.until(n2, ChronoUnit.NANOS));

    }

}

运行结果:

本地日期:09:33:08.992970400

自定日期:2025-01-22

2023-11-02在2025-01-22之后:false

2023-11-02在2025-01-22之前:true

2023-11-02和2025-01-22相同:false

2023-11-02 18年前是:

2005-11-02

那天是WEDNESDAY

2025-01-22再过18年23个月8976天之后是:

2069-07-20

那天是SATURDAY

23:30:01再过1897秒是:00:01:38

447

21927100

public class test5 {

    public static void main(String[] args) {

        //随机数

        System.out.println(Math.random());

    }

}

import java.util.Random;

public class test5 {

    public static void main(String[] args) {

        //随机数

        Random r=new Random(3);

        //随机整数

        System.out.println(r.nextInt(100));

    }

}

import java.math.BigInteger;

import java.util.Random;

public class test5 {

    public static void main(String[] args) {

        //随机数

        Random r=new Random(3);

        //大整型数

        BigInteger b1=new BigInteger("12345678912345678918237373");

        BigInteger b2=new BigInteger("12345678912345678918237373");

        System.out.println(b1.add(b2));

        //随机整数

        System.out.println(r.nextInt(100));

    }

}

  • 30
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值