java常用API的总结(1)
本篇是对于这一段时间以来接触到的常用api的一些总结,便于以后的查阅。。。。
一.正则表达式
对于正则表达式,我的感觉就是当我们在做某些题的时候正则表达式会省去我们很多的时间,并且正则表达式的使用格式也十为简洁且有规律。
正则表达式也是属于lang包的,是我们可以直接调用的.
下面是对其一些常用方法的描述:
1.matches(String regex);该方法返回值为boolean类型.用于判断一个字符串格式的正确与否具体使用如下:
public class Demo1 {
public static void main(String[] args) {
System.out.println(function());
System.out.println(function1());
}
public static boolean function() {
String QQ="123456";
boolean b=QQ.matches("[1-9][\\d]{4,9}");
return b;
}
public static boolean function1() {
String tellNumber="1333235234";
boolean b=tellNumber.matches("1[34578][\\d]{9}");
return b;
}
}
返回值:true false
2.spilt(Char input);该方法用于字符串的切割,即把我们作为分隔符的符号去掉(感觉表述有些问题,还是看代码吧)
public class Demo2 {
public static void main(String[] args) {
function(); -----------------------输出12234455cc
function1(); -----------------------输出122345564445344
function2(); -----------------------输出19216811
}
public static void function() {
String s="12-23-44-55-cc";
String[] st=s.split("-");
for (int i = 0; i < st.length; i++) {
System.out.print(st[i]+" ");
}
}
public static void function1()
{
String s="12 23 45 56 44 45344";
String[] st=s.split(" ");
System.out.println("---------------------------");
for (int i = 0; i < st.length; i++) {
System.out.print(st[i]+" ");
}
System.out.println(st[st.length-1].toCharArray().length);
}
public static void function2() {
String s="192.168.1.1";
String[] st=s.split("[^0-9]");
System.out.println("---------------------------");
for (int i = 0; i < st.length; i++) {
System.out.print(st[i]+" ");
}
}
}
这个方法在我看来是正则表达式中最好使的方法了,前两天做了一道题让计算一个仅包含字母与空格的字符串的最后一个单词的长度,我当时要是能想起来用这玩意该多好
直接一切割然后输出最后一个字符串长度便好了......
3.replaceAll(String regex,String s)主要是用来替换一些我们所不需要的元素(代码说话吧)
public class Demo3 {
public static void main(String[] args) {
function();
}
public static void function() {
String s="Hello12345World2345";
String t=s.replaceAll("[\\d]+", "#");
System.out.println(t);
}
}
结果:Hello#World#
我仅仅总结了正则表达式中的三种方法,但并不代表就没有其他方法了,只是对于我来说需要掌握的便是这三个了,其他的大可以通过查询api的方式去了解.
二.关于时间的API的简单总结
为什么说是简单总结嘞?
在我看来这部分真的涉及了太多的接口呀,子类呀。。。(反正就是很复杂)而且这个类只有我们在某些特殊环境下才会使用(比如给软件中加入时间功能),所以我就简单总结总结吧,以后若是真的需要用到了,大不了就去查查API呗。
绝对不是懒!!!
1.currentTimeMills()方法返回值为long型数据,具体返回的是我们当前时间距公元1970年1月1日,午夜0:00:00的毫秒值()。
public class DateDemo1 {
public static void main(String[] args) {
long time=System.currentTimeMillis();
System.out.println(time);
}
}
2.Date类的相关方法以及使用
Date是存在于util包中的,我们通过查看API就会发现很多方法都过时了,很多功能都被Calendar类给代替了,但是它仍然是我们在做一个系统中不可或缺的一部分(个人愚见,哈哈)
1.Date date=new Date()中的对象date值代表什么,是一个地址吗?还是其他的什么?(用代码来说话把。)
import java.util.Date; public class DateDemo1 {
public static void main(String[] args) {
function();
}
public static void function() {
Date date=new Date();
System.out.println(date);
}
}
结果:Mon Mar 18 20:51:11 CST 2019
很显然Date类重写了toString方法,输出的是当前时间.不过时间格式是以格林威治时间表的格式输出的,也就是月是0-11月,小时是0-23小时
2.Date类的get,set方法
Date类的getTime方法作用是与我们上面说的currentTimeMiles方法一样,返回值都是long型的毫秒数
Date类的setTime方法作用是将毫秒数转换为Date类对象即转换为当前时间。代码如下。
import java.util.Date; public class Demo2 {
public static void main(String[] args) {
function();
function1();
function2();
}
public static void function() {
Date date=new Date();
System.out.println(date);
}
public static void function1() {
Date date=new Date();
long time=date.getTime();
System.out.println(time);
}
public static void function2() {
Date date=new Date();
date.setTime(1552825481623l);
System.out.println(date);
}
}
结果:
Mon Mar 18 20:55:03 CST 2019
1552913703624
Sun Mar 17 20:24:41 CST 2019
3.SimpleDateFormat类的使用
从我们上文的时间输出格式来看的话,很明显是很不人性化的,不是那么的简洁易懂,所以SimpleDateFormat就从天而降啦(哈哈),没错这个类中方法的作用就是帮助我们将时间格式化,做成我们能够认识的格式(用代码来说明吧):
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo6 {
public static void main(String[] args) {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
String s=sdf.format(new Date());
System.out.println(new Date());
System.out.println(s);
}
}
结果:
Mon Mar 18 21:05:49 CST 2019
2019年03月18日 21时05分49秒
其方法parse的作用
有时当我们键入时间是机器是无法直接识别的,我们必须将其转化为初始格式的时间
import java.text.SimpleDateFormat;/*
* 格式化用户输入的时间
* 字符串转化为日期对象
*/
public class Demo4 {
public static void main(String[] args) throws Exception{
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date date1=sdf.parse("1999-04-25");
System.out.println(date1);
}
}
结果:Sun Apr 25 00:00:00 CST 1999
4.Calendar类的介绍及使用
此处会详细介绍,从其对象的创建以及方法的调用等等都会介绍
首先Calendar是一个抽象类,他自身是无法实例化对象的(我想这里应该都知道,就不在多说了),但是我们又必须要借助对象调用他的方法,那么我们只能实例化其子类的对象了,并且在Calendar类中,大部分类似于年 月 日等都是以static修饰符修饰的,所以我们是可以类名.直接调用的(接下来通过代码来进行具体的分析吧)
import java.util.Calendar; public class Demo5 {
public static void main(String[] args) {
Calendar c=Calendar.getInstance();
System.out.println(c);
}
}
结果:一堆数据,全是关于时间的,有兴趣的可以自己试试输出的是啥,太长了就不粘贴了
为啥要调用getInstance方法嘞?
当我们查看API后得到的信息是 使用默认时区和语言环境获得一个日历(是不是看不懂,哈哈)
其实当我们查看源码后,最后返回了一个子类对象我想这才是最重要的。
好,我们再说说Calendar类的get,set方法吧 这次先给代码再进行分析
import java.util.Calendar; public class Demo5 {
public static void main(String[] args) {
Calendar c=Calendar.getInstance();
c.set(2088, 10,5); //可以看出set方法是为了重置时间
int year=c.get(Calendar.YEAR); //可以看到get方法是为了取出此时的静态的年月日等数据
int month=c.get(Calendar.MONTH);
int day=c.get(Calendar.DAY_OF_MONTH);
System.out.println(year+"年"+month+"月"+day+"日");
System.out.println(c);
}
}
结果:2088年10月5日
仔细想想,其实跟我们平时的get,set方法没啥两样嘛。。
三.结束
本来是准备在一篇之中就将这些全部总结完的,但是为了以后查阅方便就分两篇总结吧,我这个人在学习的时候,喜欢思考,但是对于某一部分知识总是会自以为然的想“啊,对,他应该就是这样”,所以请指出错误。。。 另外加油,最近在学习之时有些浮躁了,希望尽快调整吧。
java常用API的总结(1)的更多相关文章
- Java 常用API(二)
目录 Java 常用API(二) 1. Object类 2. Date类 概述 构造方法和成员方法 3. DateFormat类 概述 SimpleDateFormat类 练习 4. Calendar ...
- Java 常用API(一)
目录 Java 常用API(一) 1. Scanner类 引用类型的一般使用步骤 Scanner的使用步骤 例题 2. 匿名对象 概述 匿名对象作为方法的参数 匿名对象作为方法的返回值 3. Rand ...
- Java常用API(Math类)
Java常用API(Math类) Math类的作用 java.lang.Math 类包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数.类似这样的工具 类,其所有方法均为静态方法,并且 ...
- Java常用API(Arrays类)
Java常用API(Arrays类) 什么是Arrays类? java.util.Arrays 此类包含用来操作数组的各种方法,比如排序和搜索等.其所有方法均为静态方法,调用起来 非常简单. 这里我们 ...
- Java常用API(String类)
Java常用API(String类) 概述: java.lang.String 类代表字符串.Java程序中所有的字符串文字(例如 "abc" )都可以被看作是实现此类的实例 1. ...
- Java常用API(ArrayList类)
Java常用API(ArrayList类) 我们为什么要使用ArrayList类? 为了更加方便的储存对象,因为使用普通的数组来存储对象太过麻烦了,因为数组的一个很大的弱点就是长度从一开始就固定了,所 ...
- Java常用API(Random类)
Java常用API(Random类) Random:是一个用于生成随机数的类 构造方法 public Random() :创建一个新的随机数生成器. 返回随机数的方法 public int nextI ...
- Java常用API(Scanner类)
Java常用API( Scanner类)1 1.Scanner类 首先给大家介绍一下什么是JavaAPI API(Application Programming Interface),应用程序编程接口 ...
- java基础3.0:Java常用API
本篇介绍Java基础中常用API使用,当然只是简单介绍,围绕重要知识点引入,巩固开发知识,深入了解每个API的使用,查看JavaAPI文档是必不可少的. 一.java.lang包下的API Java常 ...
随机推荐
- 如何查看selenium的版本号
方法一: 打开cmd,输入python >>> import selenium >>> help(selenium) Help on package seleniu ...
- Netty与网络编程
Netty什么? Netty项目是一个提供异步事件驱动网络应用框架和快速开发可维护的高性能高扩展性服务端和客户端协议工具集的成果.换句话说,Netty是一个NIO客户端服务端框架,它使得快速而简单的开 ...
- SSE图像算法优化系列十八:三次卷积插值的进一步SSE优化。
本文是在学习https://blog.csdn.net/housisong/article/details/1452249一文的基础上对算法的理解和重新整理,再次非常感谢原文作者的深入分析以及分享. ...
- 关于Kafka日志留存策略的讨论
关于Kafka日志留存(log retention)策略的介绍,网上已有很多文章.不过目前其策略已然发生了一些变化,故本文针对较新版本的Kafka做一次统一的讨论.如果没有显式说明,本文一律以Kafk ...
- 【莫比乌斯反演】BZOJ2820 YY的GCD
Description 求有多少对(x,y)的gcd为素数,x<=n,y<=m.n,m<=1e7,T<=1e4. Solution 因为题目要求gcd为素数的,那么我们就只考虑 ...
- Mock接口平台Moco学习
Mock就是模拟接口的.本文学习Mock的 Moco开源框架. Moco源码和jar下载地址: git jar 下载moco-runner-xxxx-standalone.jar moco的启动及 ...
- ASP.NET Core2.1 你不得不了解的GDPR(Cookie处理)
前言 时间一晃 ASP.NET Core已经迭代到2.1版本了. 迫不及待的的下载了最新的版本,然后生成了一个模版项目来试试水. ...然后就碰到问题了... 我发现..cookie竟然存不进去了.. ...
- Typora + Mathpix Snip,相见恨晚的神器
word 文档虽然很好,但当我需要输入一大堆公式的时候,word 公式让我疯狂. Why markdown?首先,GitHub 上都在用,那我也得会吧,不然 README.md 怎么写:其次,mark ...
- 【推荐】 HyperLedger Fabric环境搭建、测试及注意事项 [详尽指导] [亲测有效]
系统:Ubuntu16.04 LTS 一.环境准备 1.1 Ubuntu下安装 crul sudo apt install curl curl是利用URL语法在命令行方式下工作的开源文件传输工具.它被 ...
- React 虚拟 DOM 的差异检测机制
React 使用虚拟 DOM 将计算好之后的更新发送到真实的 DOM 树上,减少了频繁操作真实 DOM 的时间消耗,但将成本转移到了 JavaScript 中,因为要计算新旧 DOM 树的差异嘛.所以 ...