20182332 2019-2020-1 《数据结构与面向对象程序设计》第2,3周学习总结

20182332 2019-2020-1 《数据结构与面向对象程序设计》第2,3周学习总结

教材学习内容总结

第二章:

  • System.out.Printf&Println两种输出方法。

    • Printf(避免使用)&Print输出信息之后不换行,Println输出信息之后会将光标移动至下一行。
  • 字符串连接格式:
    • "String"+number+"String";
  • 转义字符:
转义字符 含义
\b 回退键
\t 制表符
\n 换行
\r 回车
" 双引号
单引号
?\ 反斜杠
  • Java是强类型语言,意味着不允许将与变量声明的类型不一致的值赋值给该变量。会编译错误。
  • 基本数据类型:
    类型 | 存储空间
    ---|---
    byte | 8位
    short | 16位
    int | 32位
    long | 64位
    float | 32位
    double | 64位
  • 字符数据的表示:
    • Java使用16位Unicode字符集表示字符数据。
      第三章:
  • new运算符返回新创建对象的引用。
  • String类方法部分记录:
    • String (String str)

      • 构造方法:用字符串str创建一个新的字符串对象。
    • char charAt (int index)
      • 返回位于指定index处的字符。
    • int compareTo (String str)
      • 根据字符串与str按字典序的相互次序返回一个整数值。如果该字符排在str之前,则返回负值;相等,则返回0;排在str之后则返回正值。
    • String concat (String str)
      • 将str连接在该字符串后,返回得到的这个新字符串。
  • 类库是一组支持程序开发的类,开发程序时类库非常有用,Java标准类库按包来组织。
  • Radom类:
    • Radom()

      • 构造方法:创建一个新的伪随机数生成器。
    • float nextfloat()
      • 返回0.0(含)~1.0(不含)之间的一个随机数。
    • int nextInt()
      • 返回int 类型范围(正数和负数)内的一个随机数。
    • int nextInt(int num)
      • 返回0~num-1之间的一个随机数。

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

  • NEW运算符的作用?

    • 解决:new 关键字用来在堆中申请空间,举例:
String str;

定义一个String类型的引用,但它只是一个引用,并没有实际在堆中分配空间,但使用如下代码时:

str = new String("Hello!");

就在堆中分配了空间。

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

  • 问题1:如何实现在字符串中截取至对应字符:

    • 解决方案:使用(.substring即可)
    public static void main(String[] args) {
    String str= "13:20.54";
    int s = str.indexOf(":");
    int l = str.indexOf(".");
    System.out.println(str.substring(s+1, l));
    } 

代码托管

上周考试错题总结

  1. Consider the following statement:

    System.out.println("1 big bad wolf\t8 the 3 little pigs\n4 dinner\r2night");

    This statement will output ________ lines of text (思考下面的语句,该语句将输出___行文本)

正确答案:2行

解析:

  • ?t转义字符插入一个制表符,但将光标留在同一行。
  • ?n转义序列导致产生新行,以便在下一行输出“ 4 Dinner”。
  • ?r使光标移回到左边界,没有开始新的行。所以在“ 4 dinn”上输出“ 2night”,从而导致第二行看起来像“ 2nighter”。
  1. The word println is a(n) (单词println是一个)
正确答案:A .method (方法) 

解析:

  • 类只是代码的组织结构,代码的执行是以方法为基础的。一个一个方法的执行。类是无法独立执行的。
  • java创建一个类,内部包含属性、静态块、构造器以及函数。
    System.out.println()不是这四种,方法可以运行在静态块、构造器以及函数中。
  1. Of the following types, which one cannot store a numeric value? (在下列数据类型中,哪一个不能存储一个数值型数据?)
正确答案:char

解析:

int和byte用于存储整数,float用于存储实数或浮点值(带小数点的值)。char存储单个字符,包括字母、标点符号和数字。然而,存储数字“5”不同于存储数字5。

4.What value will z have if we execute the following assignment statement? float z = 5 / 10; (如果我们执行下面的赋值语句,得到的z将会是什么值?)

A .z will equal 0.0 (z将等于0.0)

解析:

5和10都是整数值,所以5 / 10是整数除法。结果是0。尽管z是一个浮点数,并且可以存储实际的答案0.5,但是由于整数除法,它只得到0。为了得到0.5,我们必须先将5或10转换为浮点数。

5.A cast is required in which of the following situations? (下列哪种情况需要强制转换?)


storing a float in an int (将一个float类型的数存储为int类型)

6.What is output with the statement System.out.println(x+y); if x and y are int values where x=10 and y=5? (如果x和y是int类型的数值,x=10,y=5,那么语句System.out.println(x+y);的输出是什么?)

