1.JAVA API:应用程序接口1.java.lang:java.lang包主要提供使用java编程语言进行程序设计的基础类 和接口 ,在项目中使用的时候不需要import。比如:Object、String、System、包装类、Math、枚举、异常等;2.java.util:系统辅助类,包括:Collection,List,Map,Scanner,时间日期类,Random类等3.java.io:与输入输出有关的类4.java.net:与网络有关的类5.java.sql:与数据库有关的类
2.枚举含义:“不胜枚举”,逐个列举。比如生活中的周一到周日;语法:访问修饰符 enum enumName{常量1,常量2…}
3.包装类1.包装类是指将基本数据类型包装到一个类中,共有8个:Boolean/Character/Byte/Short/Integer/Long/Float/Double;2.基本数据类型-->包装类(1)使用包装类的构造方法:Integer i=new Integer(123)/("123");(2)使用包装类的valueOf方法:Integer i=Integer.valueOf("123");(3)直接存储Integer i=10;3.包装类-->基本数据类型(1)typeValue()系列方法Integer i=new Integer(123);int m=i.intValue();(2)直接保存int m=i;
4-1.String类1.length():返回字符串长度;2.字符串1.equals(字符串2):判断两个字符串的值是否相等;3.字符串1.equalsIgnoreCase(字符串2) :忽略大小写,并判断值是否相等4.字符串1 == 字符串2 :判断两个字符串的在内存中的地址是否相同,即是否是同一个对象);例:String s1="hello";String s2="hello";System.out.println(s1==s2);//true,即s1和s2就是同一个对象String s3=new String("Hello");String s4=new String("Hello");System.out.println(s3 == s4); //false,不是同一个5.toLowerCase():将字符串转换成小写6.toUpperCase():将字符串转换成大写7.字符串1.concat(字符串2) 或者用: “ +” : 拼接字符串;8.split("依据的符号") :拆分字符串;9. replace(char new,char old):替换,返回一个新字符串10.charAt(index):返回字符串中指定位置(index)的字符11. getBytes():将字符串转成字节数组;12.String(char[] chs,int offset,int count):将字符数组中的一部分转成字符串。13.String(byte[] chs,int offset,int count):将字节数组中的一部分转成字符串。【说明:offset:起始的位置; count:个数】15.搜索字符串:
16.提取字符串:
17、String format格式化https://blog.csdn.net/qq_40220804/article/details/8119012218、将double数值保留指定位的小数:方法1( 会四舍五入 ):public static void main(String[] args) {double d1=10.2234;double d2=10.3356;//说明: %. 表示小数点前任意位数 2表示两位小数 f表示浮点型Double d11 = Double.valueOf(String.format("%.2f", d1 ));Double d22 = Double.valueOf(String.format("%.2f", d2 ));System.out.println(d11 ); //10.22System.out.println(d22 ); //10.34}方法2( 会四舍五入 ):import java.text.DecimalFormat;public static void main(String[] args) {double d=3.1415926;//#.00 表示两位小数 #.0000四位小数 以此类推...DecimalFormat df=new DecimalFormat("#.000");System.out.println(df.format(d)); //3.142}
4-1.StringBuffer类
toString():将StringBuffer对象转为String对象;append(参数):将(任何类型的)参数追加到字符串之后;insert(index,参数) :将(任何类型的)参数插入到字符串的index位置;两者的效率比较:
public static void main(String[] args){//拼接一万个a//获取电脑系统当前时间的毫秒值long start = System.currentTimeMillis();StringBuffer s = new StringBuffer();for (int i = 0; i < 100000; i++) {s.append("a");}long end = System.currentTimeMillis();System.out.println(end - start); //用时7毫秒StringBuffer sb = new StringBuffer("123456");System.out.println(sb.insert(2, ",").toString());//结果:12,3456}
5.Math类
1.常用方法:Math.abs(i):取绝对值;Math.max(i,n):取较大的值; Math.min(i,n):取较小的值;Math.random():返回一个[0,1)的(double)值如:(1)产生0-9之间的随机整数:int i = (int) (Math.random()*10);(2)产生1000-9999【[1000-10000)】之间的(4位)随机整数:int i = (int) (Math.random()*9+1)*1000;Math.sqrt():求平方根 例如:c=Math.sqrt(a*a+b*b);Math.pow(a,b):求a的b次方;Math.round(a):四舍五入;Math.ceil(10.4):向上取整,结果为:11.0; ceil:天花板Math.floor(10.4):向下取整,结果为:10.0; floor:地板
6-1.时间日期类
Date类://获取此电脑的系统时间和日期Date date = new Date();//日期格式类 formater:格式器 位于java.text包中SimpleDateFormat formater = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//格式器.格式化(原始时间) 得到:日期字符串String dateStr = formater.format(date);//获得2019年06月01日 的Date对象DateFormat formater = new SimpleDateFormat("yyyy-MM-dd");Date date = formater.parse("2019-06-01");//Timestamp timestamp = new Timestamp(date.getTime());Calendar类:
Calendar cal = Calendar.getInstance();System.out.println("年:"+cal.get(Calendar.YEAR)); //年:2021System.out.println("月:"+(cal.get(Calendar.MONTH)+1)); //月:3System.out.println("周几:"+(cal.get(Calendar.DAY_OF_WEEK)-1)); //周几:6System.out.println("几号:"+cal.get(Calendar.DAY_OF_MONTH)); //几号:27System.out.println("时:"+cal.get(Calendar.HOUR_OF_DAY)); //时:22 System.out.println("分:"+cal.get(Calendar.MINUTE)); //分:41System.out.println("秒:"+cal.get(Calendar.SECOND)); //秒:41Date与Calendar的区别:类 Date 表示特定的瞬间,精确到毫秒。Calendar 类是一个抽象类,它为特定瞬间与一组诸如YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间 1970 年 1 月 1 日的 00:00:00.000,格里高利历)的偏移量。最明显的就是:前者是日期,后者是日历。就好比你家里的挂钟和挂历了。同样是对时间的操作,但是前者的粒度细些时间控制会比较方便。后者对日期的控制会比较方便。前者操作时间,时分秒,后者控制年月日。还有关键前者是类,后者是抽象类。前者能new,后者无法new。获取后者的对象必须通过子类的实例化类获得。
6-2.Data补充
7.Rondom类
Random r=new Random();int n=r.nextInt(num); //产生一个0-num之间的随机数方式1:使用Math类的random()方法Math.random():生成一个[0,1)随机double类型小数;例: 生成10以内的随机整数:int i= (int)((Math.random()*9+1);生成3位随机整数: int i= (int)((Math.random()*900+100);方式2:使用Random类的nextInt()方法nextInt(x):生成一个[0,x)的正整数;例: Random random=new Random();生成10以内的随机整数: int num=random.nextInt(10);生成3位随机整数: int num=random.nextInt(900)+100;