学号:201621123032 《Java程序设计》第1周学习总结
1:本周学习总结
- JDK,JRE,JVM三者的含义和关系。JDK是java开发工具包,包含了java的运行环境,java工具和类文库。例如java、javac、jar、、、、可以把 .java编译成.class。 JRE是java的运行环境, 发挥跨平台作用,执行.class文件。JVM是java的虚拟机,是字节码的运行环境。所以JDK包含了JRE,JRE包含了JVM.
- 本周还学了markdown的基本语法,对比暑假多用了一个表格的写法。
- 本周还学程序如何进行输入,初步了解了Scanner这个类。
2:书面作业
1:虚拟机
1.1 执行java程序的步骤是什么?为什么java程序可以跨平台运行?
关于用记事本执行java程序
- 配置jdk,创建记事本,编写源代码文件,以.java结尾,不能执行。
- 用命令javac命令编译成字节码文件,会出现以.class结尾的文件。
- 用java +字节码文件名称,来运行字节码文件。 注意java命令后不能加文件后缀。
关于ecplise如何执行java:
- 创建java项目,点击新建java project。
- 创建程序包,点击新建package。
- 编写java源程序,点击新建class源代码文件。
- 运行java程序。
java源文件不能直接运行,而是被编译为字节码文件,字节码文件是虚拟机中进行运行。每个系统平台都有自己的虚拟机,虚拟机与平台无关,所以才能做到跨平台。
1.2 什么是jdk?jdk, jre, jvm的联系是什么?
jdk是java开发工具包,包括jre和其他开发工具。jdk本身包含jre,jvm又是jre的一部分。
2:java与javac
2.1 java HelloWorld命令中,这条命令的含义是什么?HelloWorld这个参数指的是什么?
对源文件用javac进行编译为字节码文件,使用java HelloWorld 这条命令去解释运行字节码文件。HelloWorld这个参数指的是类名。
2.2 Path变量有什么用?
pah是指定命令搜索路径,在用java编译文件时,会到path变量目录里寻找相应的程序,并执行。
2.3 使用java编写程序并运行与使用c语言编写程序并运行的步骤和生成的中间文件、目标文件有什么不同?
java会生成java文件和中间文件class文件。
c则是建立源代码,生成.cpp的文件,编译生成.o文件,最后生成可执行文件.exe
3:实验总结:
3.1 PTA中怎么处理输入?怎么进行格式化输出?
要进行输入,程序开头应有<import java.util.Scanner>
;加载Scanner这个类。2.要写入Scanner sc = new Scanner(System.in);
,Scanner是一个类,in是对象,用于构建新的输入对象。
关于next()和nextLine()的区别
next()一定要读取到有效字符后才可以结束输入,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其去掉,只有在输入有效字符之后,next()方法才将其后输入的空格键、Tab键或Enter键等视为分隔符或结束符。简单地说,next()查找并返回来自此扫描器的下一个完整标记。完整标记的前后是与分隔模式匹配的输入信息,所以next方法不能得到带空格的字符串。
而nextLine()方法的结束符只是Enter键,即nextLine()方法返回的是Enter键之前的所有字符,它是可以得到带空格的字符串的。
格式化输出:要进行格式化输出要输入格式说明符。
类型转换字符
d 整数型(10进制 )
e 浮点数(科学计数)
c Unicode字符
x 整数(16进制)
b Boolean值
h 散列码(16进制)
s String
% 字符"%"
f 浮点数(10进制)
3.2pta(取数字)实验总结
int i=Integer.parseInt(str);
将字符转换为整型。
对数值进行判断,符合条件的情况下,Integer.toBinaryString(i)
将数字转换为二进制,Integer.toOctalString(i)
将数字转换为八进制,Integer.toHexString(i))
将数字转换为十六进制。
采用求余取余的方式来将数字提取并求和:需要先创一个数组,把取出来的数,依次放入数组中,然后需要从后往前打印。
需注意的问题:
print
和println
的不同,否则会导致答案格式错误。- 输入是进行循环输入,利用while循环。
- 记得导入Scanner这个类。
- 最后求和要清零,因为我们进行的是多次输入,没清零会导致第二次输入的数,取出来的数也加在第一个和上。
- 负数需要转换为正数,在提取。
3.3pta(取数字浮点数)实验总结
- 输入字符串,采用for循环,对输入的字符一次遍历。
- 利用
Character.isDigit(s.charAt(i)
来判断字符是不是数字。 - 如果是数字,用
b=Integer.parseInt(s.charAt(i)+"")
将下标为i的字符转化为int型赋给b。
采用这样的方法不需要管是不是负数,负号会被看成字符。
3.4pta(开根号)
while(Math.pow(b,2)<a&& Math.abs(a-Math.pow(b, 2))>0.0001){
b=b+0.0001;
}
本题应先理解题目意思,理解什么是逐步逼近法。
根据题目要求,我们不能用Math.sqrt(m)
函数。而是用逐步逼近法,所以用Math.pow()
函数,用Math.abs()
函数求绝对值。
- 输入的数应该是double形的,所以sc.nextInt应改为 sc.nextDouble。
- 注意打印格式与之前的不同。
- 注意
nextDouble
和nextInt
的不同。
nextDouble的作用
针对Scanner类的方法,下一个double类型的输入
从Scanner的输入流,读取一个字符串,并假设这个字符串符合数字格式,然后将它转换成双精度的浮点数比如输入是字符串"12.9"那么返回值就应该是 double类型的 12.9。
3.5pta(二进制的前导的零)
while(a/2!=0){
a=a/2;
k++;
}
sum=32-k-1;
System.out.println(sum);
本题难度不大,先求输入的数换为二进制后有几位,即不断的除2,直到为0,然后在用32减去位数,就是结果。
需注意的几个问题:
- 如果输入的数是负数;
- 如果输入的是0,因为特殊性,所以应该32都是0。
4:Java主要应用在那几个方面?你对自己在这门课的目标与期许是什么?
java应用于java游戏,手机的Android,web的开发等。
学习目标 |
---|
每周打300行代码 |
一天花2个小时左右,一周大概15小时左右 |
学习方式:多打代码,不会的先自己思考,借助资料,在去问别人,不过分依赖别人 |
3:使用码云管理Java代码
1:GIT使用
1.1:在码云上建立你的项目
1.2:同步到本机后,建立exp1包,编写HelloWorld
1.3:推送到远程仓库
1.4:统计-Commits历史-设置时间段
- 一开始用https模式,无法上传到远程仓库,所以我百度换到了ssh模式,但是现在不知道可以通过什么命令换回https模式,没百度到。
2:截图PTA提交列表
3使用学姐、学长开发的jar程序统计每周的代码量
周次 | 总代码量 | 新增加代码量 | 总文件夹 | 新增加文件夹 |
---|---|---|---|---|
1 | 114 | 114 | 11 | 11 |
学号:201621123032 《Java程序设计》第1周学习总结的更多相关文章
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 学号20145303 《Java程序设计》第一周学习总结
学号20145303 <Java程序设计>第一周学习总结 教材学习内容总结 *dos命令行: dir:列出当前目录下的文件及文件名 md:创建目录 rd:删除目录.为空时文件夹(文件夹为空 ...
- 学号20145322 《Java程序设计》第一周学习总结
学号20145322 <Java程序设计>第一周学习总结 教材学习内容总结 Java诞生于Sun公司,于1998年12月4日发布J2SE,约以两年为一周期推出重大版本更新. 2010年Or ...
- 201521123061 《Java程序设计》第九周学习总结
201521123061 <Java程序设计>第九周学习总结 1. 本周学习总结 2. 书面作业 本次PTA作业题集异常 1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1 ...
- 201521123038 《Java程序设计》 第九周学习总结
201521123038 <Java程序设计> 第九周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 ...
- 201521123045 <java程序设计>第11周学习总结
201521123045 <java程序设计>第11周学习总结 1. 本周学习总结 2. 书面作业 2. 书面作业 Q1.1.互斥访问与同步访问完成题集4-4(互斥访问)与4-5(同步访问 ...
- 20175313 张黎仙《Java程序设计》第九周学习总结
目录 学号 20175313 <Java程序设计>第九周学习总结 一.教材学习内容总结 二.教材学习中的问题和解决过程 三.代码托管 四.心得体会 五.学习进度条 六.参考资料 学号 20 ...
- 20175227张雪莹 2018-2019-2 《Java程序设计》第九周学习总结
20175227张雪莹 2018-2019-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十一章 JDBC数据库操作 MySQL数据库管理系统 下载安装MySQL 若下载的是 ...
- 2018-2019-3《Java程序设计》第二周学习总结
学号20175329 2018-2019-3<Java程序设计>第二周学习总结 教材学习内容总结 第二三章与我们所学习的C语言有很多的相似点,在这里我想主要就以我所学习的效果来讨 ...
- # 20175329 2018-2019-2 《Java程序设计》 第二周学习总结
学号 2018-2019-3<Java程序设计>第二周学习总结 教材学习内容总结 第二三章与我们所学习的C语言有很多的相似点,在这里我想主要就以我所学习的效果来讨论一下JAVA与 ...
随机推荐
- html点小图看大图最快捷的方法
方法一: <td> <a href="{$vo.show_img}" target="_blank"><img style=&qu ...
- 用python帮朋友刷帖
0x0前言: 答应了一个朋友帮他刷贴,自己用python写了一个脚本刷. 虽然行为不好..但是缺钱用... 0x01准备: splinter模块: chrome浏览器驱动 0x02开始: 1.进入百度 ...
- 1.17学习jquery权威指南
1.ajax方面(东西比较杂,很多相关于.net挂钩的服务器端接触没有实际操作,全部放进来,或许以后当作demo使用) ¥(“body”).load("text.txt"); ...
- 【CJOJ P2110】YL杯超级篮球赛
[CJOJ P2110]YL杯超级篮球赛 Description 一年一度的高一YL杯超级篮球赛开赛了.当然,所谓超级的意思是参赛人数可能多于5人.小三对这场篮球赛非常感兴趣,所以一场都没有落下.每天 ...
- js实现对树深度优先遍历与广度优先遍历
深度优先与广度优先的定义 首先我们先要知道什么是深度优先什么是广度优先. 深度优先遍历是指从某个顶点出发,首先访问这个顶点,然后找出刚访问这个结点的第一个未被访问的邻结点,然后再以此邻结点为顶点,继续 ...
- 【noip模拟】修长城
Time Limit: 1000ms Memory Limit: 256MB Description 大家都知道,长城在自然条件下会被侵蚀,因此,我们需要修复.现在是21世纪,修复长城的事情当然 ...
- 空间金字塔池化(Spatial Pyramid Pooling, SPP)原理和代码实现(Pytorch)
想直接看公式的可跳至第三节 3.公式修正 一.为什么需要SPP 首先需要知道为什么会需要SPP. 我们都知道卷积神经网络(CNN)由卷积层和全连接层组成,其中卷积层对于输入数据的大小并没有要求,唯一对 ...
- JWT实战:使用axios+PHP实现登录认证
上一篇文中,我们学习了什么是JWT(Json Web Token),今天我们来结合实例给大家讲述JWT的实战应用,就是如何使用前端Axios与后端PHP实现用户登录鉴权认证的过程. 查看演示 下载源码 ...
- kubernetes实践之运行aspnetcore webapi微服务
1.预备工作 unbuntu 16.04 and above docker kubernetes 集群 2.使用vs2017创建一个web api应用程序,并打包镜像到本地. 3.推送本地镜像到doc ...
- 基于I2C总线的MPU6050学习笔记
MPU6050学习笔记 1. 简述 一直想自己做个四轴飞行器,却无从下手,终于狠下决心,拿出尘封已久的MPU6050模块,开始摸索着数据手册分析,一步一步地实现了MPU6050模块的功能,从MPU60 ...