day09 常用工具类&包装类&集合——List、Set
day09
常用工具类
java.lang.Math数值运算
基本数值运算,如初等函数、对数、平方根和三角函数
//最大最小值
Math.max(12, 21);
Math.min(2, 3);
//绝对值
double d = Math.abs(-3.1415);
//圆周率
System.out.println(Math.PI);
//返回a的b次方pow(a,b)
double d1 = Math.pow(2, 10);
System.out.println(d1);
java.util.Date日期
Date date = new Date();
System.out.println(date);
//日期格式化
SimpleDateFormat sFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
String string = sFormat.format(date);
System.out.println(string);
java.util.LocalTime;
LocalDateTime ldt = LocalDateTime.now();
System.out.println(ldt);
System.out.println(ldt.getYear());//获取年份
System.out.println(ldt.getMonth());//月名字
System.out.println(ldt.getMonthValue());//几月
//自定义一个日期
LocalDate lDate = LocalDate.of(2014, Month.MAY, 12);
java.util.Arrays
//比较数组中的元素,按顺序比较
boolean tar = Arrays.equals(a, b);
//如果a{1,2,3}b{1,2,3}返回true,如果a{3,2,1}b{1,2,3}返回false
//打印数组
System.out.println(Arrays.toString(arr));
数组扩容
int[] a = {1,2,3,4};
//数组扩容copyOf(原数组, 新数组的长度)
int[] b = Arrays.copyOf(a, 6);
System.out.println(Arrays.toString(b));
//b = {1,2,3,4,0,0}
包装类
byte——Byte
short ——Short
int ——Integer
long——Long
float——Float
double——Double
char——Character
boolean——Boolean
装箱、拆箱
方法:
valueOf()将其他类型转换成整数类型
原理:Integer中缓存着[-128,127]数组,如果传入的参数在这个范围之内,valueOf()会直接返回缓存中的数,否则,如果传入的参数超过这个范围,先创建一个Integer对象再返回值
String str = "123";
Integer b3 = Integer.valueOf(str);
syso(b3+2)
compare(a,b)比较两数大小
int res = Integer.compare(a,b);
//a=b 0
//a>b 1
//a<b -1/
数字转字符串toString(num)
String s = Integer.toString(2);
System.out.println(string);
集合
ctrl shift o 清除不用jar包


java.util.Collection
Collection只能存储引用类型
List< E >
List集合的特点:
集合中的元素是有序的,允许重复的
ArrayList
ArrayList是实现了基于动态数组的数据结构,再未声明长度的情况下,默认长度是10,数据填满后会自动扩充原长度的50%
list中的元素是有序并且可以重复的
//创建一个list集合
List<String> list = new ArrayList<>();
//添加元素
list.add("111");
//添加元素到指定位置
list.add(1,"222");
list.add("111");
list.add("444");
//获取元素的值
String v = list.get(1);
//集合长度,集合中存储元素的个数
list.size();
//遍历
//直接打印
System.out.println(list);
//普通for循环遍历
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
//foreach遍历
for (String string : list) {
System.out.println(string);
}
LinkedList基于链表的
对于从头部和中间插入,链表插入快于数组
对于尾部插入,数组插入快于链表
ArrayList和LinkedList的区别
1.ArrayList是实现了基于动态数组的数据结构,在未声明长度的情况下,默认长度是10
数据填满之后会自动扩充原来的50%:10满了之后扩充到15
2.LinkedList是基于双向链表的数据结构
3.ArrayList在尾端插入和访问数据时的效率高于LinkedList,因为LinkedList添加删除数据需要移动指针
4.LinkedList对于中间插入或者头部插入时效率高于ArrayList,因为LinkedList添加删除数据不需要移动数据

