标签:
------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.comtarget="blank">
java培训</a>、期待与您交流! ---------
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class CollectionssDemos
{
public static void main(String[] args)
{
med1();
}
private static void med1()
{
List<String> lis = new ArrayList();
lis.add("11245");
lis.add("2245");
lis.add("41245");
lis.add("21245");
lis.add("11245");
System.out.println(lis);//[11245, 2245, 41245, 21245, 11245]
Collections.sort(lis);
System.out.println(lis);
//[11245, 11245, 21245, 2245, 41245]
}
}
-------------------------------------------------------------------------------------------------------------------------
自定义一个比较器,对集合中的元素进行排序
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
//定义一个按照字符串的长度比较器类
class StringLengthSort implements Comparator<String>
{
public int compare(String s1,String s2)
{
if(s1.length()>s2.length())
return 1;
if(s1.length()<s2.length())
return -1;
return s1.compareTo(s2);
}
}
//------------------------------------
public class CollectionssDemos {
public static void main(String[] args) {
med1();
}
private static void med1() {
List<String> lis = new ArrayList();
lis.add("11245");
lis.add("2245");
lis.add("41245");
lis.add("21245");
lis.add("11245");
//排序前的输出结果
System.out.println(lis);//[11245, 2245, 41245, 21245, 11245]
//对集合元素进行排序
Collections.sort(lis,new StringLengthSort());//使用自定义比较器
//排序后的输出结果
System.out.println(lis);
//[2245, 11245, 11245, 21245, 41245]
}
}
Collections中的求集合元素的最大值
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class CollectionssDemos {
public static void main(String[] args) {
// TODO Auto-generated method stub
med2();
}
private static void med2() {
// TODO Auto-generated method stub
//新建一个集合,并添加元素
List<String> lis = new ArrayList();
lis.add("11245");
lis.add("2245");
lis.add("41245");
lis.add("21245");
lis.add("11245");
//在控制台上输出没有排序前的集合元素
System.out.println(lis);//[11245, 2245, 41245, 21245, 11245]
//对集合元素进行排序
Collections.sort(lis);
//在控制台上输出排序后的集合元素
System.out.println(lis);//[11245, 11245, 21245, 2245, 41245]
//对集合元素取最大值操作
String max = Collections.max(lis);
//输出最大值
System.out.println(max);//41245
}
}
private static void med3() {
//
//新建一个集合,并添加元素
List<String> lis = new ArrayList();
lis.add("11245");
lis.add("2245");
lis.add("41245");
lis.add("21245");
lis.add("11245");
//在控制台上输出没有排序前的集合元素
System.out.println(lis);//[11245, 2245, 41245, 21245, 11245]
//对集合元素进行排序
Collections.sort(lis);
//在控制台上输出排序后的集合元素
System.out.println(lis);//[11245, 11245, 21245, 2245, 41245]
//获取元素的相应角标
int index = Collections.binarySearch(lis, "2245");
System.out.println(index);
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class CollectionssDemos {
public static void main(String[] args) {
med4();
}
//演示自定义二分查找方法
private static void med4() {
// TODO Auto-generated method stub
//新建一个集合,并添加元素
List<String> lis = new ArrayList();
lis.add("11245");
lis.add("2245");
lis.add("41245");
lis.add("21245");
lis.add("11245");
//在控制台上输出没有排序前的集合元素
System.out.println(lis);//[11245, 2245, 41245, 21245, 11245]
//对集合元素进行排序
Collections.sort(lis);
//在控制台上输出排序后的集合元素
System.out.println(lis);//[11245, 11245, 21245, 2245, 41245]
//调用自定义二分查找方法查找相应元素
int num = medall(lis,"11245");
System.out.println(num);
}
//定义一个二分法查找方法
public static int medall(List<String> list,String key)
{
int min ,mid ,max;
min = 0;
max=list.size();
while(min<=max)
{
mid = (min+max)/2;
String str = list.get(mid);
int num = str.compareTo(key);
if(num>0)
max = mid-1;
else if(num<0)
min = mid +1;
else
return mid;
}
return -min-1;
}
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class CollectionssDemos {
public static void main(String[] args) {
med6();
}
private static void med6() {
// TODO Auto-generated method stub
//新建一个集合,并添加元素
List<String> lis = new ArrayList();
lis.add("11245");
lis.add("2245");
lis.add("41245");
lis.add("21245");
lis.add("11245");
//在控制台上输出没有排序前的集合元素
System.out.println(lis);//[11245, 2245, 41245, 21245, 11245]
//对集合元素进行排序
Collections.sort(lis);
//在控制台上输出排序后的集合元素
System.out.println(lis);//[11245, 11245, 21245, 2245, 41245]
//调用方法
Collections.replaceAll(lis, "2245", "lkkkk");
System.out.println(lis);
//[11245, 11245, 21245, lkkkk, 41245]
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class CollectionssDemos {
public static void main(String[] args) {
med7();
}
private static void med7() {
//新建一个集合,并添加元素
List<String> lis = new ArrayList();
lis.add("11245");
lis.add("2245");
lis.add("41245");
lis.add("21245");
lis.add("11245");
//在控制台上输出没有排序前的集合元素
System.out.println(lis);//[11245, 2245, 41245, 21245, 11245]
//对集合元素进行排序
Collections.sort(lis);
//在控制台上输出排序后的集合元素
System.out.println(lis);//[11245, 11245, 21245, 2245, 41245]
//调用方法自定义替换部分元素的方法
medreplace(lis,"kk",1,3);
//输出替换后的集合元素
System.out.println(lis);
//[11245, kk, kk, 2245, 41245]
}
//自定义一个方法将集合中的部分元素替换成指定元素
private static void medreplace(List lis,String s,int start,int end)
{
for(int i =start;i<end;i++)
{
lis.set(i, s);
}
}
}
private static void med8() {
// TODO Auto-generated method stub
//新建一个集合,并添加元素
List<String> lis = new ArrayList();
lis.add("11240");
lis.add("2245");
lis.add("41245");
lis.add("21245");
lis.add("11245");
//在控制台上输出没有排序前的集合元素
System.out.println(lis);//[11240, 2245, 41245, 21245, 11245]
//调用方法对集合中的元素进行反转操作
Collections.reverse(lis);
//输出进行反转后的集合元素
System.out.println(lis);//[11245, 21245, 41245, 2245, 11240]
}
public class CollectionssDemos {
public static void main(String[] args) {
med9();
}
private static void med9() {
// TODO Auto-generated method stub
TreeSet<String> t = new TreeSet(Collections.reverseOrder());
t.add("ssssd");
t.add("asssd");
t.add("csssd");
t.add("asasd");
t.add("abssd");
Iterator<String> it = t.iterator();
while(it.hasNext())
{
System.out.println(it.next());
}
}
标签:
原文地址:http://blog.csdn.net/zl18603543572/article/details/46385673