系列文章目录
提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
一、String
1、了解
理解:当我们在程序中声明一个"abc"字符串时,就在在方法区的字符串常量池中创建一个字符串对象("abc"字符串不存在的情况下),
eg: String str = “abc”,声明了一个String的变量,里面存储的是abc字符串的地址,
eg:String str = new String(“abc”),首先会创建String对象,对象里的字符数组引用"abc"字符串,如果"abc"不存在,那么就会创建一个字符串对象,如果存在,直接引用这个字符串的地址即可
字符串拼接:String类是采用final修饰的char数组存储字符串,一旦存入了值(引用了方法区中字符串常量池的地址),就是无法修改的。(指char数组不能修改,可以修改引用),所以每进行一次拼接就是一个新的字符串,就需要在方法区创建一个新的字符串对象,然后变量从新引用,
private final char value[];
StringBuilder:继承了AbstractStringBuilder,char数组没有final修饰,在字符串进行拼接时,直接修改char数组即可。
StringBuffer:synchronized修饰,对同一个对象操作,是线程安全的。
2、常用方法
String str = "12341";
String str2 = "12341";
String tel = "15572420317";
String code = "黎";
System.out.println(str.charAt(1));//获取指定下标元素
System.out.println(str.lastIndexOf("1"));//获取指定元素最后一次出现的下标
System.out.println(str.compareTo(str2));//比较大小,ASCII比较,返回负数表示小于,0表示等于,整数表示大于
System.out.println(str.concat(str2));//拼接
System.out.println(str.contains("123"));//是否包含指定字符串
System.out.println(str.substring(1,4));//截取下标1-3;
str.isEmpty();//是否为空
System.out.println("-----");
str.replaceAll("[-]","");//删除所有的-
str.contains("1234");//是否包含1234
str.toUpperCase();//大写
str.toLowerCase();//小写
str.split("-");//按照符号分割成数据
str.trim();//去除字符后首尾的空格,不会去除字符中的空格
for (byte b : code.getBytes()) {//转成byte数组
System.out.println(b);
}
二、Arrays
binarySearch(前提是数组已排序):二分查找法
asList():将存储相应类的数组转成存储对应类List集合。
sort:排序
equals:比较数组中的元素是否相等
toString:输出数组中的元素
public class MyArrays {
public static void main(String [] args) {
int a [] = new int [] {4,3,1,2};
int b [] = new int [] {1,2,3,4};
System.out.println("a==b : "+Arrays.equals(a, b));//false
Arrays.sort(a,0,a.length);//排序
System.out.println("a==b : "+Arrays.equals(a, b));//true
System.out.println("print array : "+Arrays.toString(a));//print array : [1,2,3,4]
List list = Arrays.asList(a);
}
}
三、日期
日期的地点是1970-01-01 08:00:00
1、date
Date date = new Date();//无参构造,获取当前时间,
//date = new Date(long);//根据指定的毫秒数,创建日期对象。
date = new Date(0);//获取起始时间
System.out.println(date);//Tue Apr 27 15:11:08 CST 2021
SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd hh:mm:ss");//日期格式转换
System.out.println(sdf.format(date));//1970-01-01 08:00:00
date.setYear(2021);//手动设置时间,month,day,hours,minutes,seconds
System.out.println(date.getYear());//获取year,month,day,hours,minutes,seconds
2、SimpleDateFormat
//根据指定日期转换:Y(年),M(月),d(日),h(时),m(分),s(秒)
//linux操作系统的 Y(年),m(月),d(日),H(时),M(分),S(秒)
SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd hh:mm:ss");//日期格式转换
3、Calendar
Calendar cal = Calendar.getInstance();//根据静态方法获取Calendar实例对象
cal.setTime(new Date());//设置一个Date对象的日历
cal.setTimeInMillis(0);//根据毫秒创建一个日历对象
cal.set(Calendar.YEAR, 2021);//设置年份2021
System.out.println(cal.get(Calendar.YEAR));//获取年份2021
Date date = cal.getTime();//获取Date对象。