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中已经有数组这一装有元素的容器,为什么还要新建 ...
随机推荐
- Linux 日志管理基础
目录 基本介绍 日志的存放 存放目录与存放内容 举例说明 日志管理服务: rsyslogd 功能与配置 检查自启动 配置文件 /etc/rsyslog.conf 修改配置文件 基本介绍 日志文件是重要 ...
- DDCA —— 缓存一致性
1. 多处理器内存组织结构 1.1 SMP/集中式共享内存 集中式共享内存多处理器(Centralized shared-memory multiprocessor)或对称共享内存多处理器(Symme ...
- 解决IDEA中xxxMapper.xml文件表名,字段爆红问题
我们在编写xxxMapper.xml中sql代码的时候有时会出现表名不会提示,表名爆红等情况,这个一般是没有设置IDEA的sql解析范围,下面是我遇到问题时候的解决办法 1.打开IDEA设置 2.选择 ...
- 鸿蒙开发Hvigor插件动态生成代码
Hvigor允许开发者实现自己的插件,开发者可以定义自己的构建逻辑,并与他人共享.Hvigor主要提供了两种方式来实现插件:基于hvigorfile脚本开发插件.基于typescript项目开发.下面 ...
- rust 终端输出 debug 信息
配置方法 将 env_logger log 添加到 Cargo.toml : 打开 Cargo.toml 文件并在 [dependencies] 部分下添加 env_logger log . [pac ...
- golang配置读取值viper
viper简介 Viper是Go应用程序的完整配置解决方案,包括12-Factor应用程序.它旨在在应用程序中工作,并且可以处理所有类型的配置需求和格式.它支持: 设置默认值 从JSON.TOML.Y ...
- OS开发笔记(1)——硬盘引导的尝试
看前提醒:这一系列笔记完全是按照我的思考顺序写的,中间可能会绕弯路 定义 为了避免概念的混淆,我先在这里作一下(仅适用于本文的)名词的解释: 引导程序/boot程序:特指磁盘MBR或者VBR扇区中存放 ...
- offline RL · PbRL | LiRE:构造 A>B>C 的 RLT 列表,得到更多 preference 数据
论文标题:Listwise Reward Estimation for Offline Preference-based Reinforcement Learning,ICML 2024. arxiv ...
- uniapp 画布
1.前言 uniapp中的canvas与HTML中的canvas用法并不同,他的使用文档请参考微信小程序画布 2.基本使用 1.准备canvas容器,并为其设置canvas-id和宽高(为了兼容H5, ...
- 解决node报错ERR_OSSL_EVP_UNSUPPORTED
"scripts": {//修改启动dev方式 "dev": "SET NODE_OPTIONS=--openssl-legacy-provider ...