1.本周学习总结

1.重点String

2.Java的数据类型

3.Java中的引用类,包装类

for(类型 元素变量名(任取):遍历对象(数组名))

2.书面作业

1.String-使用Eclipse关联jdk源代码

1.1 查看String对象的源代码(截图),分析String使用什么来存储字符串?

String使用private final char value[]来实现字符串的存储

1.2 分析其构造函数public String(char value[])的作用?

通过char数组,生成String字符串对象

1.3 阅读public String replace(char oldChar, char newChar)方法的代码,回答String的不可变性在该函数中如何体现?(重点)

不可变性体现在替换字符串是通过替换字符实现

1.4 简述String与字符数组的关系,使用字符数组就可以处理字符串,为什么还需要String呢?

String作为类使用,字符数组作为数组使用,相比而言,使用String类来处理字符串更便捷

2. StringBuilder

2.1 结合PTA -2(StringBuilder) ,说明为什么频繁修改字符串时,应该使用StringBuilder而不是String?

String具有不可变性,如果进行字符串的拼接时就会需要多个字符串变量,降低代码的执行效率

2.2 阅读jdk文档,查询StringBuilder的append(char[] str)方法功能是什么?试分析StringBuilder内部使用什么来存放字符?调用StringBuilder的append(char[] str)方法时,是如何实现添加字符的操作?

java.lang.StringBuilder.append(char[] str) 方法添加这个序列的char数组参数的字符串表示形式。字符数组参数按顺序追加,该序列的内容。这个序列的长度增加该参数的长度。

StringBuilder内部使用字符数组来存放字符

3.字符串与字符串池

3.1 尝试使用字符串池的概念解释如下程序段输出结果,并回答这段代码创建了几个字符串对象:

String str1 ="hi", str2="hi"; String str3 = new String(str1) System.out.println(str1==str2);

输出结果为:true

这段代码创建了2个字符串对象,str1和str2在字符串池中存放的地址一样,str3新建了一个字符串对象

3.2 重点:对基本类型我们可以使用比较两个值是否相等,对于引用类型(如String, Integer、数组等)为什么不能使用比较?应该怎样比较他们的值是否相等呢?

==是用于比较引用类型变量存放的地址是否相等

使用equals来比较值是否相等

4.Wrapper(包装类)

4.1 Integer i = 100;//100是基本类型,i是引用类型,为什么可以将100赋值给i?Integer x = 100; int y = x+1;x++;这一串命令中包含了些什么操作?

100赋值给i,使用了java的自动封箱的功能;

先自动封箱,将100赋值给X,然后自动拆箱,将数据类型转成int类型,

x++这一语句中先拆再封

4.2 Java为什么有了基本数据类型,还需要其包装类呢?包装类能给我们带来什么好处呢?

JAVA是一种面向对象的语言,如果让对象自己选择自己所需要的功能,包装类就能丰富对象的基本数据操作

5.实验总结

5.1 7-1 jmu-Java-02基本语法-02-StringBuilder

StringBuilder类的基本使

5.2 7-2 jmu-Java-02基本语法-03-身份证排序

截取身份证的部分字符比较后,然后再输出完整的字符,没有想到便捷的方法,写了个for循环

else if(choice.equals("sort2"))
{
String[] t=new String[n];
for (int i = 0; i < t.length; i++) {
t[i]=Integer.toString(digits[i]);
for (int j = 0; j <n; j++) {
if(t[i].equals(ids[j].substring(6, 14)))
{
System.out.println(ids[j]);
}
}
}
}

5.3 7-3 jmu-Java-02基本语法-04-动态数组

ArrayList的基本使用

5.4 7-4 jmu-Java-02基本语法-01-综合小测验

排序直接使用Array.sort(),运用switch,再调用函数

5.5 jmu-Java-02基本语法-08-ArrayList入门

ArrayList类的使用,查阅jdk文档即可

但是PTA老是部分正确。。。。。。

5.6 7-6 jmu-Java-02基本语法-05-浮点数计算

BigDecimal类的使用

5.7 7-7 jmu-Java-02基本语法-06-枚举

枚举的使用

enum Grade {
A, B, C, D, E;
};

5.8 7-8 jmu-Java-02基本语法-07-大整数相加

BigInteger类的使用

3. 码云及PTA

3.1. 码云代码提交记录

