20145319 第二周学习总结

20145319 《Java程序设计》第二周学习总结

教材学习内容总结

本周学习教材第三章,本章主要讲述了java语言中的一些基础语法,大致包括java语言中的类型,变量,运算符,流程以及基础语法等。

1. 类型

基本类型(每种类型都有其储存范围,如超出范围,即Overflow):

  1. 整数:可分为short整数(占2字节),int整数(占4字节),long整数(占8字节)三种,例如,int类型的十进制2其实是以000000000 00000000 00000000 00000000 00000010形式存储在内存中。且所占字节越多的整数类型可表示的整数范围越大。
  2. 字节:即byte类型(占1字节),多用于图像处理,编码处理,也可表示整数,其范围为-128~127
  3. 浮点数:可分为float浮点数(占4字节),double浮点数(占8字节)主要用来储存小数
  4. 字符:char类型(占两字节),用来储存字符符号,如‘亚’ ‘索’。
  5. 布尔:boolean类型,表示true和false。

类类型:详见第四章

2. 变量

  1. 使用前要声明变量类型,即使用上文所提到过的short,byte,char等关键词来声明
  2. 不可以数字开头,不可使用特殊字符,常用“驼峰式”命名法,如“int ageOfStudent”
  3. 在调用变量之前,要对变量初始化,即给变量赋值。ps:如果,在变量赋值后,不打算改变可以加上final,例如final char mid=‘劫‘;来防止自己或他人不经意修改
  4. tips:在表示数字常量时,0b表示二进制数,0x表示十六进制数,如int a=0xC,在表示较长的数字时,使用下划线可以使表达更加清楚。如int b=0b1010 _1010 _1010

3. 运算符

  1. 条件运算符(Conditional Operator):条件式?成立返回值:失败返回值。如System.out.println("是否及格?%d%n", score>=60?‘yes‘:‘no‘)
  2. 在逻辑运算符中,&&的特点在于如果&&左边为假,则不论右边真值如何,其逻辑判断返回结果为假;同样的,||的特点在于如果||的左边为真,则不论右边真值如何,其逻辑判断返回结果为真。这在一定的程度上还是能提高代码的编译执行效率。

4. 类型转换

  1. 在实际操作中无论是刻意修改还是无心之失,都会出现将变量类型混淆的情况。例如,在默认情况下,整数均为int型,浮点数为double型。像在如下例子中 float PI = 3.14,3.14默认为double型,不能把double型的小数赋给float型,这样就会丢失精度,编译时就会报错。
  2. 运算时,类型不相同,则运算时会以最长的类型为主。

5. 流程控制

  1. if……else:类比c语言
  2. switch:使用效果类似多个if……else语句连用,但是更为简洁,通过不同的switch值进入case语句。
  3. for:写成for( ……; ……; ……),第一个分号前内容多为变量初始化。第一个分号后为判断,结果为true执行第二个分号后的语句并进入循环,结果为false则结束循环
  4. while:while(条件式){描述句},先判断条件式是否成立,如果成立,则执行描述句。也可以while(true)直接进入循环,在循环内通过if语句判断,达成某种情况依靠break;结束循环
  5. break、continue:break为直接结束循环,continue为结束当前循环,跳过之后的描述语句,然后返回开头进行下一轮循环。break、continue还可以配合标签使用,具体过程将在程序实践中展示。

教材学习中的问题和解决过程

  • 在学习break、continue配合标签使用时,书上的描述并不是很能让人理解,不大能明白break、continue和标签组合的区别所在,所以只能自己编写程序实验,反复编译后才弄明白它们之间的区别
  • java语言和c语言中有许多地方都存在相似之处,但是在c语言中printf("%0.2lf", d);表示把double定义的d精确到两位小数输出,但在java语言中printf("0 and 0 %5d%n",  0&0);表示在输出“0 and 0”之后空五格输出0&0的答案,不知道在java语言中,想要将答案精确到某一位小数后输出应该怎么表示?

代码调试中的问题和解决过程

break、continue配合标签使用

  1. 代码:

2.  运行结果:

如果continue back1即没有任何结果,输出“helloworld”指令跳过,若continue back2则输出“helloworld”九次

3.  结论:在此并未贴上break和标签组合的代码,但是通过实际操作还是弄清楚了continue和break与标签组合之间的区别。如,continue中back必须设定在进入循环的前一步……

课后作业题1

  1. 代码:

2.  运行结果:

3.  思路:思路非常清晰,就是密码数学基础中所学到的辗转相除法,在此通过while语句来实现循环,最后当余数为0时结束循环,a即为它们的最小公因子(ps在初始化时,记得事先给yushu变量赋值,这样才能顺利进入while循环)

课后作业题2

  1. 代码:

2.  运行结果:

3.  思路:最基本的思路就是使用for语句,通过穷举来找出100~1000中的阿姆斯特朗数,唯一的难点就是将i的个位十位百位上的数分离出来,所以将a,b,c都定义为int型,所以在除法中,即使遇到除不尽的数也会自动取整,从而达到目的将个位十位百位上的数分离出来。

其他(感悟、思考等,可选)

  • java中基础语法和c语言中基础语法并没有太大区别,所以可以类比学习,则会事半功倍
  • 对于书上描述感觉模糊不清之处,或者碰到自己左右摇摆不能确定的地方,还是通过与实践相结合的方式来学习效果会更好,即多动手,这样印象也会更深刻

学习进度条

|


代码行数(新增/累积)


博客量(新增/累积)


学习时间(新增/累积)


