脚本宝典收集整理的这篇文章主要介绍了Java API 之集合,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
byte | short | int | long | float | double | char | boolean | void |
Byte | Short | Integer | Long | Float | Double | Character | Boolean | Void |
package cn.tedu.baozhuang; public class IntegerDemo1 { public static void main(String[] args) { int i = 7; //封箱 Integer in = new Integer(i); //自动封箱,都是 JDK1.5 的特性 //其实就是在底层默认调用 Interger 类身上的静态方法 valueOf,Double Boolean 这些也是这样的!! //Integer in2 = Integer.valueOf(i); Integer in2 = i; Integer in3 = new Integer(5); //自动拆箱,在底层调用对象身上的 IntegerValue() //in3.IntegerValue(); int i3 = in3; } }
package cn.tedu.baozhuang; public class IntegerDemo2 { public static void main(String[] args) { //Integer i1 = Integer.valueOf(); //如果这个值不在 -128~127 底层的 valueOf() 调用构造方法 new 一把,返回一个新对象!!! //如果在 -128~127,从 cache 数组中对应下标位置上取值。 Integer i1 = 50; Integer i2 = 50; System.out.println(i1 == i2); Integer in = 400; int i = 400; //包装类和基本类型比较时,会进行自动拆箱成基本类型 System.out.println(in == i); } }
package cn.tedu.math; import java.util.Random; public class MathDemo1 { public static void main(String[] args) { System.out.println(Math.abs(-5.86)); //求立方根 System.out.println(Math.cbrt(8)); //向上取整,返回一个double 类型的数据 System.out.println(Math.ceil(4.06)); //向下取整,都是返回double 类型的 System.out.println(Math.floor(4.06)); //四舍五入,返回一个 long 类型的 System.out.println(Math.round(3.68)); //返回一个[0,1)的一个随机小数 System.out.println(Math.random()); //获取 30-90 一个随机整数 System.out.println((int)(Math.random()*61+30)); //获取 0-30的数,只能是整数 Random r = new Random(); System.out.println(r.nextInt(30)); //抽奖系统,实际上要考虑权重问题(就是让那种经常到这里消费的人的概率高一些) if(Math.random() * Math.random() > 0.95){ System.out.println("亲,恭喜你中奖啦!"); } } }
package cn.tedu.time; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; public class DateDemo { public static void main(String[] args) throws Exception { //获取当前时间 System.out.println(new Date().toString()); //获取指定时间 //这个方法在 1990-01的基础上进行累加 @SuppressWarnings("deprecation") //压制警告 //这个方法已过时 Date date = new Date(2000,2,9); System.out.println(date); //将字符串转化为日期 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date1 = sdf.parse("2000-12-15 18:58:45"); System.out.println(date1); //将日期转化为字符串 //XX年XX月XX日 SimpleDateFormat sdf2 = new SimpleDateFormat("yy年MM月dd日 HH时mm分ss秒"); String str = sdf2.format(date1); //格里高利历(GregorianCalendar),毫秒值(time=1534494939307),偏移量---表示当前时期到零时区的毫秒值(offset=28800000) //WEEK_OF_MONTH=3(不完全周) DAY_OF_WEEK_IN_MONTH=3 // Calendar } }
package cn.tedu.time; import java.time.LocalDate; import java.time.temporal.ChronoUnit; public class LocalDateDemo { public static void main(String[] args) { //LocalDate 是一个只包含日期,不包含时间 LocalDate date = LocalDate.now(); System.out.println(date); // LocalDate date1 = LocalDate.of(2014, 7, 8); //向后加几个 System.out.println(date.plus(7,ChronoUnit.WEEKS));//表示周 System.out.println(date.minus(8,ChronoUnit.MONTHS)); System.out.println(date1.getDayOfMonth()); //在某一个日期的后面吗 System.out.println(date1.isAfter(LocalDate.now())); //判断闰年 System.out.println(date1.isLeapYear()); } }
方法的重载和重写都是行为多态。方法重载是指在同一个类中,方法名一致而参数列表不同的方法,和修饰符、返回值类型以及异常没有关系。重载本身是一种编译时多态。方法的重写指在父子类中存在方法签名一致的非静态方法。子类在重写父类方法的时候,子类权限修饰符的范围要大于等于父类的权限修饰符的范围。如果父类中的方法的返回值类型的基本类型
package cn.tedu.collection; import java.util.ArrayList; import java.util.List; public class ListDemo { public static void main(String[] args) { List<String> list = new ArrayList<String>(); //保证元素的存入顺序 list.add("xiaofang"); list.add("daqiang"); list.add("weichang"); list.add("dadaxu"); //截取子列表 //获取指定元素在列表中第一次出现的位置 //遍历这个列表,是size for(int i = 0; i < list.size(); i++) System.out.println(list.get(i)); //向列表的指定的下标插入指定的元素,原位置就移到下一个位置上了, //放在元素末尾,就是追加了,可以的,但是不能向末尾后面增加,不然就数组下标越界异常!!(移除超过了也会报这个异常) list.add(2,"插入了"); System.out.println(list); //替换指定位置上的元素,移除这个再插入一位,也有自己的set list.set(2,"替换了"); System.out.println(list); //比较两个列表的时候是逐位比较是否一致,元素中是new String("xiaoqiang")也是正确的!! } }
以上是脚本宝典为你收集整理的Java API 之集合全部内容,希望文章能够帮你解决Java API 之集合所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。