20165206 2017-2018-2 《Java程序设计》第6周学习总结
20165206 2017-2018-2 《Java程序设计》第6周学习总结
教材学习内容总结
- String类:可以被直接使用,不可以有子类。
- String对象:可以使用String类声明对象并创建对象,例如:String s = new String("we are students");
String t = new String("we are students"); - 字符串的并置:String对象可以使用“+”进行并置运算,首尾相接得到一个新的String对象。
- String类的常用方法:
- public int length( ) 用来获取一个String对象的字符序列的长度;
- public boolean equals(String s) 用来比较当前String对象的字符序列是否与参数s指定的String对象的字符序列相同;
- public boolean startsWith(String s)、public boolean endsWith(Sting s) 判断当前String对象的字符序列前缀是否是参数指定的String对象s的字符序列;
- public boolean contains(String s) 用来判断当前String对象的字符序列是否包含参数s的字符序列;
- public int indexOf (string s) 从当前String对象的字符序列的0索引位置开始检索首次出现s的字符序列位置并返回该位置,若没检索到,该方法的返回值为-1;
- public int lastIndexOf(String s) 从当前String对象的字符序列的0索引位置开始检索最后一次出现s的字符序列的位置,并返回该位置,若没检索到,则返回-1;
- public String trim() 得到一个新的String对象,这个String对象的字符序列是当前String对象的字符序列去掉前后空格后的字符序列。
- 正则表达式:正则表达式是一个String对象的字符序列,该字符序列中含有具有特殊意义的字符,这些特殊字符称作正则表达式的元字符。
- 泛型:其主要目的是可以建立具有类型安全的集合框架。
- 链表:由若干个称作结点的对象组成的一种数据结构,用于动态的减少或增加数据项。
- 排序:public static sort(List
list) 将list中的元素按升序排列。 - 查找:int binarySearch(List
list,T key,CompareTo c) 使用折半查找查找list中是否含有和参数key相等的元素。 - 洗牌:public static void shuffle(List
list) 将list中的数据按洗牌算法重新随机排列。 - 旋转:static void rotate(List
list,int distance) 旋转链表中的数据。 - 压栈:public E push (E item);
- 弹栈:public E pop( );
- 判断堆栈中是否还有数据:public E peek();
- 获取堆栈顶端的数据,但不删除该数据: public int search(Object data);
代码调试中的问题和解决过程
问题1:在编译代码时,我首先是编译整个文件夹中的代码,但出现了错误,提示我编译未成功。
问题1解决方案:我随后分别单独编译这些代码,未做修改,但都能成功编译并运行。
上网查阅后也不知道原因是什么。
代码托管
上周考试错题总结
错题1及理解情况:子类所声明的成员变量的名字和从父类继承来的成员变量名字相同但类型不同时,子类会隐藏所继承的成员变量。
错题2及理解情况:public void someMethod(int i)和public int someMethod( )是方法重载。
错题3及理解情况:多态是指父类的某个方法被子类重写时,可以产生自己的行为和功能。
感悟
本周学习接触的新概念比较多,而且有些东西也不是很好理解,就比如正则表达式等。同时,也对以前一直在使用的String类进行了一些介绍。感觉收获不小,要继续加强学习与练习,争取早些掌握这些知识。