20145239杜文超 《Java程序设计》第2周学习总结
20145239 《Java程序设计》第2周学习总结
教材学习内容总结
第三章主要介绍了Java语言的基础语法。
要求我们认识类型与变量,学习运算符的基本使用以及了解类型转换、运用基本流程语法。 其中——
一、常量基本类型: 整数: short整数(2字节)、int整数(4字节)、long整数(8字节) 字节: byte类型(1字节,一般用于逐字节处理数据) 浮点数: float浮点数(4字节)、double浮点数(8字节) 字符: char类型(2字节) 布尔: boolean类型,表示true与false,分别代表逻辑的真与假。
二、变量: 将不确定的数据进行存储。
三、运算符: 算术运算符:加(+)、减(-)、乘(*)、除(/)、模数运算符(%) 比较运算符:大于(>)、小于(<)、不大于(<=)、不小于(>=)、等于(= =)、不等于(!=)。 逻辑运算:AND、OR、NOT、&&(AND)、||(OR)、!(NOT)。(| / &两边都运算,|| / &&左边为假时,右边不运算。)
四、流程控制: 判断结构:if-else语句。 选择结构:switch语句。 循环结构:while语句、do while语句、for语句。 其他语句:break,continue语句等。
教材学习中的问题和解决过程
(一)不知道各种类型可以储存的数值范围,想通过API来得知,根据书上的代码运行看到结果。
public class Range {
public static void main(String[] args) {
    //byte、short、int、long范围
    System.out.printf("%d~%d%n",Byte.MIN_VALUE,Byte.MAX_VALUE);
    System.out.printf("%d~%d%n",Short.MIN_VALUE,Short.MAX_VALUE);
    System.out.printf("%d~%d%n",Integer.MIN_VALUE,Integer.MAX_VALUE);
    System.out.printf("%d~%d%n",Long.MIN_VALUE,Long.MAX_VALUE);
    //float、double精度范围
    System.out.printf("%d~%d%n",Float.MIN_EXPONENT,Float.MAX_EXPONENT);
    System.out.printf("%d~%d%n",Double.MIN_EXPONENT,Double.MAX_EXPONENT);
    //char可表示的Unicode范围
    System.out.printf("%h~%h%n",Character.MIN_VALUE,Character.MAX_VALUE);
    //boolean的两个值
    System.out.printf("%b~%b%n",Boolean.TRUE,Boolean.FALSE);
}
}

(二)前面以为java中的println和C里的printf可能是同样的含义只是写法不同,但其实有很大差异,根据查资料和自己实验得知:
println是用于输出参数内容,然后换行,其参数个数固定为一个。
    printf是用于输出带各种数据类型的占位符的参数,其参数个数是不定的。且printf不能换行,必须加“\n”换行。
代码调试中的问题和解决过程
在运行如下代码时:

发现break的作用仅仅是跳出当前的这个循环,也就是内循环,然而这是一个嵌套for循环,如何利用break跳出任意指定的循环呢?
后来,根据视频我学到了一个新的语法,就是给循环带上标签,即:

这样,就可以利用break语句跳出任意循环了,这是我在C语言的学习里没有使用过的一个小技巧。
同时我也更深入的理解了break和continue的区别,但需要注意的是break和continue的使用范围。
还有当break和continue语句单独存在时,下面可以有如何语句,因为都执行不到。
其他(感悟、思考等,可选)
本以为java语言和C语言可能会有很大的不同,因为一个是面向过程,一个是面向对象,但经过这一周的学习我发现它们两个在语法上竟如此相似。因为对C语言的语法掌握基本过关,因此感到这一周的学习任务并不很吃力,让我很欣慰同时也激发了我对后面学习的好奇和热情,究竟是什么让它们成为两个完全不同的语言?不过有句俗话说:细节决定成败。java语法很多细节上还是有区别于C语言的,这种找不同的过程其实就是一种很好的学习方法。所有学习都是从模仿开始的,从模仿到熟练、再到改进、创新。希望自己可以不断激发学习java的热情并保持不断学习的动力。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 100/100 | 1/2 | 15/15 | |
| 第二周 | 200/300 | 1/3 | 12/15 | 
参考资料
20145239杜文超 《Java程序设计》第2周学习总结的更多相关文章
- 《Java程序设计》第二周学习总结
		
