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 之集合的更多相关文章
- 已看1.熟练的使用Java语言进行面向对象程序设计,有良好的编程习惯,熟悉常用的Java API,包括集合框架、多线程(并发编程)、I/O(NIO)、Socket、JDBC、XML、反射等。[泛型]\
1.熟练的使用Java语言进行面向对象程序设计,有良好的编程习惯,熟悉常用的Java API,包括集合框架.多线程(并发编程).I/O(NIO).Socket.JDBC.XML.反射等.[泛型]\1* ...
- JAVA基础--JAVA API集合框架(ArrayList、HashSet、HashMap使用)14
一.集合Collection 1. 集合介绍 变量:表示的内存中的一个空间,只能保存确定类型的单个数据 数组:表示的是内存中的多个连续的空间,这些空间中可以存储多个同类型的数据. 后期继续学习面向对象 ...
- Elasticsearch的CRUD:REST与Java API
CRUD(Create, Retrieve, Update, Delete)是数据库系统的四种基本操作,分别表示创建.查询.更改.删除,俗称"增删改查".Elasticsearch ...
- Java 中的集合接口——List、Set、Map
Java 中的集合接口——List.Set.Map 什么叫集合:集合就是Java API所提供的一系列类的实例,可以用于动态存放多个对象.这跟我们学过的数组差不多,那为什么我们还要学集合,我们看看数组 ...
- (转)Java API设计清单
转自: 伯乐在线 Java API设计清单 英文原文 TheAmiableAPI 在设计Java API的时候总是有很多不同的规范和考量.与任何复杂的事物一样,这项工作往往就是在考验我们思考的缜密程度 ...
- Java API 快速速查宝典
Java API 快速速查宝典 作者:明日科技,陈丹丹,李银龙,王国辉 著 出版社:人民邮电出版社 出版时间:2012年5月 Java编程的最基本要素是方法.属性和事件,掌握这些要素,就掌握了解决实际 ...
- Spark基础与Java Api介绍
原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3832405.html 一.Spark简介 1.什么是Spark 发源于AMPLab实验室的分布式内存计 ...
- mybatis Java API
既然你已经知道如何配置 MyBatis 和创建映射文件,你就已经准备好来提升技能了. MyBatis 的 Java API 就是你收获你所做的努力的地方.正如你即将看到的,和 JDBC 相比, MyB ...
- Java数据库连接代码集合(转)
Java数据库连接接口(JDBC)是Java里定义的一套用于数据库连接和操作的API的集合.有不同的数据库厂商提供这套接口的实现类,对于 Java程序员来说,程序员不需要关心数据库的底层的实现,统一的 ...
- Java基础--说集合框架
版权所有,转载注明出处. 1,Java中,集合是什么?为什么会出现? 根据数学的定义,集合是一个元素或多个元素的构成,即集合一个装有元素的容器. Java中已经有数组这一装有元素的容器,为什么还要新建 ...
随机推荐
- Antlr4 语法解析生成器(上)
简介 Spark SQL.Presto --> Antlr4 SQL 解析器 Flink SQL --> Apache Calcite(通过JavaCC 实现) Spark SQL如何进行 ...
- 3.13 Linux建立软硬链接文件(ln命令)
如果要想说清楚 ln 命令,则必须先解释下 ext 文件系统(Linux 文件系统)是如何工作的.我们在前面讲解了分区的格式化就是写入文件系统,而我们的 Linux 目前使用的是 ext4 文件系统. ...
- 3.3 Linux绝对路径和相对路径详解
在 Linux 中,简单的理解一个文件的路径,指的就是该文件存放的位置,例如,在<Linux文件系统的层次结构>中提到的 /home/cat 就表示的是 cat 文件所存放的位置.只要我们 ...
- 在Keil中使用ST-LINK烧录STM32程序指南
前言 之前玩STM32都是用J-LINK烧录程序,不仅便捷,而且烧录的速度比用串口快好多. 最近我接了几个32单片机的毕设单子,便买了几块C8T6的最小系统板用来开发.最初我还是用J-LINK烧录C8 ...
- [python] Python异步编程库asyncio使用指北
Python的asyncio模块提供了基于协程(coroutines)的异步编程(asynchronous programming)模型.作为一种高效的编程范式,异步编程允许多个轻量级任务并发执行,且 ...
- 记录一个Linux代码移植到Windows平台下的Visual Studio 2022的代码编码格式的问题
一.前言 工作上与公司的前辈对接,他给了我一份在linux下面编写的代码压缩包,按照道理来说使用条件宏编译不同的windows和linux的API即可实现代码的通用.但是我在Visual Studio ...
- linux下的rpm与yum
一.源代码形式 1. 绝大多数开源软件都是直接以原码形式发布的 2. 源代码一般会被打成.tar.gz的归档压缩文件 3. 源代码需要编译成为二进制形式之后才能够运行使用 ...
- C#委托的前世今生
一.前言 大家好!我是付工. 十年前,刚开始学C#编程的时候,被委托困扰了很久. 今天跟大家分享一下关于委托的那些事儿. 二.委托原理 什么是委托? 抛开编程,委托是一个汉语词语,指的是把事情托付给别 ...
- .NET 6,7,8 本地化的 IntelliSense 文件
官方的汉化教程 目前仅提供了.NET5 的本地化 IntelliSense 文件 https://mp.weixin.qq.com/s?__biz=MzI3ODc3NzIxMw==&mid=2 ...
- vue组件传参props
传参格式,将需要传的参数以属性方式写在组件标签上 //组件标签 <zu a='参数一' b='参数b'></zu> 接收格式,在组件内 //props属性接收参数 props: ...