2020-08-15

2020-08-15
我的Java小复习–Date&SimpleDateFormat&Calendar
和及格作业字符串去重

Date

private static void testDate1() {
		//获得当前的时间
		Date d1 = new Date();
		System.out.println(d1);//结果:Sat Aug 15 16:24:27 CST 2020
		//year-1900  month[0-11]
		//以指定年月日创建日期,对象设置时间为2000-01-01
		Date d2 = new Date(100,0,1);
		System.out.println(d2);//结果:Sat Jan 01 00:00:00 CST 2000
		//设置时间为1971-01-01
		Date d3 = new Date(31536000000L);
		System.out.println(d3);//结果:Fri Jan 01 08:00:00 CST 1971
		//获得日期对象
		System.out.println(d3.getTime());//31536000000
	}

SimpleDateFormat

主要用来进行格式化(也就是日期 -> 文本)、解析(文本-> 日期)

private static void testSimpleDateFormat() {
		Date d1 = new Date();
		System.out.println("格式化前:"+d1);
		//创建模板来格式化或者解析
		//模板1
		//String pattern = "yyyy年MM月dd日 HH:mm:ss";
		//模板2
		String pattern = "yyyy-MM-dd HH:mm:ss";
		SimpleDateFormat sdf = new SimpleDateFormat(pattern);
		//将"日期对象"以指定文本格式化
		String format = sdf.format(d1);
		System.out.println("格式化后:"+format);
		System.out.println("-----------------------");
		//解析:只会解析复合模版的字符串
		String birthday ="2020-05-14 11:11:11";
		SimpleDateFormat sdf1 = new SimpleDateFormat(pattern);
		Date parse;
		try {
			parse = sdf1.parse(birthday);
			System.out.println(parse);
		} catch (ParseException e) {
			e.printStackTrace();
		}
	}

Calendar

public static void main(String[] args) {
		//获取当前的日历对象
		Calendar rightNow = Calendar.getInstance();
		//System.out.println(rightNow);
		//得到当前时间的某一字段值
		System.out.println(rightNow.get(Calendar.YEAR));
		System.out.println(rightNow.get(Calendar.MONTH)+1);
		System.out.println(rightNow.get(Calendar.DATE));
		//日 一 二 。。。。五 六  
		System.out.println(rightNow.get(Calendar.DAY_OF_WEEK));
		System.out.println(rightNow.get(Calendar.HOUR_OF_DAY));
		System.out.println(rightNow.get(Calendar.MINUTE));
		System.out.println(rightNow.get(Calendar.SECOND));
		//重新设置值
		rightNow.set(Calendar.YEAR, 2000);
		rightNow.set(Calendar.MONTH, 0);//设置时0-11代表1-12月
		rightNow.set(Calendar.DATE, 1);
		rightNow.add(Calendar.YEAR, 1);
		rightNow.add(Calendar.DATE, 31);
		System.out.println(rightNow.get(Calendar.YEAR));
		System.out.println(rightNow.get(Calendar.MONTH)+1);//得到时0-11代表1-12月
		System.out.println(rightNow.get(Calendar.DATE));

字符串去重

public class Test {
	/*
	 * 作业六 设计方法: 实现 输入一个字符串,将字符串中的重复的字符去除后 再返回.
  m1(“javabigdata”)  return “javbigdt”
	 */
	public static void main(String[] args) {
		String arraySet = arraySet("tjavavbibgddata".toCharArray());
		System.out.println(arraySet);
	}

	private static String arraySet(char[] oldArr) {
		// 创建临时数组用于存放找到的不重复的元素
		char[] tempArr = new char[oldArr.length];
		// 为了计算将来新数组的长度
		int length = 0;
		// 为了得到原数组中的每个元素
		for (int i = 0; i < oldArr.length; i++) {
			// 判断是否重复的标准: false是不重复  true是重复
			boolean isRepeat = false;
			// 为了得到原数组中的下一个元素
			for(int j = i+1;j < oldArr.length;j++) {
				// 当前元素与后面的元素比较相等
				if(oldArr[i] == oldArr[j]) {
					isRepeat = true;
					break;
				}
			}
			// 如果不重复
			if(!isRepeat) {
				// 将不重复的元素放在临时数组中
				tempArr[length] = oldArr[i];
				// 计数:存储了多少个不重复的元素
				length++;
			}
		}
		// 再创建新数组
		char[] newArr = new char[length];
		// 将临时数组的元素放入新数组
		for(int i = 0;i < newArr.length;i++) {
			newArr[i] = tempArr[i];
		}
		// 以字符数组 创建出字符串对象
		return new String(newArr);
	}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值