学号 20175313《Java程序设计》 第七周学习总结
一、教材学习内容总结
第八章主要内容
了解String类
常量对象:常量池中的数据在程序运行期间再也不允许改变。
String对象:用户无法输出String对象的引用。
- 例如:
String s = new String(“i am a student”);
System.out.pintln(s);//输出对象的实体
可以用
s.toString()来返回对象引用的字符串 表示。输出:i am a student
- 例如:
字符串的并置运算:参与并置运算的String对象,只要有一个是变量,那么java就会在动态区存放所得到的新的String对象的实体和引用。如果是两个常量进行并置运算,那么得到的仍然是常量。
掌握String类的常用方法
字符串与基本数据的相互转化
- (字符串转基本数据类型)例子: Integer类调用类方法public static int parseInt(String s)实现将数字字符转化为数字。
- (基本数据类型转字符串)例子:
String类调用类方法public static String valueOf(byte n)将数值转化为String对象,或者调用toString()方法获得该对象的字符串表示。
字符串与字符数组的相互转换
- (字符串转字符字符数组)例子:
public char[] toCharArray()将一个字符串全部转化为字符数组,或者使用getChars - (字符数组转字符串):直接用简单的初始化字符串的方式即可。
- (字符串转字符字符数组)例子:
-
- 什么是正则表达式
- 字符串的替换
- 字符序列的分解
熟悉String类和StringBuffer类的不同
- String对象的字符序列是不可修改的(实体不可变)。
- StringBuffer类的对象的实体的内存空间可以自动的改变大小,便于存放一个可变的字符序列。(实体可变)
学会使用StringTokenizer、Scanner类,并清楚二者使用时的区别
- StringTokenizer类把分解出的单词全都存放在StringTokenizer对象的实体中,获取单词速度快,但是占用内存多。
- Scanner类不把单词放到Scanner对象的实体中,而是仅仅存放获取单词的分隔标记,获取单词速度相对较慢,但是节省内存空间。
了解Date类、Calendar类和format方法的使用
熟悉Math类、BigInteger类和Random类的应用条件
- Math类:random方法生成的随机数是double型的并且取值范围是[0.0,1.0)。
- BigInteger类:当程序中需要处理特别大的整数时就可以使用该类。
- Random类:虽然也是生成随机数,但是用起来比Math类灵活。
二、教材学习中的问题和解决过程
- 问题1:
对于如下代码,下列哪个叙述是正确的?
A、程序编译出现错误
B、程序标注的【代码】的输出结果是bird
C、程序标注的【代码】的输出结果是fly
D、程序标注的【代码】的输出结果是null
public class E {
public static void main(String[] args) {
String one = "bird";
String two = one;
one = "fly";
System.out.println(two);
}
}
正确答案:B
理解情况:String对象one和two都是变量,所以
String two = one;相当于String two = String new("bird");,因此one的引用与two的引用是不同的,改变one的值并不会影响到two的值。运行结果截图:
- 问题2:请说出E类中标注的【代码】的输出结果。
public class ex8_3 {
public static void main(String[] args) {
String str = "苹果";
modify(str);
System.out.println(str);
}
public static void modify(String s){
s = s +"好吃";
}
}
- 输出结果为:“苹果”,不是“苹果好吃”
- 运行结果截图:
- 理解情况:题目中向方法modify传的是str的一个复制品并不是他的引用,因此在方法中改变str的值并不会影响主方法中str的值,与C中的传值、传地址类似。
- 如果想得到“苹果好吃”,将代码修改如下:
public class ex8_3 {
public static void main(String[] args) {
String str = "苹果";
System.out.println(modify(str));
}
public static String modify(String s){
s = s +"好吃";
return s;
}
}
- 运行结果截图:
三、代码托管
(https://gitee.com/xiannvyeye/test)
四、心得体会
- 有压力才有动力。结对加上团队加上各种实验,我还能把Java看完我觉得自己很不容易。
- 不知道为什么大家看起来都学习的很轻松,看书都看的好快,可能是自己书读的少了吧,所以阅读能力有点差。希望今后自己能有时间多看看书。
五、学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第七周 | 540/2634 | 2/14 | 20/104 |
计划学习时间:23小时
实际学习时间:20小时
改进情况:
- 多看书,提高阅读速度、理解能力。
- 合理安排时间,充分利用碎片时间。
六、参考资料
学号 20175313《Java程序设计》 第七周学习总结的更多相关文章
- 201521123027 <java程序设计>第七周学习总结
1.本周学习总结 2.书面作业 Q1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 答: 源代码: //contains()方法 public boolean c ...
- 20175313 张黎仙《Java程序设计》第九周学习总结
目录 学号 20175313 <Java程序设计>第九周学习总结 一.教材学习内容总结 二.教材学习中的问题和解决过程 三.代码托管 四.心得体会 五.学习进度条 六.参考资料 学号 20 ...
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 学号20145303 《Java程序设计》第一周学习总结
学号20145303 <Java程序设计>第一周学习总结 教材学习内容总结 *dos命令行: dir:列出当前目录下的文件及文件名 md:创建目录 rd:删除目录.为空时文件夹(文件夹为空 ...
- 学号20145322 《Java程序设计》第一周学习总结
学号20145322 <Java程序设计>第一周学习总结 教材学习内容总结 Java诞生于Sun公司,于1998年12月4日发布J2SE,约以两年为一周期推出重大版本更新. 2010年Or ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第七周学习总结
201871010106-丁宣元 <面向对象程序设计(java)>第七周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...
- 20175227张雪莹 2018-2019-2 《Java程序设计》第九周学习总结
20175227张雪莹 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十一章 JDBC数据库操作 MySQL数据库管理系统 下载安装MySQL 若下载的是 ...
- 20155227 2016-2017-2 《Java程序设计》第九周学习总结
20155227 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 JDBC全名Java DataBase Connectivity,是java联 ...
- 20155305乔磊2016-2017-2《Java程序设计》第九周学习总结
20155305 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 JDBC简介 1.JDBC是java联机数据库的标准规范,它定义了一组标准类与 ...
- 20165324 《Java程序设计》第九周学习总结
学号 20165324 <Java程序设计>第九周学习总结 教材学习内容总结 第十三章 Java网络编程 URL类 使用URL创建对象的应用程序称为客户端 一个URL对象封装一个具体资源的 ...
随机推荐
- JVM·垃圾收集器与内存分配策略之垃圾回收算法!
1.垃圾回收算法 1.1.标记-清除算法(Mark-Sweep): 过程分为“标记”和“清除”两个过程.先将所有需要回收的目标统一标记,然后再统一清除. ...
- br-lan、eth0、eth1及lo (转)
如果你的设备含有不少于1个的LAN接口,那这个设备在不同的接口之间可能有一个被称为交换(switch)的特殊连接.大多数的内部构造如下图所示: Linux 系统下输入ifconfig命令,会有如下输出 ...
- windows下的node环境搭建
node环境的搭建过程: 1.首先在nodejs.org官网上下载一个msi安装文件,安装(过程很简单,基本上是一路next) 2.安装完成后,简单测试下是否安装成功,在cmd下输入两个命令: nod ...
- 装饰器模式&&ES7 Decorator 装饰器
装饰器模式(Decorator Pattern)允许向一个现有的对象动态添加新的功能,同时又不改变其结构.相比JavaScript中通过鸡肋的继承来给对象增加功能来说,装饰器模式相比生成子类更为灵活. ...
- 用 zotero 管理文献和个人知识库
这周开始用了一下 zotero. 这是一款非常好用的文献管理工具,但它更像是一个多功能的收藏夹,或者说是一个知识.笔记.文献的综合管理工具. 入门的时候搜到了阳志平老师的几个图文并茂的教程,这里也推荐 ...
- Ubuntu系统查看显卡型号和NVIDIA驱动版本
查看GPU型号 lspci | grep -i nvidia 查看NVIDIA驱动版本 sudo dpkg --list | grep nvidia-*
- windows无法安装msi文件
命令提示符(管理员身份运行): 输入:msiexec /i e:\spark\scala-2.11.12.msi 其中e:\spark\scala-2.11.12.msi:就是安装文件的位置.
- Go的sort接口实现
package main import ( "fmt" "sort" "time" ) type Track struct { Title ...
- String hashcode的兴趣试玩
今天突然看到Hashcode和equals,==比较时,一时兴起,想了解一下hashcode生成规则,为什么hashcode相同,无法说明对象相等,但用equals说明相同,却可以推出对象的hashc ...
- Git使用总结之修改了用户名之后git无法使用
错误提示: unable to access 'http://git.ruitukeji.com:3000/RuiTu/heshanghui-andriod.git/': The requested ...




