课本知识总结

第八章 常用实用类

String类
  1. String对象

    • 构造方法:
  • 使用String类声明对象并创建对象
String s = new String("we are students");
String t = new String("we are students");
  • String(char a[])用一个字符数组a创建一个String对象
char a[] = {'J','a','v','a'};
String s = new String(a);
  • String(char a[],int starIndex,int count)提取字符数组a中的一部分字符创建一个String对象,参数starIndex和count分别指定在a中提取字符的起始位置和从该位置开始截取的字符个数。

    • 引用String常量
String s1,s2;
s1 = "你好";
s2 = "你好";
  1. 字符串的并置
  • String对象可以用“+”进行并置运算,即首尾相接得到一个新的String对象
  1. String类的常用方法
  • public int length()
  • public boolean equals(String s)
  • public boolean startsWith(String s)、public boolean endsWith(String s)
  • public int compareTo(String s)方法
  • public boolean contains(string s)
  • public int indexOf(String s)和public int lastIndexOf(String s)
  • public String substring(int starpoint)
  • public String trim()
  1. 字符串与基本数据的相互转化
  • java.lang包中的Integer类调用其类方法public static int parseInt(String s)可以将“数字”字符组成的字符序列,如:
int x;
String s = "876";
x = Integer.parseInt(s);
  1. 字符串的替换
  • String对象调用public String replaceAll(String regex,String replacement)方法返回一个新的String对象
  1. 字符序列的分解
  • 利用方法public String[] split(String regex),使用regex作为分隔标记分解出当前String对象的字符序列中的单词
StringTokenizer类
  1. StringTokenizer(String s):为String对象a构造一个分析器。使用默认的分隔标记,即空格符、换行符、回车符、Tab符、进纸符做分隔标记
  2. StringTokenizer(String s,String delim):为String对象s构造一个分析器。参数delim的字符序列中的字符的任意排列被作为分隔标记
Scanner类
  1. Scanner对象可以解析字符序列中的单词
String NBA = "I Love This Game";
Scanner scanner = new Scanner(NBA);
useDelimiter(正则表达式);
  1. 与StringTokenizer的区别
  • StringTokenizer类把分解出的全部单词都存放到StringTokenizer对象的实体中
  • Scanner类仅存放怎样获取单词的分隔标记
StringBuffer类
  1. 构造方法
  • StringBuffer();
  • StringBuffer(int size);
  • StringBuffer(String s);
  1. 常用方法
  • append方法
  • public char charAt(int n)和public void setCharAt(int n,char ch)
  • StringBuffer insert(int index,String str)
  • public StringBuffer delete(int startIndex,int endIndex)
  • public StringBuffer reverse()
  • StringBuffer replace(int startIndex,int endIndex,String str)
date类与Calendar类
  1. Date类
  • 构造方法

    • 无参数构造方法:Date nowTime = new Date();
    • 带参数构造方法:Date date1=new Date(1000),date2=new Date(-1000);
  1. Calendar类
  • 初始化:Calendar calendar = Calendar。getInstance();
  • 调用方法public int get(int filed)可以获取有关年份、月份、小时、星期等信息
  • 调用public long getTimeInMillis()可以返回当前calendar对象中时间的毫秒计时
日期的格式化
  1. format方法:format(格式化模式,日期列表)
  • 格式化模式:是一个用双引号括起的字符序列,该字符序列中的字符由时间格式符和普通字符所构成
  • 日期列表:可以是用逗号分隔的Calendar对象或Date对象
  • 格式化同一日期:可使用“<”格式化同一个日期
  1. 不同区域的星期格式
  • 用特定地区的星期格式:format(Locale locale,格式化模式,日期列表);
  1. 数字格式化:调用format方法
  • 数据的宽度:"%md"在数字的左面增加空格;"%-md"在数字的右面增加空格
Class类和Console类
  1. Class类
  • 创建对象:
public static Class forName(String className) throws ClassNotFoundException
  • 对象调用:
public Object newInstance() throws InstantiationException,IllegalAccessException
  1. Console类
  • 创建对象:Console cons = System.console();
  • 读取文本且不回显:char[] passwd = cons.readPassword();
Pattern类与Matcher类
  1. 建立Pattern对象:使用正则表达式regex作参数得到一个称为模式的Pattern类的实例pattern
Pattern pattern = Pattern.compile(regex);
  1. 得到Macher对象:得可以检索String对象input的Macher类的实例macher(称为匹配对象)
