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 ...
随机推荐
- G&GH02 储存库创建/同步
注意事项与声明 平台: Windows 10 作者: JamesNULLiu 邮箱: jamesnulliu@outlook.com 博客: https://www.cnblogs.com/james ...
- Java SE 四大内部类
内部类 1.成员内部类 调用成员内部类 //在外面的类的最后,写一个方法,调用成员内部类(创建对象,在访问) class Outer08{ class Inner08{ //成员内部类 public ...
- 使用elasticdump迁移es数据
安装elasticdump github地址:https://github.com/elasticsearch-dump/elasticsearch-dump # yum -y install npm ...
- LINUX 新增的磁盘不建立分区,直接建立文件系统并挂载
假设新硬盘是 /dev/sdc fdisk操作的是/dev/sdc ,分区后才会有/dev/sdc1 /dev/sdc2 之类 一般mkfs.ext4 /dev/sdc1 来格式化一个分区,再moun ...
- Jenkins和Gitlab CI/CD自动更新k8s中pod使用的镜像说明
Jenkins 使用Jenkins的话,完成的工作主要有如下步骤: 1.从Gogs或Gitlab仓库上拉取代码 2.使用Maven编译代码,打包成jar文件 3.根据jar文件使用相对应的Docker ...
- P3402 可持久化并查集
P3402 通过主席树维护不同版本的并查集,注意要采用按秩合并的方式,路径压缩可能会爆. 1 #include <bits/stdc++.h> 2 using namespace std; ...
- Spring bean装配流程和三级缓存
马士兵 源码方法论 不要忽略源码中的注释 先梳理脉络,再深入细节 大胆猜测.小心求证 见名知意 hold on 对源码有兴趣的都是变态 为了钱! Spring IoC Spring容器帮助管理对象,不 ...
- 备份 MySQL 的 shell 脚本(mysqldump版本) shell脚本
#!/bin/bash # 备份 MySQL 的 shell 脚本(mysqldump版本) # 定义变量 user(数据库用户名),passwd(数据库密码),date(备份的时间标签) # dbn ...
- Java注解(3):一个真实Elasticsearch案例
学会了技术就要使用,否则很容易忘记,因为自然界压根就不存在什么代码.变量之类的玩意,这都是一些和生活常识格格不入的东西.只能多用多练,形成肌肉记忆才行. 在一次实际的产品开发中,由于业务需求的缘故,需 ...
- JavaScript基本语法(数组与JSON)
5.数组 #①使用new关键字创建数组 // 1.创建数组对象 var arr01 = new Array(); // 2.压入数据 arr01.push("apple"); ar ...