本文共 3193 字,大约阅读时间需要 10 分钟。
Java常用的包:
java.lang:包含java 最基础的类,可以直接在程序中使用这些类不需要再引入包。
java.io:包含支持输入/输出操作的类。 javax.swing:提供支持Java图形化组件的类。 java.util:包含一系列标准操作以管理数据集、访问日期以及分析字符串的类。 java.sql:包含支持使用标准sql的数据库访问功能的类。Lang包中的类:
数据包装类:常用于数据类型转换,可以让不是对象的8种数据类型转换为对象。
原始数据类型 —— 包装类 byte(字节)—— Byte char(字符)—— Character int(整型)—— Integer long(长整型)—— Long short(短整型)—— Short float(浮点型)—— Float double(双精度)—— Double boolean(布尔型)—— Boolean装箱:基本数据类型 转为 对象
int age1 = 21;// 例:包装类 对象名 = new 包装类(变量名);Integer newage = new Integer(age1);
拆箱:对象 转为 基本数据类型
// 例:数据类型 变量名 = 对象名.intValue();int age2 = newage.intValue(newage);
.isDigit() :判断字符是否为 0 至 9 之间的数字
.isLetter() :判断字符是否为字母 .isLowerCase() :判断字符是否为小写形式 .isUpperCase() :判断字符是否为大写形式 .isSpace() :判断字符是否为空格或换行符回顾知识点:这个在第二天的文章面试题里曾讲过String、StringBuffer、StringBuilder的区别
String是字符串常量,因为在源码中他是被final修饰的,每次操作String的对象都会生成一个新的Sring对象然后把指针指向新的String对象,比如:声明两个String对象进行相加时,就会开辟三个String对象空间,这样效率会很低。
言归正传,回到String类的基础使用:
声明字符串的方法:
第一种:
String name = "wyh"; // String 字符串名 = “……”; 这是一个字符串字面量,存在字符串池里,多个引用指向同一个空间
第二种:
String name = new String("wyh"); // String 字符串名 = new String("……"); 这是一个字符串对象,自己的对象指向自己的空间
字符串可以通过“+”拼接起来,通常也建议使用这个方法
String str1 = "wyh is";String str2 = "boy";String str3 = null;str3 = str1+ " handsome " + str2;System.out.println(str3);
用.length() 方法也可以知道字符串长度
注意: 字符串的length是方法 例:字符串名.length() ; 数组的length是属性 例:数组名.length ;
String类的常用方法:
比较的方法:
1、.equals() —— 比较两个字符串 2、.equalsIgnoreCase() —— 忽略大小写之后比较 3、.compareTo() —— 判断两个字符串里第一个出现不同的字符在第几位,如果全相同就返回0 4、.startsWith() —— 检查字符串是否在另一个字符串的开始 5、.endsWith() —— 检查字符串是否在另一个字符串的结束搜索的方法:
1、.indexOf() —— 判断在第几个,找的的话输出找到的字符串的下标,没找到的话就返回-1提取的方法:
1、.charAt( n ) —— 拿出下标为n的字符 2、.subString( n,m ) —— 拿出下标n到m的字符串更改大小写的方法:
1、.toUpperCase() —— 字符串全部改成大写 2、.toLowerCase() —— 字符串全部改成小写对于.equals()方法 又可以回忆一下第三天的面试题学习( == 和 equals 的区别)
String对象能用.equals()方法比值,是因为Java源码中对于String类重写过.equals()方法,而在其他Object中用.equals()方法比的就是地址。 这是 == 和 equals 的区别的相关笔记:大家一定记住String类和StringBuffer类的区别,StringBuffer是可以直接修改字符串值的,这个在上面的笔记中有写。
1、.apend( 字符串 ); —— 末尾追加字符串
2、.insert( n,字符串 ); —— 在下标为n的位置追加字符串 3、.reverse( ); —— 倒序排列字符串 4、.delete( n,m ); —— 从下标为n的字符删除到m的字符 5、.deleteCharAt( n ); —— 删除下标为n的字符 6、.replace( n,m,字符串 ); —— 用新的字符串替换下标为n到m的字符串 7、.toString( ); —— 将Buffer对象转换为字符串因为 Math 的方法都被定义为了静态(static)形式,通过 Math 类可以在主函数中直接调用
方法基本都为数学运算和几何方法的运算,这里就不展开了。 这有个Math类方法的相关文档有兴趣的可以看下:Object类是所有类的父类(老祖宗类)
所有Java类都会拥有Object类里定义的方法,开发人员根据需要重写Object中的方法。1、protected Object clone() —— 创建并返回一个对象的拷贝
2、boolean equals(Object obj) —— 比较两个对象是否相等 3、int hashCode() —— 获取对象的 hash 值 4、void notify() —— 唤醒在该对象上等待的某个线程 5、void notifyAll() —— 唤醒在该对象上等待的所有线程 6、String toString() —— 返回对象的字符串表示形式 7、void wait() —— 让当前线程进入等待状态,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法。 8、void wait(long timeout) —— 让当前线程处于等待(阻塞)状态,直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法,或者超过参数设置的timeout超时时间。Class类称为类的描述器,就是类的类
Class可用来显示运行类的运行状态和信息,可用来动态的加载类,得到类的实例。Lang包的相关思维导图:
今天状态很不好,事比较多,运动的时候心不在焉,导致运动效率也不高,40min才300大卡
2020.08 阴天 摄于广州
转载地址:http://wnalf.baihongyu.com/