listen过去式 (list背单词)

List<String>list=new ArrayList<String>();

list.add("a");

list.add("b");

list.add("c");

List<String>list1=new ArrayList<String>();

list1.add("a");

list1.add("b");

list1.add("d");

list1.add("e");

//两个集合的交集

// list.retainAll(list1);

//两个集合的并集

// list.addAll(list1);

//两个集合的差集

list.removeAll(list1);

System.out.println(list);

--------------------------------------------------------------------------------------------------------------------

//字符去重

char[] list = { 'a', 'a', 'c', '1', '2', 'd', 'e', 'f', 'h', 'k', 'd', 'a', 'n', '1' };

List<Character> list2 = new ArrayList<Character>();// 必须如此声明,不能List<Character>list2=null,这样声明,会报空指针异常

for (int i = 0; i < list.length; i++) {

if (!list2.contains(list[i])) {// 如果不包含该值 添加到该集合

list2.add(list[i]);}

}

System.out.println(list2);

//去重排序

List<Integer> list = new ArrayList<Integer>();

list.add(1);

list.add(2);

list.add(4);

list.add(6);

list.add(5);

list.add(1);

list.add(2);

Set<Integer> set = new HashSet<>();

for (int i = 0; i < list.size(); i++) {

set.add(list.get(i));

}

Integer[] arr = (Integer[]) set.toArray(new Integer[set.size()]);

int temp;

for (int i = 0; i < arr.length - 1; i++) {

for (int j = 0; j < arr.length - i - 1; j++) {

if (arr[j] < arr[j + 1]) { //< 降序 >升序

temp = arr[j];

arr[j ] = arr[j+1];

arr[j + 1] = temp;

}

}

}

for (int i = 0; i < arr.length; i++) {

System.out.print(arr[i] + "\t");

}

//循环list嵌套map

List<Map<String, String>> list = new ArrayList<Map<String, String>>();

Map<String, String> map = new HashMap<String, String>();

map.put("a", "xiaowang");

map.put("b", "xiaoli");

map.put("d", "xiaozhou");

list.add(map);

//Map<String, String>相当于list<String>的String

for (Map<String, String> m : list) {

//嵌套一层for 循环map

for (String k : m.keySet()) {

System.out.println(k);

System.out.println(k + "=" + m.get(k));

}

}

////////////////////////////////////////

List<String> list2 = new ArrayList<String>();

list2.add("a");

list2.add("b");

list2.add("c");

for (String s : list2) {

System.out.println(s);

}

System.out.println("******************************");

for (int i = 0; i < list2.size(); i++) {

System.out.println(list2.get(i));

}

}

数组转List

String[] staffs = new String[]{"Tom", "Bob", "Jane"};

List staffsList = Arrays.asList(staffs);

需要注意的是, Arrays.asList() 返回一个受指定数组决定的固定大小的列表。所以不能做 add 、 remove 等操作,否则会报错

如果想再做增删操作呢?将数组中的元素一个一个添加到列表,这样列表的长度就不固定了,可以进行增删操作

List staffsList = new ArrayList<String>();

for(String temp: staffs){

staffsList.add(temp);

}

staffsList.add("Mary"); // ok

staffsList.remove(0); // ok

数组转Set

String[] staffs = new String[]{"Tom", "Bob", "Jane"};

Set<String> staffsSet = new HashSet<>(Arrays.asList(staffs));

staffsSet.add("Mary"); // ok

staffsSet.remove("Tom"); // ok

List转数组

String[] staffs = new String[]{"Tom", "Bob", "Jane"};

List staffsList = Arrays.asList(staffs);

Object[] result = staffsList.toArray();

List转Set

String[] staffs = new String[]{"Tom", "Bob", "Jane"};

List staffsList = Arrays.asList(staffs);

Set result = new HashSet(staffsList);

Set转数组

String[] staffs = new String[]{"Tom", "Bob", "Jane"};

Set<String> staffsSet = new HashSet<>(Arrays.asList(staffs));

Object[] result = staffsSet.toArray();

Set转List

String[] staffs = new String[]{"Tom", "Bob", "Jane"};

Set<String> staffsSet = new HashSet<>(Arrays.asList(staffs));

List<String> result = new ArrayList<>(staffsSet);

String[] array = {"m", "a", "b", "c", "c", "d", "e", "e", "e", "a" };

List<String> result = new ArrayList<>();

for (int i = 0; i < array.length; i++) {

boolean flag = false ;

for (int j = 0; j < result.size(); j++) {

if (array[i].equals(result.get(j))) {

flag = true;

break;

}

}

if (!flag) {

result.add(array[i]);

}

}

String[] arrayResult = (String[]) result.toArray(new String[result.size()]);

Arrays.sort(arrayResult);

for (String vo : arrayResult) {

System.out.println(vo);

}

取数组最大或list最大值,基本是一样的

int arr[] = {7, 5, 4, 1, 6, 9, 5, 6 };

List<Integer> list = new ArrayList<>();

for (int i = 0; i < arr.length; i++) {

if(!list.contains(arr[i])) {

list.add(arr[i]);

}

}

//System.out.println(list);

int max=list.get(0);//假设第一个最大

for (int i = 0; i <list.size(); i++) {

if(list.get(i)>max) {

max=list.get(i);

}

}

System.out.println(max);

判断数组是否有重复的元素,如果有请找出

int array[] = { 44, 66, 88, 44 };

// 声明一个空的集合

List<Integer> list = new ArrayList<>();

Set<Integer> set = new HashSet<Integer>();

for (int i = 0; i < array.length; i++) {

if (!list.contains(array[i])) {

list.add(array[i]);

} else {

set.add(array[i]);

}

}

// 判断长度

if (array.length != list.size()) {

System.out.println("有重复的元素");

} else {

System.out.println("没有重复的元素");

}

System.out.println(list);

System.out.println(set);

}

/**

*批量增加海量数据

*<!-- 批量增加 -->

<insert id="insertBatch" parameterType="map">

<selectKey keyProperty="id" order="AFTER" resultType="int">

select last_insert_id()

</selectKey>

insert into mytest

(name,birthday)

values

<foreach collection="personList" item="person" separator=",">

(#{person.name},#{person.birthday})

</foreach>

</insert>

*/

@Test

public void testInsertBatch() throws Exception {

List<TestTb> list=new ArrayList<>();

Map<String, Object> map=new HashMap<String, Object>();

for (int i = 0; i < 1000008; i++) {

TestTb testTb=new TestTb();

testTb.setName("贝贝"+i);

testTb.setBirthday(new Date());

list.add(testTb);

if(i%500==0){

map.put("personList", list);

testTbService.insertBatch(map);

//清空,之后继续添加

list.clear();

}

}

//零头的添加

map.put("personList", list);

testTbService.insertBatch(map);}

/***批量删除海量数据

*<!-- 批量删除 item="idd" 变量自定的,怎么定义的,就怎么取 #{idd} -->

<delete id="deleteBatch" parameterType="map">

delete from mytest where id in

<foreach collection="ids" item="idd" open="(" close=")" separator=",">

#{idd}

</foreach>

</delete>

*/

@Test

public void testDeteleBatch() throws Exception {

List<Integer> list=new ArrayList<Integer>();

Map<String, Object> map=new HashMap<String, Object>();

for (int i = 100330; i <= 2000337; i++) {

list.add(i);

if(i%500==0){

map.put("ids", list);

testTbService.deleteBatch(map);;

//清空,之后继续删除

list.clear();

}

}

//零头的删除

map.put("ids", list);

testTbService.deleteBatch(map);

}

}