正确答案:15

7.What is output with the statement System.out.println(""+x+y); if x and y are int values where x=10 and y=5? (如果x和y是int类型的数值,x=10,y=5,那么语句System.out.println(""+x+y);的输出是什么?)

正确答案: 105

8.Java is a strongly typed language. What is meant by "strongly typed"? (Java是一种强类型语言。“强类型”指的是什么?)

解析:

强类型是一种编程语言的属性,在这种语言中,变量的类型在变量存在期间不会改变,并且该变量中存储的任何值都是该类型的。强类型之所以重要,是因为它确保成功编译的程序不会出现与声明的变量类型滥用相关的运行时错误。

每个变量都有一个与之关联的类型,而变量只能存储该类型的值

9.In order to compare int, float and double variables, you can use <, >, ==, !=, <=, >=, but to compare char and String variables, you must use compareTo( ), equals( ) and equalsIgnoreCase( ).

正确答案: false

解析:可以使用<、>、==、!=、<=、>=直接比较char变量,但是必须使用compareTo()、equals()和equalsIgnoreCase()来比较任何字符串compare .float。

反思:

Java虽然“去掉”了C语言令人厌恶的指针,但是我认为事实上Java处处充满了指针。我们定义任何非基本数据类型时,都是定义了一个指针(尽管在Java中官方称呼是“引用”)。例如:
String s;事实上就是定义了一个指针,Java虚拟机为它在栈中分配一个空间,其实是一个固定长度的地址,如果没有初始化,它的值将是一个特殊的指向null的地址。

结对及互评

点评

  • 博客中值得学习的:

    • 教材学习内容概括行强,简介明了。
    • 有自己动手打新代码,加入了很多个人的理解。
    • 内容很充实,很用心,比上次进步了很多。
    • 博客格式正确,运用了很多不同的方法,排版精美。
    • 希望能在课本内容总结以及问题&解决过程中加入自己的思考,使博客内容更加充实。
      基于评分标准,我给本博客打分12分:
      得分情况如下:
      正确使用Markdown语法(加1分)
      模板中的要素齐全(加1分)
      教材学习中的问题和解决过程(加2分)
      代码调试中的问题和解决过程(加2分)
      其他加分(加6分)
      进度条中记录学习时间与改进情况(1)
      感想,体会不假大空(1)
      有动手写新代码(1)
      错题学习深入(1)
      点评认真,能指出博客和代码中的问题(1)
      结对学习情况真实可信(1)

点评过的同学博客和代码

  • 本周结对学习情况:

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

本周有点拖节奏,老师布置的作业虽然完成了但是由于疏忽导致作业没有及时交上,下次注意。

? 代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 10000行 30篇 400小时 ?
第一周 1652/1790 1/5 25/48 对JAVA感触加深

参考资料

原文地址:https://www.cnblogs.com/Stark-GR/p/11569691.html

时间: 2024-08-14 01:20:51

20182332 2019-2020-1 《数据结构与面向对象程序设计》第2,3周学习总结的相关文章

20182332 2019-2020-1 《数据结构与面向对象程序设计》第1周学习总结

20182332 2019-2020-1 <数据结构与面向对象程序设计>第1周学习总结1 教材学习内容总结 1.配置linux 虚拟机.java环境. 2.理解面向对象程序设计,包括属性.方法.封装等概念. Java基本结构,环境变量配置,集成开发环境. JAVA文件编译过程: 1.源文件由编译器编译成字节码(ByteCode) 2.字节码由java虚拟机解释运行. git命令: git init 创建本地版本库: git clone 与远程仓库建立联系: git add .将当前目录下文件添

20182332 2019-2020-1 《数据结构与面向对象程序设计》第八周学习总结

20182332 2019-2020-1 <数据结构与面向对象程序设计>第八周学习总结 教材学习内容总结 查找: 顺序查找: 顺序查找就是按顺序从头到尾依次往下查找,找到数据,则提前结束查找,找不到便一直查找下去,直到数据最后一位.适用于线性表的顺序存储结构和链式存储结构. 缺点:查找效率低. 二分查找: 将数列按有序化(递增或递减)排列,查找过程中采用跳跃式方式查找,即先以有序数列的中点位置为比较对象,如果要找的元素值小于该中点元素,则将待查序列缩小为左半部分,否则为右半部分.通过一次比较,

《数据结构与面向对象程序设计》第1周学习总结

