20145229吴姗珊《Java程序设计》第二周学习总结
教材学习内容总结
一.类型、变量与运算符
1.类型
整数:可细分为short整数、int整数和long整数。不同长度的整数可储存的整数范围也不同。
字节:byte类型顾名思义。长度就是一字节,需要逐字节处理数据时则需要使用。用于整数时,可表示-128~127的整数。
浮点数:主要用来储存小数数值,主要分为float和double。
字符:char类型用来储存‘A','B','林'等字符符号。
布尔:boolean类型可表示true和false,分别表示真和假。
2.变量
基本规则:用关键词来声明各种类型的变量,其中byte、short、int、long为整数类型,float、double为浮点类型,char为字符型,boolean为布尔型。
字面变量:在Java中写下一个值,该值称为字面常数;要表示字符的话,必须使用“'”符号括住字符
数字常量表示法:在Java SE7之后,撰写整数或者浮点数常量时可以使用下划线更清楚的表示。想要以二进制表示则可以用0b作为开头。
在程序中看到//符号,这是java程序的单行批注,另一个批注的符号是/与/包括的多行批注。
3.运算符
1.算术运算
“+、-、*、/”;模数运算符:%;算数运算符使用上与学过的加减乘除一样,也是先乘除后加减。
2.比较、条件运算
大于(>),不小于(>=),小于(<),不大于(<=),等于(==),不等于(!=)。注意一个等号(=)是赋值运算的意思,例如x=y将y的值给x。而不是比较x、y是否相等。
3.逻辑运算
逻辑中所谓的且、或、反相也对应着java中&&(AND)、||(OR)、!(NOT)。其中有所谓的快捷运算:只要左操作数评估为false,就会直接返回false,对||来说,只要左操作数评估为true,就会直接返回true,就不会再去运算右操作数。
4.位运算
运算结果为位串(位向量),常用于掩码(Mask)运算。位运算是逐位运算,有左移<<、右移>>两个运算符
5.递增、递减运算
++或--写在变量前,表示先将变量值加减1,然后在返回变量值 a=++i相当于i=i+1;a=i;++或--写在变量后,表示先返回变量值,再对变量值加减1,a=i--相当于a=i;i=i-1;
二.类型转换
短->长(widening)是安全的,长->短(narrowing)必须强制转换
如果表达式中包括不同类型数值,则运算时以长度最长的类型为主,其他数值自动提升类型。
三.流程控制
顺序:计算机结构决定语句是顺序执行的,正常情况下都是顺序执行的
分支:分支用来处理异常情况的
循环:执行最常用的语句,这是计算机的特长
教材学习中的问题和解决过程
问题1:一开始不清楚“&”和“&&”的区别,觉得两者差不多
解决方式:询问同学同学也不太了解,后面看视频发现,原来&,左边无论真假,右边都进行运算;&&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
问题2:Byte与byte有什么区别
解决方式:通过询问同学和进行百度,Byte是包装类型,byte是基本类型,两个可以互相转换。包装类型默认是null。
代码调试中的问题和解决过程
由于在练习的过程中,其实还是按照书上的代码敲打的比较多一点,因为不太熟练所以主要以书上的为主。所以在练习的过程中,没有出现太大的问题,也不过是把符号打错或者是大小写没有分清楚,在以后的练习中最重要是的还是要细心,毕竟错了一个符号就不能成功的运行。
比如这个
最开始的编译并没有通过,显示有非法字符(如下图所示)。后面一遍遍核对才发现default后面的“:”没有用英文的冒号,所以导致编译不成功。证明在java中,与c语言相同的是都需要耐心与细心,一个小问题就能让整个程序运行不了。
其他(感悟、思考等,可选)
在这周的学习过程中,我觉得最大的收获就是一定要动手去做,这点与c语言很相同,发现不管书上的知识写得有多详细多具体,最终要能学到知识必须还是得在实践中出真理。可能刚开始,要我自己编写出很复杂的代码我的确不会,但是根据书上的一些代码,就算是练习书上的代码,通过理解去练习,也会学到很多java的一些小细节以及编译不成功时的一些常见的错误。
我相信,在继续的学习中,经常的练习,一定可以熟能生巧,然后自己也可以编写出正确的代码。在java中学到让自己终生受益的知识。
学习进度条
代码行数 |
博客量 | 学习时间 | 重要成长 | |
目标 |
5000行 |
48篇 | 400小时 | |
第一周 | 80行 | 1篇 | 15小时 |
在这一周的学习中,初步的学习让 我掌握了基本用法,有了基本概念 |
第二周 | 100行 | 1篇 | 17小时 | 在这一周的学习中,我对java的掌握越来越熟悉,也明白了很多其中的小技巧,更清楚了最重要的即是练习与细心 |
20145229吴姗珊《Java程序设计》第二周学习总结的更多相关文章
- 20145304 刘钦令 Java程序设计第二周学习总结
20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...
- 201521123063 JAVA程序设计 第二周学习总结
1.本周学习重点(2.27-3.5) java中的数组 以二维数组为例,数组名为scores,则 (1)先声明数组 int[][] scores;或int scores[][];或int[] scor ...
- 20145229吴姗珊 《Java程序设计》第9周总结
20145229吴姗珊 <Java程序设计>第9周总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交 ...
- 20145229吴姗珊 《Java程序设计》第8周学习总结
20145229吴姗珊 <Java程序设计>第8周总结 教材学习内容总结 第十四章 NIO与NIO2 NIO: InputStream.OutputStream的输入输出,基本上是以字节为 ...
- 20145229吴姗珊 《Java程序设计》第7周学习总结
20145229吴姗珊 <Java程序设计>第7周学习总结 教材学习内容总结 第13章时间与日期 即使标注为GMT(格林威治时间),实际上谈到的的是UTC(Unix时间)时间. 秒的单位定 ...
- 20145229吴姗珊 《Java程序设计》第6周学习总结
20145229吴姗珊 <Java程序设计>第6周学习总结 教材学习内容总结 第十章 输入\输出 1.java将输入\输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象 2.输入串 ...
- 20145229吴姗珊 《Java程序设计》第5周学习总结
20145229吴姗珊 <Java程序设计>第5周学习总结 教材学习内容总结 第八章 异常处理 1.设计错误对象都继承自java.lang.Throwable类 2.Java中所有错误都会 ...
- 20145229吴姗珊两天小总结 《Java程序设计》第4周学习总结
20145229吴姗珊两天小总结 <Java程序设计>第4周学习总结 教材学习内容总结 由于自己的基础不好对知识的理解不透彻,所以这两天的学习还是集中在第六章和第七章,对知识点多了一点理解 ...
- 20145229吴姗珊 《Java程序设计》第4周学习总结
20145229吴姗珊 <Java程序设计>第4周学习总结 教材学习内容总结 第六章 继承与多态 6.1继承共同行为 1.继承基本上就是避免多个类间重复定义共同行为 简单的类的定义 使用s ...
- 20145229吴姗珊 《Java程序设计》第3周学习总结
20145229吴姗珊 <Java程序设计>第3周学习总结 教材学习内容总结 第四章 认识对象 4.1类与对象 1.对象(Object):存在的具体实体,具有明确的状态和行为 2.类(Cl ...
随机推荐
- Word基本文档字体设置
另:段落行距选择:固定值:26/28
- shell统计一个文件里某行出现的次数并排序
话说有个aaa.txt文件,文件内容如下: aaaabbbbccccddddeeeeffffmmmmooooaaaaccccaaaabbbbddddaaaammmmbbbbaaaaoooo 然后面试题 ...
- 【优才原创】Android的拖放机制
优才网 [优才原创]Android的拖放机制 2016-04-18 优才学院 优才网 一.拖放机制概述 ² 拖放操作是手指触摸屏幕上的某一对象.然后拖动该对象.最后在屏幕的某个位置释放该对象并运行某种 ...
- springBoot+springCloud学习笔记
尊重原创:https://www.jianshu.com/p/492dfefa2735 SpringBoot 配置优先级 在命令行中传入的参数 如:java -jar storeMs.jar --se ...
- 精准 iOS 内存泄露检测工具
MLeaksFinder:精准 iOS 内存泄露检测工具 发表于 2016-02-22 | zepo | 23 Comments 背景 平常我们都会用 Instrument 的 Lea ...
- ActiveMQ与xml rpc
最近项目在做平台间的消息传递,也让我对平台间消息的传递进行了深一步的探讨.先叙述一下概况 公司上一个版本用的是winform做的监控软件,主要做设备的通信和控制,基本的连接如下
- justify-content 定义子元素在父元素水平位置排列的顺序
justify-content 定义子元素在父元素水平位置排列的顺序,需要和display:flex使用才会生效. 有五个属性: 1.flex-start(默认值) 左对齐 2.flex-end 右 ...
- mysql case then 语句
- SVN版本号控制软件-图片含义具体解释
转载请注明出处:http://blog.csdn.net/zhuwentao2150/article/details/51195154 自己定义SVN图标显示风格 SVN的图标是能够自己定义风格的 右 ...
- eclipse tasks
tasks可以在代码里增加标识,通过tasks view可以快速的找到这些标识的地方,有助于提高开发效率和代码管理. 通过Eclipse的 Window==>Show View==>Tas ...