Calendar时间,与date,long类型转换。Collection集合,迭代器,简易迭代器

回顾:
正则表达式 \d \s \w . ? * + {n} [abc]
boolean matches(regex)
String[] split(regex)
String replaceAll(regex, newStr)
字符串编码 Unicode \uffff
操作系统编码:UTF-8 GBK
编码 new String(byte[], charset)
解码 str.getBytes(charset)
解决乱码:原路返回

Date:/ long = 0
new Date() - 当前系统时间
new Date(long) - 毫秒所表示的时间

after
before
getTime
setTime

时间格式化/解析 :SimpleDateFormat
yyyy-MM-dd HH:mm:ss E
String format(Date)
Date parse(String)

Calendar 抽象类
提供了一个静态的可以获得对象的方法
用处:
任意时间的切换和推算、计算
获得时间中的任意字段

get
set
add

数组:长度不可变
集合:
System.arraycopy(src, srcLoc, dest, destLoc, length)
Arrays.copyOf(src, newLength)
集合:支持Object,存储很多数据,没有长度限制

Iterable <- Collection(I) new实现类对象
|
List(I) Set(I) Queue(I)
| | |
ArrayList© HashSet© LinkedList©
LinkedList© SortedSet(I) Deque(I)
Vector© |-TreeSet© |-LinkedList©
|-Stack©栈
Collection-API: Iterable(可迭代的)
boolean add(E e) – 向集合中添加元素
void clear() – 清空
boolean contains(Object o) – 集合中是否包含指定元素
boolean isEmpty() – 集合中是否存在元素
boolean remove(Object o) – 移除指定元素
int size() – 集合长度,包含的元素个数

boolean	addAll(Collection c) -- 将指定集合加入到目标集合中
boolean	containsAll(Collection c) 
boolean	removeAll(Collection c)
boolean	retainAll(Collection c) 

Object[] toArray() 
T[] toArray(T[] a) 

(迭代器)Iterator iterator
迭代/遍历/依次访问

<泛型>:编译语法
动态把类型作为参数, 不规定泛型, 支持Object类型
规范程序员
E T O V K -> Object
具体类型

线性结构:- 原理
顺序
链表:单向链表、双向链表、循环链表
队列
双端队列

树状结构:
二叉树
散列结构:
Hash值

作业:
1.选择排序
插入排序
冒泡排序

原理 + 代码

2.约瑟夫环

package java_04;

/*~~ /Calendar时间*~~

import java.util.Calendar;
import java.util.Date;

import org.junit.Test;

public class CalendarTest {

@Test
public void test01() {
	Calendar cal = Calendar.getInstance();
	System.out.println(cal);
	
	//当前月份\年份\日期\时\分\秒\星期,统称字段
	int month = cal.get(Calendar.MONTH);
	System.out.println(month == Calendar.MAY);
	
	cal.get(Calendar.DAY_OF_MONTH);
	
	//设置任意字段,为任意值
	//时间是2018年6月114日
	cal.set(Calendar.MONTH, Calendar.JUNE);
	cal.set(Calendar.YEAR,2018);
	cal.set(Calendar.DATE,14);
	System.out.println(cal.get(Calendar.DAY_OF_WEEK));
}



@Test
public void test02() {
	Calendar cal = Calendar.getInstance();
	//时间计算,保质期48天,什么时候过期
	cal.add(Calendar.DATE, 48);// 今天加上 48天过期
	
	System.out.println(cal);
	System.out.print(cal.get(Calendar.YEAR)+"年");
	System.out.print(cal.get(Calendar.MONTH)+"月");
	System.out.print(cal.get(Calendar.DAY_OF_MONTH)+"日");
}




@Test
public void test03() {
	Date date = new Date();
	long time = System.currentTimeMillis();
	System.out.println(time);
	Calendar cal = Calendar.getInstance();
	cal.set(Calendar.MONTH,Calendar.JULY);
	
	**//1.Calendar 和date 类型转换;**
	date = cal.getTime();
	System.out.println(date);
	cal.setTime(date);

	**//2.Calendar 和long 类型转换;**
	time = cal.getTimeInMillis();
	System.out.println(time);
	cal.setTimeInMillis(time);;	
	
	**//3.date 和long 类型转换;**
	time = date.getTime();
	System.out.println(time);
	
}

}

package java_04;**

Collection集合

**

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Date;
import java.util.Iterator;

import org.junit.Test;

public class CollectionDemo {
@Test
public void test01() {//向集合中添加元素
//向上造型 -> 多态
Collection c = new ArrayList();
//boolean add(E e);
c.add(1);
c.add(3.14);
c.add(“haha”);
c.add(new Date());
c.add(3.14);

	System.out.println(c);//ArrayList toString重写过了  不然是地址 
	//从集合中删除元素 3.14;- equals方法判断对象。
	c.remove(3.14);
	System.out.println(c);//移除第一个3.14 

// c.clear();
// System.out.println©; 输出为[]
System.out.println(c.contains(1));//是否包含1
// c.clear();
// System.out.println©;
System.out.println(c.isEmpty());//是否为空 用过clear之后就是空的
System.out.println(c.size());//集合长度。
Collection b = new ArrayList();//泛型,用来规范程序员的行为。
b.add(1);
b.add(3.14);
b.add(5);
b.add(new Date());
b.add(“haha”);
b.add(10);
b.add(3.14);

	System.out.println(b.containsAll(c));//b中是否包含c中的所有元素
	System.out.println(c.removeAll(b));//移除此c中那些也包含在b中的所有元素
	System.out.println(c);
	System.out.println(c.retainAll(b));//仅保留此c中那些也包含在指定b的元素
	System.out.println(c.addAll(b));//将b中的元素全部添加到c中
	System.out.println(c);
	
}
@Test
public void test02() {
	Collection<String> c = new ArrayList<String>();
	c.add("hi");
	c.add("hello");
	c.add("my");
	c.add("name");
	c.add("is");
	c.add("jane");
	//toString重写过了
	System.out.println(c);//输出的是集合
	
	//1.集合转换成Object数组 - 实际可以转换成String[]
	Object os[] = c.toArray();//调用toArray方法
	System.out.println(Arrays.toString(os));
	
	//2.集合转换成具体类型的数组
	String[] strArr = c.toArray(new String[0]);//new String[0]参数只是为了使用类型
	System.out.println(Arrays.toString(strArr));
}
@Test
public void test03() {
	Collection<String>col = new ArrayList<String>();
	col.add("lucy");
	col.add("jarry");
	col.add("tom");
	col.add("jack");
	col.add("rose");
	col.add("jarry");
	
	System.out.println(col);
	//迭代集合,获取集合中的每一个元素。
	**//1.获得迭代器**
	Iterator<String> it = col.iterator();
	while(it.hasNext()) {
		String str = it.next();
		if(str.equals("jarry")) {
			it.remove();//迭代删除 
		}
		System.out.println(str);
	}		
	System.out.println(col);
	
	
	for(String str:col) {//**简易的迭代器**,只能迭代遍历,不能迭代删除
		System.out.println(str);
	}
	
	
	int num[] = {1,2,3,4,5,6};//**简易的迭代器**
	for(int num1:num) {
		System.out.println(num1);
	}
	

}

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值