学号20175313 《程序设计中临时变量的使用》第八周

目录

  • 程序设计中临时变量的使用

    • 一、题目要求
    • 二、运行结果截图
    • 三、遇到的问题及其解决方法
    • 四、代码链接
    • 五、心得体会

程序设计中临时变量的使用

一、题目要求

  //定义一个数组,比如
  int arr[] = {1,2,3,4,5,6,7,8};

  //打印原始数组的值
  for(int i:arr){
      System.out.print(i + " ");
  }
  System.out.println();

  // 添加代码删除上面数组中的5
  ...

  //打印出 1 2 3 4 6 7 8 0
  for(int i:arr){
      System.out.print(i + " ");
  }
  System.out.println();

  // 添加代码再在4后面5
  ...

  //打印出 1 2 3 4 5 6 7 8
  for(int i:arr){
      System.out.print(i + " ");
  }
  System.out.println();

二、运行结果截图

  • 原结果截图:

  • 由于屏幕原因,为了更清楚、直观的呈现运行结果,我对输出的结果格式进行了一些修改,修改后运行结果如下:

三、遇到的问题及其解决方法

  • 问题1:对于ArrayInsect这个类中的Insect函数的实现,出现了如下问题:

  • 解决方法:对于为什么输出到后面变成了“666”,起初我查看了上面删除输出的结果,是正确的;那么出现这个问题的原因只能是出在Insect这个方法上,我查看了我的Insect方法,在对它进行调试,终于找到了问题的所在。原因是因为对index后面的元素进行移位时,应该先从最后一个开始移,否则就会被覆盖,出现输出全是同一个数的情况。所以我对代码进行如下修改:

  • 问题2:针对问题1,对代码进行修改后,又出现了溢出的问题。
  • 解决方法:仔细分析我新改的那几条语句,发现下标是i+1,那么当i=length-1时,i+1=length,但是该数组下标最大为length-1,所以会出现溢出,应该把i的初值改为length-2。
  • 修改后运行结果截图:

四、代码链接

五、心得体会

  • 认真审题很重要。起初我没有认真看题目要求的输出结果,以为删除完“5”后,输出的结果应该是“1 2 3 4 6 7 8”,所以就一直在想要怎么改变一个静态数组的长度,结果毫无疑问是失败。后来我又认真进行比对,才发现要求的输出是“1 2 3 4 6 7 8 0”。
  • 不要太自负。刚开始看到这道题,我感觉这种题应该很简单,半个小时肯定能做完。然而这种自负的后果就是:首先看错题,其次又不注意细节,产生多次溢出,浪费了大量的时间。

原文地址:https://www.cnblogs.com/xiannvyeye/p/10738246.html

时间: 2024-10-08 21:59:04

学号20175313 《程序设计中临时变量的使用》第八周的相关文章

学号20175313 《Arrays和String单元测试》第八周

目录 Arrays和String单元测试 一.String类相关方法的单元测试 二.Arrays类相关方法的单元测试 三.测试过程中遇到的问题及其解决方法 四.码云链接 五.参考资料 Arrays和String单元测试 一.String类相关方法的单元测试 测试结果截图: 1. charAt方法测试 正常情况 边界情况 异常情况 测试代码: import junit.framework.TestCase; import org.junit.Test; public class testStrin

20175316 盛茂淞 Arrays和String单元测试

Arrays和String单元测试 具体描述: 在IDEA中以TDD的方式对String类和Arrays类进行学习 测试相关方法的正常,错误和边界情况 String类 charAt split Arrays类 sort binarySearch 提交测试代码和运行结果截图,加上学号水印,提交码云代码链接. 内容: 1.String类 String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的final类,不能有类.St

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

学号 20175313 <Java程序设计>第八周学习总结 一.教材学习内容总结 第十五章主要内容 了解String类 常量对象:常量池中的数据在程序运行期间再也不允许改变. String对象:用户无法输出String对象的引用. 例如: String s = new String("i am a student"); System.out.pintln(s);//输出对象的实体 可以用s.toString()来返回对象引用的字符串 表示. 输出:i am a studen

第八周总结&amp;实验报告六

