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的更多相关文章

  1. 浅谈集合框架三、Map常用方法及常用工具类

    最近刚学完集合框架,想把自己的一些学习笔记与想法整理一下,所以本篇博客或许会有一些内容写的不严谨或者不正确,还请大神指出.初学者对于本篇博客只建议作为参考,欢迎留言共同学习. 之前有介绍集合框架的体系 ...

  2. commons-lang3-3.2.jar中的常用工具类的使用

    这个包中的很多工具类可以简化我们的操作,在这里简单的研究其中的几个工具类的使用. 1.StringUtils工具类 可以判断是否是空串,是否为null,默认值设置等操作: /** * StringUt ...

  3. PHP常用工具类

    <?php namespace isslib\Util; use think\Config; /** * 常用工具类 * User: xaxiong * Date: 2016/12/19 * T ...

  4. javascript常用工具类整理(copy)

    JavaScript常用工具类 类型 日期 数组 字符串 数字 网络请求 节点 存储 其他 1.类型 isString (o) { //是否字符串 return Object.prototype.to ...

  5. 简单了解Spring中常用工具类_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 文件资源操作 Spring 定义了一个 org.springframework.core.io.Resource 接口, ...

  6. Java工具类—包装类

    Java工具类--包装类 我们都知道,JDK 其实给我们提供了很多很多 Java 开发者已经写好的现成的类,他们其实都可以理解成工具类,比如我们常见的集合类,日期相关的类,数学相关的类等等,有了这些工 ...

  7. Maven基础&&Spring框架阶段常用工具类整理

    常用工具类 1.密码加密工具类: package com.itheima.utils; import java.security.MessageDigest; import sun.misc.BASE ...

  8. js常用工具类.

    一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:[格式化时间] * 使用方法 * 示例: * ...

  9. IOS开发--常用工具类收集整理(Objective-C)(持续更新)

    前言:整理和收集了IOS项目开发常用的工具类,最后也给出了源码下载链接. 这些可复用的工具,一定会给你实际项目开发工作锦上添花,会给你带来大大的工作效率. 重复造轮子的事情,除却自我多练习编码之外,就 ...

  10. Apache Commons 常用工具类整理

    其实一直都在使用常用工具类,只是从没去整理过,今天空了把一些常用的整理一下吧 怎么使用的一看就明白,另外还有注释,最后的使用pom引入的jar包 public class ApacheCommonsT ...

随机推荐

  1. 使用Docker方式部署Gitlab,Gitlab-Runner并使用Gitlab提供的CI/CD功能自动化构建SpringBoot项目

    1.Docker安装Gitlab,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13814730.html 2.Docker安装Gitlab-runner,地址: ...

  2. harbor高可用部署

    文章转载自:https://blog.csdn.net/networken/article/details/119704025 harbor高可用简介 harbor目前有两种主流的高可用方案: 多ha ...

  3. Kubernetes 监控:CertManager 自动 HTTPS

    cert-manager 是一种自动执行证书管理的工具,它可以与 Istio Gateway 集成以管理 TLS 证书,当然也可以很方便地和前面我们配置的 ingress-nginx 或者 traef ...

  4. [基础]VS Code 基础操作 命令符

    一.五种运行方式 1.点击IIS Express运行 实际上它开的是一个IIS Express服务器,就是说有一个小的代理服务器帮咱们运行,运行后就会启动一个IIS Express小型服务器,启动之后 ...

  5. C#-02 传入参数的一些用法2

    C#_02 参数应用2 一.关于 "ref" 局部变量和 "ref" 返回 在前面已经明白了 ref 关键词传递一个对象引用给方法调用,这样在方法中对对象修改过 ...

  6. 一文读懂Apache Geode缓存中间件

    目录 一.对缓存中间件的诉求 1.1 我们为什么需要缓存中间件 1.2 缓存的分类 1.1.1 弱势缓存 1.1.2 强势缓存 二.什么是Apache Geode 2.1 Apache Geode的架 ...

  7. gin项目部署到服务器并后台启动

    前言 我们写好的gin项目想要部署在服务器上,我们应该怎么做呢,接下来我会详细的讲解一下部署教程. 1.首先我们要有一台虚拟机,虚拟机上安装好go框架. 2.将写好的项目上传到虚拟机上. 3.下载好项 ...

  8. qiankun+vue,为什么我的子应用的子路由老是跳404?这么解决

    主要解决子应用内部跳转路由时,跳到404页的问题 你能搜这个,我姑且认为你基本配置已经好了,而且主跳子的一级路由是正常的,请往下看 忘说了,我的主应用和子应用都是Vue 主应用跳子应用都正常,为什么子 ...

  9. vite vue3 规范化与Git Hooks

    在 <JS 模块化>系列开篇中,曾提到前端技术的发展不断融入很多后端思想,形成前端的"四个现代化":工程化.模块化.规范化.流程化.在该系列文章中已详细介绍了模块化的发 ...

  10. Silky微服务框架之服务引擎

    构建服务引擎 在注册Silky微服务应用一节中,我们了解到在ConfigureServices阶段,通过IServiceCollection的扩展方法AddSilkyServices<T> ...