Set
集合特点:集合中的元素是无序的,不可重复的
方法
添加元素
Set<Integer> set = new HashSet<>();
set.add(1);
set.add(2);
set.add(3);
长度
set.size();
移除指定元素
set.remove(2);
获取元素foreach
for(Integer int1 : set){
System.out.println(int1);
}
清空集合
set.clear();
Set集合与List集合的区别
Set集合元素是无序而且不可重复的,List集合是有序并且可以重复的
day09 常用工具类&包装类&集合——List、Set的更多相关文章
- 浅谈集合框架三、Map常用方法及常用工具类
最近刚学完集合框架,想把自己的一些学习笔记与想法整理一下,所以本篇博客或许会有一些内容写的不严谨或者不正确,还请大神指出.初学者对于本篇博客只建议作为参考,欢迎留言共同学习. 之前有介绍集合框架的体系 ...
- commons-lang3-3.2.jar中的常用工具类的使用
这个包中的很多工具类可以简化我们的操作,在这里简单的研究其中的几个工具类的使用. 1.StringUtils工具类 可以判断是否是空串,是否为null,默认值设置等操作: /** * StringUt ...
- PHP常用工具类
<?php namespace isslib\Util; use think\Config; /** * 常用工具类 * User: xaxiong * Date: 2016/12/19 * T ...
- javascript常用工具类整理(copy)
JavaScript常用工具类 类型 日期 数组 字符串 数字 网络请求 节点 存储 其他 1.类型 isString (o) { //是否字符串 return Object.prototype.to ...
- 简单了解Spring中常用工具类_java - JAVA
文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 文件资源操作 Spring 定义了一个 org.springframework.core.io.Resource 接口, ...
- Java工具类—包装类
Java工具类--包装类 我们都知道,JDK 其实给我们提供了很多很多 Java 开发者已经写好的现成的类,他们其实都可以理解成工具类,比如我们常见的集合类,日期相关的类,数学相关的类等等,有了这些工 ...
- Maven基础&&Spring框架阶段常用工具类整理
常用工具类 1.密码加密工具类: package com.itheima.utils; import java.security.MessageDigest; import sun.misc.BASE ...
- js常用工具类.
一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * ...
- IOS开发--常用工具类收集整理(Objective-C)(持续更新)
前言:整理和收集了IOS项目开发常用的工具类,最后也给出了源码下载链接. 这些可复用的工具,一定会给你实际项目开发工作锦上添花,会给你带来大大的工作效率. 重复造轮子的事情,除却自我多练习编码之外,就 ...
- Apache Commons 常用工具类整理
其实一直都在使用常用工具类,只是从没去整理过,今天空了把一些常用的整理一下吧 怎么使用的一看就明白,另外还有注释,最后的使用pom引入的jar包 public class ApacheCommonsT ...
随机推荐
- Prometheus 监控 Kubernetes Job 资源误报的坑
转载自:https://www.qikqiak.com/post/prometheus-monitor-k8s-job-trap/ 昨天在 Prometheus 课程辅导群里面有同学提到一个问题,是关 ...
- Elasitcsearch7.X集群/索引备份与恢复实战
文章转载自:https://mp.weixin.qq.com/s/_0RlojDsE30CeDSyLNP44w 1.问题引出 ES中文社区中,有如下问题: 问题1:存储数据,data目录从一个机器直接 ...
- U盘插入电脑后图标是灰色的,打开提示“请将磁盘插入驱动器”
问题描述: U盘插到win10电脑上后,U盘图标显示灰色,双击打开提示:请将磁盘插入驱动器,无法格式化,在U盘点右键/属性,显示为容量等为0. 解决办法如下: 1.首先要下载一个U盘芯片检测工具chi ...
- 一文搞定 Spring事务
Spring 事务 上文 使用SpringJDBC 1.JDBC事务控制 不管你现在使用的是那一种ORM开发框架,只要你的核心是JDBC,那么所有的事务处理都是围绕着JDBC开展的,而JDBC之中 ...
- WMS 相比于 ERP 系统有哪些优势?
WMS与ERP系统是两个不同的系统,不存储优势的比较!WMS是仓库管理系统(Warehouse Management System) 的缩写,ERP是Enterprise Resource Plann ...
- C#-12 转换
一 什么是转换 转换是接受一个类型的值并使用它作为另一个类型的等价值的过程. 下列代码演示了将1个short类型的值强制转换成byte类型的值. short var1 = 5; byte var2 = ...
- MergeOption.NoTracking的使用
前两天项目维护出现一个bug,报错信息是提交出错:AcceptChanges 无法继续,因为该对象的键值与 ObjectStateManager 中的另一个对象冲突.请在调用 AcceptChange ...
- 研一入坑Go 文件操作
1 package main 2 3 import ( 4 "fmt" 5 "os" 6 "path" 7 "path/filep ...
- 安装notepad++ 安装Python Python环境变量的数值。怎样在notepad++上运行Python的代码
文章目录 1.下载安装一个Python的编辑器notepad++,(我这里有现成的,也可以去网上搜很多) 2.安装python,(我这里有现成的,也可以去网上下载). 3.怎样彻底删除Python,有 ...
- 齐博x1换服务器如何转移网站?
如果你要把网站从本机传到服务器,又或者要更换服务器,请按下面的操作处理 第一步,必须要在原网站后台备份数据. 第二步,把备份好的网站所有文件,传到新服务器或空间 特别要注意 \cache\ 目录下建议 ...