Macher matcher = pattern.matcher(input);

第十五章 泛型与集合框架

  1. 泛型
  • 泛型类声明:class 名称<泛型列表>
  • 声明对象
Cone<Circle> coneOne;
coneOne = new Cone<Circle>(new Circle());
  1. 链表
  • LinkedList链表:创建对象以链表结构存储数据
  • 创建空链表:LinkedList mylist = new LinkedList();
  • 使用add(E obj)方法依次增加节点
  • 使用get(int index)方法遍历链表
  • 排序与查找
    • 升序排序:public static sort(List list)
    • 折半法查找:int binarySearch(List list,T key,CompareTo c)
  • 洗牌与旋转
    • 随机排序:public static void shuffle(List list)
    • 旋转数据:static void rotate(List list,int distance)
    • 翻转数据:public static void reverse(List list)
  1. 堆栈
  • 创建堆栈对象:Stack
  • 压栈操作:public E push(E item);
  • 弹栈操作:public E pop();
  • 判断堆栈是否还有数据:public boolean empty();
  • 获取堆栈顶端的数据,但不删除该数据:public int search(Object data);
  1. 散列映射
  • 创建对象:HashMap<K,V>
  • 常用方法:

  1. 树集:TreeSet创建对象,在使用add方法增加结点

  2. 树映射:TreeMap<K,V>对象

代码托管

上周错题总结

解析:

解析:这是多态的定义,而非继承。

本周学习中遇到的问题

  • 在编译课本15章第三个例子是出现如下错误

解决方案:在参考了注:*.java使用了未经检查或不安全的操作 问题解决后,以及再重新阅读课本后我发现该版本的JDK对泛型的一些要求,自己在LinkedList后面加上了后编译成功,但自己还是没有很清楚,希望老师可以在课上讲解一下。

20165330 2017-2018-2 《Java程序设计》第6周学习总结的更多相关文章

  1. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  2. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  3. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  4. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  5. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  6. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  7. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  8. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  9. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  10. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

随机推荐

  1. SignalTap ii的使用

    1.实现原理 SignalTap II获取实时数据的原理是在工程中引入Megafunction中的ELA(Embedded Logic Analyzer),以预先设定的时钟采样实时数据,并存储于FPG ...

  2. 【Android】14.1 内部文件存储和读取

    分类:C#.Android.VS2015: 创建日期:2016-02-27 一.简介 内部存储(Internal storage)是指将应用程序建立的私有文件保存在内部存储器(移动经销商卖的那种容量较 ...

  3. quick cocos2d-x 2.2.4 window环境调试

    BabeLua简介 BabeLua是一款基于VS2012/2013(简称VS)的免费开源的Lua集成开发环境,在Lua编辑和调试方面,具有如下功能和特性: ●Lua语法高亮 ●语法检查 ●自动补全 ● ...

  4. CentOS 7.0 关闭firewalld防火墙指令 及更换Iptables防火墙

    CentOS 7.0 关闭firewalld防火墙指令 及更换Iptables防火墙 时间:2014-10-13 19:03:48  作者:哎丫丫  来源:哎丫丫数码网  查看:11761  评论:2 ...

  5. 每日英语:Asia Has World's Biggest Pay Gap, Study Finds

    In Asia, middle managers such as department heads make more than 14 times as much as operational emp ...

  6. ldap 使用 问题参考

    Q2.ldapsearch查询一个有30000多条记录时出现:Size limit exceeded 4 A2:服务器端配置文件有sizelimit 1000的限制!用管理员身份查询-D"c ...

  7. ibatis时间比较大小

     <![CDATA[          A.RFID_Time >= #StartTime#          ]]>时间搜索功能 A.RFID_Time <![CDATA[  ...

  8. [TI-Sitara]启动流程

    前段时间在准备AM437x启动相关的一些事情,对MLO.SPL等事情也是有些糊涂,于是分享下面这篇文章 转自:http://blog.csdn.net/psvoldemort/article/deta ...

  9. 百度JS模板引擎

    1. 应用场景 前端使用的模板系统  或  后端Javascript环境发布页面 2. 功能描述 提供一套模板语法,用户可以写一个模板区块,每次根据传入的数据,生成对应数据产生的HTML片段,渲染不同 ...

  10. ES-PHP向ES批量添加文档报No alive nodes found in your cluster

    ES-PHP向ES批量添加文档报No alive nodes found in your cluster 2016年12月14日 12:31:40 阅读数:2668 参考文章phpcurl 请求Chu ...