学号 2019-2020-2314 <数据结构与面向对象程序设计>第1周学习总结 教材学习内容总结 1.计算机系统是由软硬件组成的 2.java程序的结构组成(注释.标识符和保留字等) 注:java是大小写敏感的,大写和小写是有区别的 3.程序开发所包含的内容(程序设计语言的等级.编辑器.编译程序.解释程序.开发环境和语法语义) 4.在开发软件的过程中遇到问题时的解决步骤:理解问题.设计方案.考虑方案的选择并优化方案.实现方案.测试方案并修改存在的任何问题. 教材学习中的问题和解决过程 问题1

20182329 2019-2020-1 《数据结构与面向对象程序设计》第1周学习总结

20182329 2019-2020-1 <数据结构与面向对象程序设计>第1周学习总结 教材学习内容总结 git代码托管代码 Java的基本编程 jdb代码调试 教材学习中的问题和解决过程 问题1:在课本自学过程中,有一题是Java中有什么是不可能被识别的,我做错了一道(12345)可以被识别. 问题1解决方案:后来询问学长数字不与命令相匹配时不是有效的标识符,且标识符不能以数字为开头. 问题2:在自己对于课本代码编译时,发现自己main处显示错误 问题2解决方案:一开始我以为是我main的方

《数据结构与面向对象程序设计》第01周学习总结

目录 学号20182323 2019-2020-1 <数据结构与面向对象程序设计>第01周学习总结 教材学习内容总结 教材学习中的问题和解决过程 代码调试中的问题和解决过程 代码托管 上周考试错题总结 结对及互评 点评模板: 点评过的同学博客和代码 其他(感悟.思考等,可选) 学习进度条 参考资料 目录 学号20182323 2019-2020-1 <数据结构与面向对象程序设计>第01周学习总结 教材学习内容总结 学习了java的历史与发展. 学习了一些软件工具,开发环境等. 掌握

《数据结构与面向对象程序设计》第2-3周学习总结

学号20182329 2019-2020-1 <数据结构与面向对象程序设计>第2-3周学习总结 教材学习内容总结 条件语句和循环语句的使用 输入语句和输出语局应用 基本数据类型的转换和应用 各种类的使用方法,以及格式化输出的方法. 基本的类的编写 教材学习中的问题和解决过程 问题1:scanner输入时用short nextShort()输入时出现异常. 问题1解决方案:输入时应与前一项自己指定的数据类型一样才可以. 问题2:在应用impoet时使用import Java.util.*时并不会

20182320 2019-2020-1 《数据结构与面向对象程序设计》第4周学习总结

20182320 2019-2020-1 <数据结构与面向对象程序设计>第4周学习总结 1.教材学习内容总结 本周学习内容分为以下几个部分: 4.8.1 迭代器和for循环 5.1 再谈类和对象 5.2 类的剖析 5.3 封装 5.4 方法的剖析 5.5 静态类成员 5.6 类关系 5.7 方法设计 5.8 方法重载 5.9 测试 5.10 调试 4.8.1 迭代器和for循环 什么是迭代器? 迭代器是一个对象,我们可以使用它的方法来处理某集合中的元素,一次处理一个. 每个迭代器对象都有一个方

20182324 2019-2020-1 《数据结构与面向对象程序设计》第4周学习总结

目录 20182324 2019-2020-1 <数据结构与面向对象程序设计>第4周学习总结 20182324 2019-2020-1 <数据结构与面向对象程序设计>第4周学习总结 这是一篇空博客 原文地址:https://www.cnblogs.com/lolipop2019/p/11613815.html

20182328 2019-2020-1 《数据结构与面向对象程序设计》第4周学习总结

20182328 2019-2020-1 <数据结构与面向对象程序设计>第4周学习总结 教材学习内容总结 1.对类和对象进一步的了解. 2.学习静态类和静态方法. 3.学习类之间不同类型的关系. 4.学习方法的设计及重载. 5.学习了如何调试. 教材学习中的问题和解决过程 问题1:为什么有的变量可以重名? 问题1解决方案:在方法内声明的局部变量可以和在类一级声明的实例变量有同样的名字. 问题2:方法重载的用处是什么? 问题2解决方案:方法可能面临会有不用的参数列表,这时会用到重载,方便调用.

20182323 2019-2020-1 《数据结构与面向对象程序设计》第4周学习总结

目录 学号20182323 2019-2020-1 <数据结构与面向对象程序设计>第4周学习总结 教材学习内容总结 教材学习中的问题和解决过程 代码调试中的问题和解决过程 代码托管 上周考试错题总结 结对及互评 点评模板: 点评过的同学博客和代码 学习进度条 参考资料 目录 学号20182323 2019-2020-1 <数据结构与面向对象程序设计>第4周学习总结 教材学习内容总结 1.对象和类的关系:(类是对象的蓝图) 2.理解对象的状态(属性)和行为(操作): 3.理解类的分配