20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...
 - 20145239杜文超《网络对抗》- Web安全基础实践
		
20145239杜文超<网络对抗>- Web安全基础实践 基础问题回答 (1)SQL注入攻击原理,如何防御? SQL注入攻击就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查 ...
 - 20145239杜文超《网络对抗》- Web基础
		
20145239杜文超<网络对抗>- Web基础 基础问题回答 1.什么是表单? 表单是一个包含表单元素的区域. 表单元素是允许用户在表单中(比如:文本域.下拉列表.单选框.复选框等等)输 ...
 - 20145239杜文超《网络攻防》- MSF基础应用
		
20145239杜文超<网络攻防>- MSF基础应用 基础问题回答 1.用自己的话解释什么是exploit,payload,encode? exploit:实现攻击行为的主体,但没有载荷只 ...
 - 20145239杜文超《网络对抗》- shellcode注入&Return-to-libc攻击深入
		
20145239杜文超<网络对抗>- shellcode注入&Return-to-libc攻击深入 shellcode基础知识 Shellcode是一段代码,作为数据发送给受攻击服 ...
 - 20145239 杜文超 实验四 Android开发基础
		
20145239实验四 Android开发基础 实验内容 基于Android Studio开发简单的Android应用并部署测试 了解Android组件.布局管理器的使用 掌握Android中事件处理 ...
 - 20145213《Java程序设计》第九周学习总结
		
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
 - 21045308刘昊阳 《Java程序设计》第九周学习总结
		
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
 - 20145330孙文馨   《Java程序设计》第一周学习总结
		
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
 - 20145337 《Java程序设计》第九周学习总结
		
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
 
随机推荐
- Linux学习之十四-Linux文件和目录权限
			
Linux文件和目录权限 在Linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录. 通过设定权限可以从以下三种访问方式限制访问权限:只允许用户自己访问:允 ...
 - 【音乐App】—— Vue-music 项目学习笔记:项目准备
			
前言: 学习慕课网Vue高级实战课程后,在实践中总结一些这个项目带给自己的收获,希望可以再次巩固关于Vue开发的知识.这一篇主要梳理:项目概况.项目准备.页面骨架搭建.项目github地址:https ...
 - 2017.04.20 Adams仿真介绍
			
Adams 仿真 | 验证"隐性机器人模型"概念,提高视觉伺服精度 产品:Adams行业:科研优势: 1.Adams 仿真可精确预测机器人的位置和方位 2.仿真在理论工作验证中起着 ...
 - angular - 启用form组件
			
1.导入form组件 2.导出form组件 3.使用form组件
 - browsersync按照官网,然后本地配置后,动态监听时不起作用
			
官方API也未曾标注,要添加文件指向 --files 所以解决方案就是: browser-sync start --proxy "tp5.cn" --files "css ...
 - UNP学习笔记(第十四章 高级I/O函数)
			
本章讨论我们笼统地归为“高级I/O”的各个函数和技术 套接字超时 有3种方法在涉及套接字的I/O操作上设置超时 1.调用alarm,它在指定超时时期满时产生SIGALRM信号 2.在select中阻塞 ...
 - 转jmeter 性能测试 JDBC Request (查询数据库获取数据库数据) 的使用
			
JDBC Request 这个Sampler可以向数据库发送一个jdbc请求(sql语句),并获取返回的数据库数据进行操作.它经常需要和JDBC Connection Configuration配置原 ...
 - redmine 自己定义字段mysql表结构
			
redmine能够创建自己定义字段,我经经常使用它来满足不同的管理需求.如今来解读一下.看看这些自己定义字段是怎样存在mysql表中的. 表issues 用来存放issue的标准字段. mysql&g ...
 - LanguageImage尺寸
			
iPhone Portrait iOS 8-Retina HD 5.5 (1242×2208) @3xiPhone Portrait iOS 8-Retina HD 4.7 (750×1334) @2 ...
 - 跨平台.NET Core--微软开源方向
			
 跨平台.NET Core--微软开源方向 微软宣布.net开源已经有一段时间了,新的跨平台的.net框架叫.NET Core. 当前支持Windows/Linux/OSX/Docker.官网:h ...