黑马程序员——Java基础---Collections,Arrays工具类以及其他对象
来源:互联网 发布:携程大数据分析笔试题 编辑:程序博客网 时间:2024/06/13 08:08
——- android培训、java培训、期待与您交流! ———-
排序,最大值以及二分查找演示:
package Collections;import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;public class CollectionsDemo { public static void main(String[] args) { sortDemo(); maxDemo(); binarySerachDemo(); } public static void binarySerachDemo() { List<String> list=new ArrayList<String>(); list.add("ab"); list.add("zzz"); list.add("ffgs"); list.add("f"); list.add("jvf"); //二分查找元素必须有序 Collections.sort(list); int dex=Collections.binarySearch(list, "f"); System.out.println("通过二分查找:"+dex); } public static void maxDemo() { List<String> list=new ArrayList<String>(); list.add("ab"); list.add("zzz"); list.add("ffgs"); list.add("f"); list.add("jvf"); Collections.sort(list); String max=Collections.max(list); System.out.println("最大值是:"+max); } public static void sortDemo() { List<String> list=new ArrayList<String>(); list.add("ab"); list.add("zzz"); list.add("ffgs"); list.add("f"); list.add("jvf"); //排序前 System.out.println("排序前 :"+list); //用工具类自然顺序排序 //Collections.sort(list); Collections.sort(list,new myc()); //排序后 System.out.println("排序后 :"+list); }}class myc implements Comparator<String>{ public int compare(String o1, String o2) { if(o1.length()>o2.length()) return 1; if(o1.length()==o2.length()) { return o1.compareTo(o2); } return -1; }}
替换以及反转:
package Collections;import java.util.ArrayList;import java.util.Collections;import java.util.List;public class CollectionsDemo1 { public static void main(String[] args) { fillDemo(); replaceAllDemo(); } public static void replaceAllDemo() { List<String> list=new ArrayList<String>(); list.add("ab"); list.add("zzz"); list.add("ffgs"); list.add("f"); list.add("jvf"); Collections.replaceAll(list,"ab","bbbb"); System.out.println(list); //反转元素 Collections.reverse(list); System.out.println(list); } public static void fillDemo() { List<String> list=new ArrayList<String>(); list.add("ab"); list.add("zzz"); list.add("ffgs"); list.add("f"); list.add("jvf"); System.out.println(list); //替换元素 Collections.fill(list,"pp"); System.out.println(list); }}
反转:Collection.reverseOrder
package Collections;import java.util.Collections;import java.util.Iterator;import java.util.List;import java.util.TreeSet;public class CollectionsDemo3 { public static void main(String[] args) { orderDemo(); } public static void orderDemo() { //反转 TreeSet<String> ts=new TreeSet<String>(Collections.reverseOrder()); ts.add("ab"); ts.add("zzz"); ts.add("ffgs"); ts.add("f"); ts.add("jvf"); Iterator<String> it=ts.iterator(); while(it.hasNext()) { System.out.println(it.next()); } }}
Arrays类
常用方法示例:
package Collections;import java.util.Arrays;import java.util.List;public class ArrayDemo { public static void main(String[] args) { int[] arr={2,4,5}; //将数组变成字符串 System.out.println(Arrays.toString(arr)); String[] sr={"abc","dd","fk"}; //把数组变成集合 /* * 数组变成集合的好处:可以用集合的思想和方法来操作数组中的元素。 * 注意:将数组变成集合,不可以使用集合的增删方法,因为数组的长度是固定的。 * */ List<String> list=Arrays.asList(sr); System.out.println(list); }}
集合变数组
为什么要将集合变数组?
为了限定对元素的操作。
指定类型的数组到底要定义多长呢?
当指定类型的数组长度小于了集合的size,那么该方法内部会创建一个新的数组,长度为集合的size,当指定类型的数组长度大于集合的size,就不会新出用新创建的数组,而是使用传递进来的数组。所以要创建一个刚刚好的数组最优。
高级for循环
格式:for(数据类型 变量名:被遍历的集合(Collection)或者数组)
{
}
传统for和高级for有什么区别
高级for有一个局限性,必须有被遍历的目标。
jdk1.5新特性
可变参数:
其实就是数组参数的简写形式,不用每一次都手动的建立数组对象,只要将要操作的元素作为参数传递即可,隐式将这些参数封装成了数组。
静态导入:
当类名重名时,需要指定具体的包名,当方法重名时,指定具备所属的对象或者类。
System类
描述系统的一些信息
获取系统属性信息:Properties getProperties()
Runtime
该类并没有提供构造函数,说明不可以new对象,那么会直接想到该类中的方法都是静态的,发现该类中还有非静态方法,说明该类肯定会提供了方法获取本类对象,而且该方法时静态的,并返回值类型是本类类型。
该方式是 static Runtime getRuntime();
package OthersObject;import java.io.IOException;public class RuntimeDemo { public static void main(String[] args) throws IOException { Runtime r=Runtime.getRuntime(); //指定打开记事本程序 r.exec("notepad.exe"); }}
Date SimpleFormatDate Calendar
package OthersObject;import java.text.SimpleDateFormat;import java.util.Date;public class DateDemo { public static void main(String[] args) { Date d=new Date(); //将模式封装到simpleDateformat对象中 SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日"); //调用format方法让模式格式化指定Date对象。 String time=sdf.format(d); System.out.println(time); }}
用Canlendar获取年月日
package OthersObject;import java.util.Calendar;import java.util.Date;public class CallendarDemo { public static void main(String[] args) { Calendar c=Calendar.getInstance(); //获取年 System.out.println(c.get(Calendar.YEAR)+"年"); //获取月 System.out.println(c.get(Calendar.MONTH)+1+"月"); //获取日 System.out.println(c.get(Calendar.DAY_OF_MONTH)+"日"); }}
设置时间及增加:
package OthersObject;import java.util.Calendar;public class CalendarDemo1 { public static void main(String[] args) { Calendar c=Calendar.getInstance(); //设置时间 c.set(2033,2,23); getTime(c); //增加 c.add(Calendar.DAY_OF_MONTH,-1); getTime(c); } public static void getTime(Calendar c) { //获取年 System.out.println(c.get(Calendar.YEAR)+"年"); //获取月 System.out.println(c.get(Calendar.MONTH)+1+"月"); //获取日 System.out.println(c.get(Calendar.DAY_OF_MONTH)+"日"); }}
Math类
常用方法演示:
package OthersObject;public class MathDemo { public static void main(String[] args) { double d=Math.ceil(16.34);//返回大于指定数据的最小整数 double d1=Math.floor(12.44);//返回小于指定数据的最大整数 double d3=Math.round(12.45);//四舍五入 System.out.println(d); System.out.println(d1); System.out.println(d3); double d4=Math.pow(2, 2);//获取幂 System.out.println(d4); show(); } //获取0到10的随机数 public static void show() { for(int x=0; x<10; x++) { int d=(int)(Math.random()*10+1); System.out.print(d+" "); } }}
- 黑马程序员——Java基础---Collections,Arrays工具类以及其他对象
- 黑马程序员——Java基础--集合框架工具类:Collections、Arrays、其他对象
- 黑马程序员java学习笔记——Collections、Arrays工具类和其他对象
- 黑马程序员——集合、集合框架工具类(collections和Arrays)和其他对象
- 黑马程序员——Java之集合框架工具类Collections、Arrays以及Java新特性
- 黑马程序员——Collections、Arrays、其他对象
- 黑马程序员—Java工具类(Collections、Arrays)
- 黑马程序员——Java基础---泛型、集合框架工具类:collections和Arrays
- 黑马程序员——Java基础---泛型、集合框架工具类:collections和Arrays
- 黑马程序员——Java基础---泛型、集合框架工具类:collections和Arrays
- 黑马程序员——Java语言基础:集合框架(Collection、Map,工具类Collections、Arrays)
- 黑马程序员——Java基础---集合框架(二)及工具类Collections、Arrays
- 黑马程序员—java基础学习--Map集合、Collections,Arrays工具类
- 黑马程序员 java 基础 毕向东 面向对象 集合框架 工具类 Collections and Arrays
- 黑马程序员——Java基础---泛型、集合框架工具类:Collections和Arrays、JDK 1.5新特性
- 黑马程序员——Java基础——集合工具类Collecions、Arrays、其他对象System类、Runtime类、Date类、Calendar类、Math类等操作
- 黑马程序员——Java要点笔记——工具类Collections&Arrays
- 黑马程序员——java工具类之Collections和Arrays
- 正则表达式
- R语言ggplot2包之画折线图
- mysql + unidac 使用事务例子
- DBUtils – BeanProcessor扩展,支持自定义字段映射
- Exe4j破解_Exe4j注册码
- 黑马程序员——Java基础---Collections,Arrays工具类以及其他对象
- 十进制转二进制c代码
- Unity报错`NUnit' could not be found解决
- hdu 5281 Senior's Gun
- 多线程-GCD
- linux下安装sougou输入法
- 坦克游戏分级等级c代码
- 安卓系统架构
- Intel真没骗人 5200核显性能比肩独显