重要成长


目标


3500行


28篇


300小时


第一周


150/150


1/1


20/20


第二周


200/350


2/2


40/40


第三周


第四周

参考资料

时间: 2024-10-23 01:01:32

20145319 第二周学习总结的相关文章

20155336 2016-2017-2《JAVA程序设计》第二周学习总结

20155336 2016-2017-2 <JAVA 程序设计>第二周学习总结 教材学习内容 1: GIT版本检测 2: JAVA中基本类型 整数 字节 浮点数 字符 布尔(▲) 通过API可以得知各个类型可存储的数值范围 public class Range {public static void main(String[] args){ //byte.short.int.long的范围 System.out.printf("%d~%d%n", Byte.MIN_VALU

20145301第二周学习总结

20145301第二周学习总结 教材学习内容总结 3.1 类型.变量与运算符 整数 short 2字节,int 4字节,long 8字节 字节 byte 1字节 浮点数 float 4字节,double 8字节 字符 char 2字节(包括字母.汉字) 布尔 boolean 不用在意它的存储空间(只有true/false) 注释 // 单行注释,/ / 多行注释 下图为各类型范围: 常量定义 final加在定义类型之前,表示定义的该变量将不能改变其值,如 final int a=10; 局部变量

20145326《Java程序设计》第二周学习总结

20145326<Java程序设计>第二周学习总结 教材学习内容总结 本周学习教材第三章,本章主要讲述了java语言中的一些基础语法,java是个支持面向对象的程序语言,但在正式进入面向对象支持语法的探讨前,对于类型.变量.运算符.流程控制等,这些各种程序语言都会有的基本语法元素,还是要有一定的基础.虽然各种程序语言都有这些基本语法元素,但千万别因此而轻忽它们,因为各种程序语言都有其诞生的宗旨与演化过程,对这些基本语法元素,也就会有其独有的特性. 1. 类型 在java的世界中,并非每个东西都

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

2017面向对象程序设计(Java)第二周学习总结 直系学妹学弟们好!额...不要问我为什么把学妹放前面,我也不知道!我只是你们和蔼可亲的学长一枚而已.也不要问为什么是第二周学习总结而不是第一周,因为第一周学长正在家里吃西瓜吹空调.好了,闲言少叙.我先为你们介绍一下助教的职责,而后再对你们的学习情况进行总结! 身为你们本学期Java课程的助教...之一,我的任务是:指导你们学习,批改我所负责学习小组的实验作业.阅读博文并回复.其他学习小组会有另外三位助教负责.由于我们每周五都会汇总你们的情况,其

20145311 《信息安全系统设计基础》第二周学习总结

20145311 <信息安全系统设计基础>第二周学习总结 教材学习内容总结 重新学习了一下上周的一部分命令:grep main wyx.c(grep的全文检索功能)ls > ls.txt :ls内容输出到文本find pathname -mtime -n/+nfind -size -n/+n (find的功能还是比较强大) 简单地学习了一下vim编辑器,跟着vimtutor简单地学了一些,在linux bash中使用vim能够极大地提高效率, vim的用法比较多,只学习了其中简单的一部分

201671010117 2016-2017-2 《Java程序设计》Java第二周学习心得

Java第二周学习心得 这一周老师在周四进行了课堂测验,完全出乎我的意料,我以为老师会在前两周上课讲一下,由于我在课前没有好好准备,反转课堂来的有的措手不及,那些题很多很多都不会,也错了很多,班上有很多表现很好的同学,他们课前准备充分,在课堂上完全没有任何压力,我也意识到了我课前没有花大量时间看书的严重性,所以我下课便去看第三章了,以后也一定要好好看书,找出不懂得问题,课上也要认真向其他优秀同学学习,不懂的问题也要想办法解决. 今天写了PPT上的任务1-9,着实也遇到了很多不会的问题,像是最后的

20165232 第二周学习总结

20165232 第二周学习总结 1:带包的代码如何编译运行 代码编写完毕后,先Javac编译,再用mkdir以打包文件的文件名创建一个新文件夹,之后将编写的字节码文件用co命令拷贝到新的文件夹中,最后再运行. 2:一些知识点总结 第三章基础语法 3.1 类型.变量与运算符 类型 基本类型:整数(short.int.long).字节(byte).浮点数(float.double).字符(char).布尔(boolean) 常用格式控制符号 运算符 ==表示相等,=是指定运算,%运算结果是除法后的

20165223《JAVA程序设计》第二周学习总结

20165223 <JAVA程序设计>第二周学习总结 教材学习内容总结 第二章要点 标识符与关键字 基本数据类型 类型转换运算 输入输出数据 数组 第三章要点 运算符与表达式 语句概述 if条件分支语句 switch开关语句 循环语句 break和continue语句 数组与for语句 教材学习中的问题和解决过程 标识符与关键字 标识符=名字:由字母.下划线.$.数字组成,长度不受限:第一个字符不能是数字字符:区分大小写:不能用关键字:不能是true.false.null java使用的语言:

20165303第二周学习总结

java基本数据类型 1)四种整数类型(byte.short.int.long): byte:8 位,用于表示最小数据单位,如文件中数据,-128~127 short:16 位,很少用,-32768 ~ 32767 int:32 位.最常用,-2^31-1~2^31 (21 亿) long:64 位.次常用 注意事项: int i=5; // 5 叫直接量(或字面量),即 直接写出的常数. 整数字面量默认都为 int 类型,所以在定义的 long 型数据后面加 L或 l. 小于 32 位数的变量