实验六 Java异常 实验目的 理解异常的基本概念: 掌握异常处理方法及熟悉常见异常的捕获方法. 实验要求 练习捕获异常.声明异常.抛出异常的方法.熟悉try和catch子句的使用. 掌握自定义异常类的方法. 实验内容 编写一个类,在其main()方法中创建一个一维数组,在try字句中访问数组元素,使其产生ArrayIndexOutOfBoundsException异常.在catch子句里捕获此异常对象,并且打印"数组越界"信息,加一个finally子句,打印一条信息以证明这里确实得到

学号20182325 《程序设计与设计结构》 第八周学习总结

学号20182325袁源 <数据结构与面向对象程序设计>第8周学习总结 教材学习内容总结 排序.算法.栈.队列 插入排序.交换排序,选择排序.基数排序.归并排序 用时间效率.空间效率.稳定性(数值相等次序不变)衡量算法. 树:由n个结点组成的有限集合 n=0为空树 非线性结构 DNS: 一对多:有且仅有一个前驱:有多个后继 每个结点都有且仅有一条通往根结点的路 度:子树数 叶:0度 可分层 遍历树 存储结构 1.双亲表示法 2.孩子表示法 3.双亲孩子表示法 2.可用链表与数组实现 教材学习中

20145301 《Java程序设计》第八周学习总结

20145301 <Java程序设计>第八周学习总结 教材学习内容总结 第十五章部分 - 通用API 通用API 日志: 日志对信息安全意义重大,审计.取证.入侵检测等都会用到日志信息 Logger java.util.logging包提供了日志功能相关类与接口,使用日志的起点是logger类,Logger类的构造函数标示为protected,不是java.util.logging同包的类不能直接以new创建,必许使用Logger的静态方法:名称空间层级相同的Logger,父Logger组态会

20145311 《Java程序设计》第八周学习总结

20145311 <Java程序设计>第七周学习总结 教材学习内容总结 第十四章 NIO与NIO2 高级的输入输出处理,可以使用NIO(New IO),NIO2是文件系统的API 第十五章 通用API 15.1日志 15.1.1日志API 使用日志的起点是Logger类,要取得Logger类,必须使用Logger的静态方法getLogger(),Logger.log()方法可以用来输出信息. 默认的Logger还会记录时间.类.方法等信息,Logger是记录信息的起点,还会经过一些过滤才会输出

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

20155336 2016-2017-2<JAVA程序设计>第八周学习总结 教材学习内容总结 第14章 NIO与NIO2 NIO简介 NIO使用频道来衔接数据结点,在处理数据时,NIO可以让你设定缓冲区容量,在缓冲区中对感兴趣的数据区块进行标记,像是标记读取位 置.数据有效位置,对于这些区块标记,提供了Clear().rewind().flip().compact()等高级操作. NIO2简介 NIO2文件系统API提供一组标准接口与类,应用程序开发者只要基于这些标准接口与类进行文件系统操作,

20172325 2017-2018-2 《Java程序设计》第八周学习总结

20172325 2017-2018-2 <Java程序设计>第八周学习总结 教材学习内容总结 1.关于绑定 绑定:在执行程序时产生一个请求事件,需要执行一段代码来来完成方法调用,即一个方法调用与一个方法定义的绑定. 后绑定:后绑定就是延迟绑定的情况.(后绑定的效率低于编译阶段的绑定效率) 2.由继承实现多态性 一个引用变量可以指向由继承关系的任何类的任何对象: 实际将调用的方法版本取决于对象的类型而不是引用变量的类型: 3.利用接口实现多态性 接口引用变量可以指向实现该接口的任何类的任何对象

学号20172328《程序设计与数据结构》第九周学习总结

学号20172328<程序设计与数据结构>第九周学习总结 教材学习内容总结(异常和递归) 第11章:异常 1.[异常处理]: 一个异常:是一个定义非正式情况或错误的对象,由程序或者运行时环境抛出,可以根据需要捕获和处理. 错误:错误类似于异常,但是错误代表不可恢复的问题并且必须捕获处理. 2.[处理异常的三种方法]:①根本不处理异常②当异常发生时处理异常③在程序的某个位置集中处理异常. 3.[未捕获的异常]:如果程序中不处理异常,则程序将非正常的终止运行,并产生关于描述在何处发生什么异常的信息