3.2 截图题集“Java基本语法”PTA提交列表







3.3 使用老师发的jar程序统计每周的代码量

201621123002《JAVA程序设计》第二周学习总结的更多相关文章

  1. 20145304 刘钦令 Java程序设计第二周学习总结

    20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...

  2. 201521123063 JAVA程序设计 第二周学习总结

    1.本周学习重点(2.27-3.5) java中的数组 以二维数组为例,数组名为scores,则 (1)先声明数组 int[][] scores;或int scores[][];或int[] scor ...

  3. 2017面向对象程序设计(Java)第二周学习总结

    2017面向对象程序设计(Java)第二周学习总结 直系学妹学弟们好!额...不要问我为什么把学妹放前面,我也不知道!我只是你们和蔼可亲的学长一枚而已.也不要问为什么是第二周学习总结而不是第一周,因为 ...

  4. 201871010106-丁宣元 《面向对象程序设计(java)》第二周学习总结

    丁宣元 <面向对象程序设计(java)>第二周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...

  5. 201521044152<java程序设计>第一周学习总结

    本周学习总结 java开发时间虽然很短,但是发展迅速,已成为现在非常流行的一门语言,很开心能有幸学习java.第一周学习了java的平台,运行环境jdk以及jrt等等新名词,还了解了eclipse的基 ...

  6. 20145304 刘钦令 Java程序设计第一周学习总结

    20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...

  7. 201621123007 Java程序设计第一周 学习总结

    第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...

  8. 201871010121 王方 《面向对象程序设计(java)》 第二周学习总结

    这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p/11475 ...

  9. 杨其菊201771010134《面向对象程序设计Java》第二周学习总结

    第三章 Java基本程序设计结构 第一部分:(理论知识部分) 本章主要学习:基本内容:数据类型:变量:运算符:类型转换,字符串,输入输出,控制流程,大数值以及数组. 1.基本概念: 1)标识符:由字母 ...

  10. 201777010217-金云馨《面向对象程序设计(Java)》第二周学习总结

    项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...

随机推荐

  1. CSRF的防御解决过程

    CSRF是什么,就不多说,网络上的帖子多的去了,关于其定义. 这里主要介绍我们项目中,是如何解决这个问题的.方案比较简单,重点是介绍和记录一下遇到的问题和一些小的心得. 1. 解决方案 A. 用户登录 ...

  2. Delphi调用大漠插件示例

    Delphi XE2 版本调用大漠插件方法:打开Component->Import Component->默认Import a Type Library,点击Next->找到Dm.d ...

  3. Linux根据MAC地址自动设置IP

    Linux根据MAC地址自动设置IP #!/bin/sh #============config============ route_defa=60.12.70.65 addr_ip= link_ma ...

  4. Idea的pom文件导入依赖包仍然报错

  5. Entity Frame Code First 简易教程

    简介 什么是ORM 搭建Entity FrameWork CodeFirst应用 数据库迁移 表属性常见配置 Entity FrameWork 一对多.多对多 一.简介 Entity Framewor ...

  6. BUILDING WITH BOOTSTRAP

    BUILDING WITH BOOTSTRAP Bootstrap Generalizations You just built an impressive webpage using the Boo ...

  7. 去BAT,你应该要看一看的面试经验总结(转)

    来源微信公众号『easyserverdev』 http://mp.weixin.qq.com/s/UZljzFMjobo1wzCguY7NDg 说下我的面试经验吧,都是亲身经历,不喜勿喷: 我去年12 ...

  8. Win10系统进行远程桌面连接出现身份验证错误怎么办

    在win10系统中,自带有远程桌面连接功能,但是有时候会遇到一些问题,比如有不少用户反映说在进行远程桌面连接的时候,出现身份验证错误的情况,导致远程连接失败,接下来给大家分享一下Win10系统进行远程 ...

  9. Linux网络编程学习计划

    由于网络编程是很重要的一块,自己这一块也比较欠缺,只知道一些皮毛,从今天开始系统学习<Linux网络编程>一书,全书分为十四个章节: 第一章   概论   P1-16 第二章   UNIX ...

  10. mongodb mongod 启动参数

    我们可以通过mongod --help查看mongod的所有参数说明,以下是各参数的中文解释. 基本配置 –quiet# 安静输出 –port arg# 指定服务端口号,默认端口27017 –bind ...