Java for Android 第三周学习总结
第五章 核心类
java.lang.Object中的方法:
clone(创建并返回该对象的一个副本。实现这个方法的一个类,将支持对象的复制)
equals(将该对象和传入的对象进行比较。必须实现这个算法,才能提供一个比较实例的方法)
finalize(当一个对象和传入的对象进行比较。类必须实现这个方法,才能提供一种方法比较其实例的内容)
getclass(返回该对象的一个java.lang.Class对象)
hashcode(返回该对象的一个哈希码值)
toString(返回该对象的说明)
java.lang.String
String对象表示一个字符串
String s = "Java is cool";
String message = new String("Java is cool");
使用字符串字面值时,会得到一个相同的String对象,如果字符串之前已经创建了,该对象可能来自于一个池?
使用new 关键字时,JVM会创建一个新的String对象。
"Java".equals(s1)来代替s1 != null && s1.equals."Java"
比较两个字符串。==比较的是两个对象的地址。equals比较的是两个对象的值。
字符串字面值:String s="hello world!"如果连接一个对象和一个String,将会调用前者的tostring方法。
转译特定字符:String s="John "The Great" Monroe"
字符串上的switch:java支持对字符串使用case
String类的构造方法,java类提供了多个构造方法,允许创建空字符串、另外字符串的一个副本、以及通过char或byte的一个数组来创建字符串。
String类的方法:
charAt(int index):返回指定索引的字符。
concat(String s):将指定的字符串连接到这个String的末尾,并且返回结果。
equals(string s):比较两个字符串的值
endswith(String suff):测试是否以suff作为结尾。
IndexOf(String s) :返回指定的子字符串第一次出现的索引位置。
lastIndexOf(String s):返回指定的子字符串最后一次出现的索引位置。
subString(int num):返回从指定的索引开始的、当前字符串的一个子字符串。
java.lang.StringBuffer和java.lang.StringBuilder:sufferbutter类是为了可变的字符串而单独使用的。StringButter中的方法是同步的,这使得StringButter适合在多线程中使用。
基本类型包装器。
java并非所有的内容都是类,还有一些基本类型,例如,int,long,float,double.可以使用java。util.connection对象来存储类。
java.lang.class
每次JVM创建一个对象时,也可以创建一个java。lang.class对象来描述该对象的类型。
java.lang.System.system
是一个final类,它能帮助你完成常见任务的那些有用的静态字段和静态方法暴露了出来。System三个字段包括out, in, err。
字段表示标准的输出流,他默认的和控制台相同,而控制台是用来运行java应用程序的.
字段也表示一个printfsteram对象,输出也会从当前调用Java程序的地方通向控制台,其目的是显示那些应该立即引起用户主义的错误消息。
public static String getProperty(String key) 该方法返回指定的属性的值。指定的属性分为系统属性和用户属性。
java.lang.scanner
用对象来扫描一段文本,主要用于接收键盘输入,传递System.in来实例化Scanner类。
第六章
使用增强的for语句,不需要遍历就可以遍历一个数组或一个集合。
Arrays类提供了操作数组的静态方法。
asList返回数组所支持的固定大小的List。
binarySearch根据特定的键查找数组。
copyOfRange 根据最初数组的指定范围,创建一个新的数组。
copyOf创建具有指定长度的一个新的数组。
fill将指定的值赋给指定数组的每一个元素。
sort排序指定的数组的元素。
toString返回指定的数组的字符串表示。
一旦创建数组,不能修改其大小。如果想要修改其大小,,必须创建一个新的数组,并且使用旧的数组的值填充它。做到这一点的方式是,使用java.util.Arrays的copyof方法。
给main方法传入一个字符串数组,可以将参数当作java程序的参数输入,从而给main方法传递参数。
二分查找实例:
第八章
捕获异常。有两种类型的错误,编译错误和运行时错误。
捕获多个异常,如果捕获的异常都要由相同的代码来处理的话,java 7及其以后的版本允许在一个单个的catch语句块捕获多个异常。
try-with-resouece。很多java操作设计在使用完某种资源之后必须关闭它。在jdk之前,我们使用finally来确保一定会调用一个close方法。
java.lang.exception类,引发错误的代码可能会抛出任何类型的异常。
从方法中抛出一个异常。当捕获方法中的一个异常的时候,要处理方法之中所发生的错误。有两个选择,可以在该方法之中处理错误,从而安静地捕获异常而不需要通知调用者,或者,可以把异常抛回给调用者,让调用者来处理它。
用户定义地异常:可以通过子类化java.lang.Exception来创建用户定义地异常。
异常处理的注意事项,try语句强制带来一些性能损失。
第九章
装箱和拆箱:将基本类型装换为对应的包装器对象,或者进行相反的操作,这是可以自动发生的。
数字解析。一个java程序可能需要用户输入一个数字,这个数字将要进行处理或者作为一个方法的参数。
数字格式化,数字格式化使得数字更加具有可读性。
使用java。text.NumberFoemat进行数字解析。可以使用NumberFormat的parse方法来解析数字。
java.lang.Math.Math类是一个工具类,它提供了进行数学计算的静态方法。还有两个进行数学计算的静态字段:E和PI。
生成随机数。java.lang.Math类的random方法更容易使用一些。
Java for Android 第三周学习总结的更多相关文章
- 20175329 2018-2019-3《Java程序设计》第三周学习总结
学号 20175329 2018-2019-3<Java程序设计>第三周学习总结 教材学习内容总结 第四章 第四章主要介绍JAVA中的类与对象的划分,其中有很多复杂的概念以及知识点需要花很 ...
- 20145213《Java程序设计》第三周学习总结
20145213<Java程序设计>第三周学习总结 教材学习内容总结 正所谓距离产生美,上周我还倾心于Java表面的基础语法.其简单的流程结构,屈指可数的基本类型分类,早已烂熟于心的运算符 ...
- 20145330《Java程序设计》第三周学习总结
20145330 <Java程序设计>第三周学习总结 第三周知识的难度已经逐步上升,并且一周学习两章学习压力也逐渐加大,需要更高效率的来完成学习内容,合理安排时间. 类与对象 对象(Obj ...
- 20145337《Java程序设计》第三周学习总结
20145337 <Java程序设计>第三周学习总结 教材学习内容总结 类与对象 类与对象的关系:要产生对象必须先定义类,类是对象的设计图,对象是类的实例.我觉得在视频中对类与对象关系的描 ...
- 20145218 《Java程序设计》第三周学习总结
20145218 <Java程序设计>第三周学习总结 教材学习内容总结 定义类 编写程序要产生对象就要先定义类.类是对象的设计图,对象是类的实例.类定义时使用class关键词,建立实例时, ...
- 《Java程序设计》第三周学习总结
20145224-陈颢文 <Java程序设计>第三周学习总结 教材学习内容总结 一.定义类: ·类定义时使用class关键字,要对类中变量(值域成员/对象数据成员)行类型声明. class ...
- 20155304 2016-2017-2 《Java程序设计》第三周学习总结
20155304 2016-2017-2 <Java程序设计>第三周学习总结 教材学习内容总结 第四章 类与对象 定义: 对象(Object):存在的具体实体,具有明确的状态和行为. 类( ...
- 201521123038 《Java程序设计》 第三周学习总结
201521123038 <Java程序设计> 第三周学习总结 1. 本周学习总结 附大图链接 http://naotu.baidu.com/file/5774caa2be710afbc0 ...
- 201521123072《java程序设计》第三周学习总结
201521123072<java程序设计>第三周学习总结 标签: java学习 1. 本周学习总结 2. 书面作业 1,代码阅读 public class Test1 { private ...
随机推荐
- 编写ROS程序--HelloROS
<机器人操作系统浅析>ch3学习记录 A Gentle Introduction to ROS 3.1 创建工作区(工作空间)和功能包 创建工作空间 ~/ros 我们称之为工作区目录 在工 ...
- Mac os x下几款mysql客户端
Mac os x几款mysql客户端 1,Navicat 这是一款可支持多种数据库的客户端,可支持mysql,sqlite,oracle,sql server等数据库.当然也可以选择只支持某种数据库的 ...
- Socketserver的源码分析
Socketserver的源码分析
- EntityFramework6之原生SQL
原文:https://www.cnblogs.com/wujingtao/p/5412329.html 用EF执行SQL又比ADO.NET方便,特别是在执行查询语句的时候,EF会把查询到的数据自动保存 ...
- char *p[] 和char**的思考
char *p[] = {"hello","world"}; char **pp; pp = p; printf("%s,%s\n",*pp ...
- 记录一个nginx的配置
rt #user xiaoju; worker_processes ; #error_log logs/error.log notice; #error_log logs/error.log debu ...
- neo4j-cypher
cypher查询务必在需要查询的节点上加上标签,否则数据量一大查询就会非常慢(在查询时必须设置实体标签,否则不走索引),另外Neo4j索引做好了查询的优化基本上就完成了80%.需要注意index是建立 ...
- js实现多个小球碰撞
实现思路:小球的移动,是通过改变小球的left和top值来改变,坐标分别为(x,y)当x/y值加到最大,即加到父级的宽度或者高度时,使x值或者y值减小,同理当x值或者y值减到最小时,同样的使x值或者y ...
- sql查找某一列中某一数值出现次数大于3的记录的前3条
SELECT * FROM table GROUP BY column HAVING COUNT(column)>=3 ORDER BY column DESC LIMIT 0,3;
- MySQL/Oracle数据库优化总结
MySQL数据库优化的八种方式 1.选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快.因此,在创建表的时候,为了获得更好的性能 ...