《程序设计基础》学习总结

1223-202211671326 2022-12-13 22:02:54

1. 梳理总结学习过的知识点
1.1 数据类型、表达式
基本数据类型是指Java固有的数据类型,是编译器本身能理解的,可以分为数字型、布尔型和字符型。
数字型基本数据类型有6种
–boolean 布尔
–byte 字节
–short/int/long 短整数/整数/长整数
–float/double 浮点数
–char 字符
布尔型表示一个逻辑量,只有两个值true和false,它们不对应任何整数值。
字符型数据(char)用于存储单个自符,字符以代码形式存储。Java字符型数据类型是16位的,最小值0,最大值65535。
表达式由一系列的变量、运算符和方法调用构成,用于计算、对变量赋值,以及作为程序控制的条件。表达式的值由其中的各个元素决定,可以是基本数据类型也可以是对象类型。
1.2 程序结构
分支/选择结构是根据条件的成立与否决定要执行哪些语句的一种结构。
Java提供了两种分支结构语句:if语句和switch语句。其中if语句使用布尔表达式或布尔值作为分支条件来进行分支控制;而switch语句用于对多个整数值进行匹配,从而实现多分支控制。
循环结构是程序中的另一种重要结构。在实际应用中,当碰到需要多次重复地执行一个或多个任务的情况时,应考虑使用循环结构来解决。循环结构的特点是在给定条件成立时,重复执行某个程序段。通常称给定条件为循环条件,称反复执行的程序段为循环体。
Java程序设计中引入了循环语句。循环语句总共有三种常见的形式:while 循环语句、do-while循环语句和for循环语句。
1.3 数组应用
数组是一组具有相同类型或者类型兼容数据的集合,方便数据的管理和使用,是一种引用数据类型。简单来说数组是可以保存一组数据的一种数据结构,它本身也会占用一个内存地址,因此数组是引用类型。
一维数组声明格式常用:数据类型[ ] 数组名 或 数据类型 数组名[ ]
Java 语言中数组的使用非常灵活。按照所支持数据维度的不同,数组可以分为一维数组和多维数组(数组的维度可以简单理解为有几对中括号,例如:一维数组在声明的时候有一对中括号[],二维数组在声明的时候有两对中括号[][],以此类推);按照每一维数据的个数是否相同,数组可以分为规则数组和非规则数组(锯齿数组)。
数组中的5个重要概念:
    数组的名称(name),又称为数组名,代表一个数组。如a等。
数组中的元素(element),数组中的每一个数据,数据在数组中有序排列。
数组的类型(type),数组中每个数据的类型,通常是相同的类型。如int等。
数组的索引(index),访问数组中元素的序号,序号的索引位置从0开始。
数组的长度(length),数组中的元素个数,通过数组名.length 获取。
注意:索引是非负的整型常数或表达式,数组的索引从0开始,到数组的长度减1结束。如果索引小于0或者大于数组的长度减1时,则会出现运行时数组索引越界异常 ArrayIndexOutOfBoundsException。该索引也被称为元素在数组中的偏移位置。
数组中可以存放声明中的数据类型或者比声明数据类型小的类型,但是在使用数组中的元素时、都以声明中的数据类型操作数据。例如,在本例中,int类型或者比int类型小的数据类型数据(byte.short,char)可以放在该数组中,但是在使用时会自动转型成int类型后使用。
声明数组时,不能指定数组的长度(即数组中元素的个数):int[3]a是错误的。
一维数组
声明数组之后,数组中能存放多少个数据还不能确定,因为 Java 虚拟机(JVM)还没有为存储数组中的元素分配内存空间。
根据数组内存空间分配的不同方式,可以分为静态创建方式(int[ ] array =new int[ ]{1,2,3,4,5};//声明并初始化一个int类型的数组)和动态创建方式(int[ ] array = new int[10];)
静态初始化是指由程序员在初始化数组时为数组每个元素赋值,由系统决定数组的长度。
动态初始化是指由程序员在初始化数组时指定数组的长度,由系统为数组元素分配初始值。声明动态初始化数组时,其元素会根据它的数据类型被设置为默认的初始值。
1.4 类、方法

类在java中是一个非常重要的概念,会使用类,会创造类,是学好java的关键,首先类可以是java提供给我们的,比如说Arrays类,Scanner类,String类,Date类,Math类,Stream类,Collection类等等,这些java提供的类我们会发现里面有给好的方法,我们可以直接使用,但是更重要的是你是否会设计一个工具类,实体类来完成一些需求呢?这些才是最重要的。

方法是一个功能代码块,我是这么认为的,java提供的方法能实现一些功能,比如集合类里面有排序的方法,当然,我们也可以设计出这样的方法给我们使用,比如这一有一张纸,你就要会利用java来提供一把剪刀,来让它变成一个好看的图形。

2.PTA实践总结

2.1示例一

 

 

 2.2示例二

 

 

 

2.3在线评测系统使用感受
还行 一般出现错误会复制到idea进行测试再改正至正确 但有时会碰到非零返回和运行超时的情况不太会处理,之后会加强练习。容易出现忘记该类名。
3. 改进学习方法、措施落实情况(内容可扩展,至少包括以下项)
3.1 除课堂外,遇到不会的问题时会到哪个平台搜索
 CSDN、百度、github,向舍友求助
3.2 根据记录2个月的每天代码时长,利用excel绘制统计表
没有具体的记录,大概每天一小时左右,上机时间较少。
3.3 感觉个人的哪些方法还存在不足?哪些方面需要改进?
不能只满足于完成作业,要多上机练习。
4. 你知道csdn么,结合使用情况表述他的优点与不足
4.1 csdn给你的直观感受是什么?
一个很全面的库,适合计算机学习
4.2 csdn你感觉最不舒服的地方是什么?

有些时候找不到自己想要的信息
4.3 你还利用了哪些平台学习编程知识,他们是哪些网站或资源,优点是什么?
github bilibili 资源更多且通过视频的方式进行教学更加形象
5. 你认为影响你学习编程的主要阻力是什么?如何克服!
没有编程基础 觉得好像比较难学会 还有就是懒惰没有花足够的更多的时间在上面 逻辑能力不强
改变心态 多加练习 树立目标
6. 其它(针对课程的学习,请发挥)
暂无 老师教的挺用心的 基本每次上课前都会说说最近的一些同学反映的情况 会采取的一些改进措施等 很耐心的解释原因 感觉课程自己提前预习会更好跟上一些

 

...全文
106 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
CSDN-Ada助手 2023-01-13
  • 打赏
  • 举报
回复
您可以前往 CSDN问答-Java 发布问题, 以便更快地解决您的疑问

147

社区成员

发帖
与我相关
我的任务
社区描述
广东海洋大学 数学与计算机学院 信息管理与信息系统专业 《程序设计基础》 JAVA入门
java 高校 广东省·湛江市
社区管理员
  • CheXQ_gdou
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