20170818 - 今日技能封装 - A
1 ol是什么?
内存溢出。
2 该阶段学习要求是什么?
知道什么类需要调用什么包,如Random包含在什么包里的。
3 功能注释写在哪?如何写?
类 常量 方法
/**
* 注释
*/
4 在类上写功能注释
@代表什么?
一些属性,如作者,版本
@author Bruce
@version 1.1/2.0 21/08/17
@see java.lang.String 参考什么类一起看
@since JDK1.8 (注明开发环境——关键是用到了哪个版本的特性,在1.8下开发用到了1.5的特性,
还是标明1.5)
5 在方法上写注释
@params 传入参数的说明
@return 对返回值的说明
6 在常量上写注释
/**
* 注释
*/
7 什么时候应该定义成常量?
每个类都有的,值都一样的。值不一样的就定义成属性。
8 文档中的字段摘要是?
类中的常量。
9 字符串是什么类型数据?初始化赋值后的值可以改变吗?为什么?
引用类型数据,
不可以,(str = "123";str = str + "!";)实际上发生了指向了新对象(123!)的过程,不能再原本创建的123
上改变。
创建时是放到一个final的char数组。
10 为何char中97 = A。
97的二进制和A的二进制实际是一样的
11 String常量池
①equals比较的是?
对象是否相同
②==比较的是?
两个引用指向的对象是否相同
③new出来的“123”和直接赋值的“123”是否==?
两者对象不同
④如果不new是怎样的机制?
先到常量池中查找是否有创建过。
12 查找字符串位置函数是什么?返回的是什么?如何设置查找起始位置?如何查找最后出现的位置?
大对象.indexOf(小对象)
大对象.indexOf(小对象,起始位置)
大对象.lastIndexOf(小对象)
13 如何检测某输入字符不重复?
查找起始位置,查找最后出现的位置,相同则不重复。
14 java用数字表示范围需注意什么?
含头不含尾。
15 如何截取指定范围字符串?
ste.substring(开始位置,结束位置下标+1)
16 如何去掉字符串前后空白(换行,空格,)?
str.trim();
17 如何获取特定位置字符?
charAt()
18 return用于结束什么?
方法的执行,不管后面是否跳出循环。
19 如何判断字符串是否以某字符串开头或结尾?返回什么?
str.startsWith(word) str.endsWith(word)
boolean。
20 将字符串转换为全大写或小写。
str.toUpperCase()
str.toLowerCase()
21 如何将非字符串类型数据转换为字符串?
String.valueOf(shuzi)
22 接口中的方法及常量需要加public final static吗?
不需要。
23 接口间可以多继承吗?
可以。
24 Unicode的字符是多少位的?
16
25 如何遍历循环出所有中文字符
从'\u4e00'到'\u9fa5',遍历增加的是char型数据。
26 StringBuilder的常用方法有哪些?有无先后顺序?
追加,插入,删除,替换,反转,
toString()要放在最后。
27 StringBuilder builder = new StringBuilder("123");
builder.append("123");
System.out.println(builder.insert(2, “3”).delete(3, 5).replace(3, 5, "133").reverse().toString());
运行结果为?
123123
1233123
12323
123133
331321
28 当需要遍历增加字符串对象时,用什么类比较好?
StringBuilder内部维护一个可变的字符数组,由于字符串的设计不利于频繁修改字符串内容(每次修改都要新建对象)
所以利用StringBuilder来新建一个可变的字符数组来达到减少内存开销的目的。
29 StringBuilder 和 StringBuffer的区别是?
一个非安全线程,一个安全单线程。