Java常用的class

Java类库 (可参见官方的API文档)
有中文的和英文的API文档

包名以java开头的包为核心包(Core Package),以javax开头的为拓展包(Extension Package)

java.applet applet所需要的所有的类
java.awt 创建用户界面和图像的类
java.beans 开发Java Bean的所有的类
java.io 通过提供数据流,对象序列以及文件系统实现的系统输入和输出
java.lang Java编程语言的基本库
java.math

java.net 实现网络通信
java.nio 实现nio应用
java.rmi 远程方法调用相关的类
java.security 网络设计安全
java.sql 访问和处理来自于Java标准数据源的数据库的类
java.text 自然语言处理
java.time 日期,时间
java.util 集和类,时间处理模式,日期时间工具等

要学会查看API文档来处理

数字相关的类
Short,Int,Long,Float,Double,BigInteger,BigDecimal,Random,Math(工具类)

//float a=0.12; error
float a=0.12f;
double b=0.130;
System.out.println("(1)生成随机数:"+Math.random());//[0,1]
System.out.println("(2)"+new Random().nextInt());//random
System.out.println("(3)"+new Random().nextInt(5));//[0,5)
System.out.println("(4)"+new Random().nextDouble());
IntStream ints = new Random().ints();
System.out.println(ints);

(1)生成随机数:0.5745617632414949
(2)-833986099
(3)4
(4)0.3966811464700253
java.util.stream.IntPipeline$Head@7229724f

System.out.println("(1)"+Math.abs(5));
System.out.println("(2)"+Math.log(5));
System.out.println("(3)"+Math.round(5.5));//四舍五入
System.out.println("(4)"+Math.floor(0.1));//向下去整
System.out.println("(4)"+Math.ceil(0.1));//向下去整

(1)5
(2)1.6094379124341003
(3)6
(4)0.0
(4)1.0

BigInteger bigInteger = new BigInteger("515164804049");
BigInteger bigInteger1 = new BigInteger("4564949");
System.out.println(bigInteger.divideAndRemainder(bigInteger1)[0]);//商
System.out.println(bigInteger.divideAndRemainder(bigInteger1)[1]);//余数

112852
1179501

String类

String a=new String("hello");//加减性能较差,不可变对象
System.out.println("(1)"+a.charAt(0));
System.out.println("(2)"+a.concat("world"));
System.out.println("(3)"+a.contains("hel"));
System.out.println("(4)"+a.endsWith("lloo"));
System.out.println("(5)"+a.equalsIgnoreCase("hEllo"));//忽略大小写的比较
System.out.println("(6)"+a.hashCode());
//int indexOf(String str, int fromIndex): 返回从 fromIndex 位置开始查找指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
System.out.println("(7)"+a.indexOf("llo"));//2
System.out.println("(8)"+a.split("ll")[0]+" "+a.split("ll")[1]);//he o
System.out.println("(9)"+a.startsWith("h"));//true
System.out.println("(10)"+a.substring(2,4));//ll
System.out.println("(11)"+" 9959595".trim());//去掉字符串首尾的空格
System.out.println("(12)"+a.valueOf('z'));

(1)h
(2)helloworld
(3)true
(4)false
(5)true
(6)99162322
(7)2
(8)he o
(9)true
(10)ll
(11)9959595
(12)z

StringBuffer(字符加减,同步性能好)
StringBuilder(不同布,性能更好)
append/insert/delete/replace/substring等方法

时间相关的类

java.util.Data 基本上作废(Deprecated)了,返回自1970.1.1以来的毫秒(geTime())

Date date = new Date();
System.out.println("(13)"+date.getTime());//毫秒计时

System.out.println("(13)"+date);//Sat Jun 27 23:41:57 CST 2020
java.sql.Date 与数据库对应的

//Calendar是最好用的,但是他是abstract的
Calendar gc=Calendar.getInstance();
Calendar calendar = new GregorianCalendar();

Java8 推出了 java.time

//java.time
System.out.println(LocalDate.now()); //2020-06-27
System.out.println(LocalTime.now());//23:44:36.119897
System.out.println(LocalDateTime.now());//2020-06-27T23:44:58.367334



//java.time时间戳
Instant time1=Instant.now();
Instant time2 = Instant.ofEpochMilli(time1.toEpochMilli());
Date dat=Date.from(time2);
System.out.println("current date="+date);//current date=Sat Jun 27 23:49:12 CST 2020

格式化类

1.NumberFormat:(工厂模式)
ex1234567->1,234,567

2.MessageFormat :
Hello{1}->Hello World

3.DateFormat:日期输出格式

设计模式之工厂模式(factory pattern)

工厂顾名思义就是创建产品,根据产品是具体产品还是具体工厂可分为简单工厂模式和工厂方法模式,根据工厂的抽象程度可分为工厂方法模式和抽象工厂模式。该模式用于封装和管理对象的创建,是一种创建型模式。本文从一个具体的例子逐步深入分析,来体会三种工厂模式的应用场景和利弊。

你可能感兴趣的:(Java,&,Spring,Framework)