梳理知识

StringBulider常用方法

  • public StringBuilder append(...):添加任意类型数据的字符串形式,并返回当前对象自身。

  • public StringBuilder reverse():返回反转的字符序列

  • public String toString():将当前StringBuilder对象转换为String对象。

 例题:  

/*将字符串 "         we-like-java       " 转换为 "EW-EKIL-AVAJ"
        也就是去掉前后空格,并将每个单词反转.***/
public class Test2 {
    public static void main(String[] args) {
        String s = "         we-like-java       ";
        String[] str = s.trim().toUpperCase().split("-");
        StringBuilder sb2 = new StringBuilder();
        for (int i = 0; i <str.length; i++) {
            StringBuilder sb = new StringBuilder(str[i]);
            str[i] = sb.reverse().toString();
            if(i!=str.length-1){
             sb2.append(str[i]).append("-").toString();}
            else {
                sb2.append(str[i]);
            }
        }
        System.out.println(sb2);

    }
}

 

DateFormat类

  • 格式化:按照指定的格式,把Date对象转换为String对象。

  • 解析:按照指定的格式,把String对象转换为Date对象。

 由于DateFormat为抽象类,不能直接使用,所以需要常用的子类 java.text.SimpleDateFormat .

构造方法为:

  • public SimpleDateFormat(String pattern):用给定的模式和默认语言环境的日期格式符号构造SimpleDateFormat。  参数pattern是一个字符串,代表日期时间的自定义格式。

 

转换方法:

  • String format(Date date)传递日期对象,返回格式化后的字符串。

  • Date parse(String str)传递字符串,返回日期对象。

应用:

1.格式化 Date到String

 //格式化:从 Date 到 String
     Date d = new Date();
     SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
     String s = sdf.format(d);
     System.out.println(s);

2.//从 String 到 Date

//从 String 到 Date
     String ss = "2048-08-09 11:11:11";
     //ParseException
     SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
     Date dd = sdf2.parse(ss);
     System.out.println(dd);

Calender类

Calendar是抽象类,不能创建对象,需要使用子类对象。java.util.GregorianCalendar类是Calendar的子类,但是创建日历对象需要根据本地的时区,语言环境来创建,比较困难,Calendar类提供了静态方法 getInstance()直接获取子类的对象。

public static Calendar getInstance():使用默认时区和语言环境获得一个日历。

Calendar cal = Calendar.getInstance();

常用方法:

  • public int get(int field):返回给定日历字段的值。

  • public void set(int field, int value):将给定的日历字段设置为给定值。

  • public abstract void add(int field, int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量。

  • public Date getTime():返回一个表示此Calendar时间值(从历元到现在的毫秒偏移量)的Date对象。

 代码演示:

public static void main(String[] args) {
    // 创建Calendar对象
    Calendar cal = Calendar.getInstance();
    // 获取年
    int year = cal.get(Calendar.YEAR);
    //设置年份为2020年
    cal.set(Calendar.YEAR, 2020);
    //将年份修改为2000年
    cal.add(Calendar.YEAR,-20)     
    //将日历对象转换为日期对象
    Date d = cal.getTime();
    System.out.println(d);
}    

System类

java.lang.System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作。System类私有修饰构造方法,不能创建对象,直接类名调用。

 常用方法

arrayCopy方法:

  • Object src:要复制的数据源数组

  • int srcPost:数据源数组的开始索引

  • Object dest:复制后的目的数组

  • int destPos:目的数组开始索引

  • int length:要复制的数组元素的个数

    public static void main(String[] args){
        int[] src = {1,2,3,4,5};
        int[] dest = {6,7,8,9,0};
        //将源数组中从1索引开始,复制3个元素到目的数组中
        System.arraycopy(src,1,dest,0,3);
        for(int i = 0 ; i < dest.length;i++){
        System.out.println(dest[i]);
    }

 String类

转换功能的方法

  • public char[] toCharArray () :将此字符串转换为新的字符数组。举例:s1.toCharArray() 把s1变成字符数组

  • public byte[] getBytes () :使用平台的默认字符集将该 String编码转换为新的字节数组。 举例:s1.getBytes() 把s1变成字节数组

  • public String replace (CharSequence target, CharSequence replacement) :将与target匹配的字符串使用replacement字符串替换。 举例:s1.replace("a","A") 把s1中的所有的"a"替换成"A"

字符串替换
           String replace(char oldChar, char newChar)  替换字符串中的字符
           String replace(String oldString, String newString)

           String replaceAll(String regex,String str)

例题:替换敏感字

import java.util.Scanner;

//5.网络程序中,如聊天室,聊天软件等,经常需要对用户提交的内容进行敏感词过滤如"色情","枪","军火"等,
// 这些词都不可以在网上进行传播,需要过滤掉或者用其他词语替换.键盘录入一个字符串 将敏感词替换成 "*" **
public class Test_MinGan {
    public static void main(String[] args) {
        String[] str ={"色情","枪","军火"} ;
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入字符串");
        String s = sc.nextLine();
        for (int i = 0; i < str.length; i++) {
            s = s.replace(str[i],"*");
        }
        System.out.println(s);

    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值