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

本周博客:

https://www.cnblogs.com/xicyannn/p/10705376.html

教材学习内容总结

这周学习了第八章,主要学习了常用的几个类,分别是:

  • String
  • StringTokenizer
  • Scanner
  • StringBuffer
  • Date类与Calendar
  • 日期格式化
  • Math类、BigInteger类与Random
  • 数字格式化
  • Class类与Console
  • Pattern类与Match

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

  • 问题1:

    在阅读课本P181页关于public int indexOf (String s)public int lastIndexOf(String s)的内容时看不懂书上的例子:

  • 问题1解决方案:

    通过询问同学才知道原来在字符索引时空格也算是一个位置,所以索引tom字符串时,a应该在第二位而不是第一位。

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

在做这周的结对项目时,遇到了许多问题,有很多都用到了这周第八章的知识点,比如8.2中讲到的StringTokenizer类在拆分分数的后缀式时就有用到

  • 问题2:

    在写代码时发现需要把中缀式转成后缀式后,将每个分数和运算符拆开,下图中等号左边表示系统自动生成的中缀式,右边是后缀式。可以看出中缀转后缀并没有出错,问题在于后缀式的第一项是1/6,第二项是1/7,通过StringTokenizer方法拆分后缀式,但由于1/6和1/7中间没有任何标识符,因此系统自动把他们俩当成了一个整体,所以在之后的入栈时就会提示出错:Exception in thread main java. lang NumberFormatException: For input string: 1/61/7,意思就是说 数字格式异常:对于输入字符串:1/61/7

  • 问题2解决方案:

    通过在分数以及运算符前后加空格作为间隔的标志,下面是在运算符后面加空格的代码:

if (j <= a) {
fuhao k = new fuhao(); //声明类fuhao的对象k
char q = k.yunsuanfu(); //产生一个运算符q
Question1 = Question1 + zi + '/' + mu +" " +q+" "; //将生成的随机数和随机符号存入Question1中
} else {
Question1 = Question1 +zi + '/' + mu; //将生成的随机数存入Question1中
}

下面是在分数后面加空格的代码:

if(ch >= '0' && ch <= '9' && ch1 == '/'&&ch2>='0'&&ch2<='9') {// 如果是分数,则直接输出
out+=ch;
out+=ch1;
out+=ch2;
out+=" ";
continue;
}

修改这两部分的代码后,运行结果如下图。可以看到不管是运算符还是分数,中间都有空格间隔。

  • 问题3:

    当分母为1时显示的不是整数形式而是x/1(x是大于1的整数),并且判断对错时,对于输入的整数答案判定为错误,只有输入x/1才显示正确。

  • 问题3解决方案:

    在输出结果的时候加一个判断,当分子为0时,结果为0,分母为1时结果为分子,其余情况正常输出,代码如下:

i

f (numerator == 0) {
result = "0";
}
else {
if (denominator == 1)
result = numerator + "";
else
result = numerator + "/" + denominator;
}
return result;

代码托管

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 6/6 2/2 30/30
第二周 625/631 3/5 35/65
第三周 660/1291 2/7 38/103
第四周 972/2263 2/9 30/133
第五周 399/2662 3/12 32/165
第六周 1342/4004 3/15 35/200
第七周 1341/5345 2/17 35/235

20175310 《Java程序设计》第7周学习总结的更多相关文章

  1. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  2. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  3. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  4. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  5. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  6. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  7. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  8. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  9. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

  10. 《Java程序设计》第二周学习总结

    20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...

随机推荐

  1. CSS3效果:animate实现点点点loading动画效果(二)

    box-shadow实现的打点效果 简介 box-shadow理论上可以生成任意的图形效果,当然也就可以实现点点点的loading效果了. 实现原理 html代码,首先需要写如下html代码以及cla ...

  2. 一个JVM进程启动后里面有几个线程

    在写Java程序时,通常我们管只有一个main函数(而没有别的Thread或Runnable的程序)叫单线程程序.但是我们写的这个所谓的单线程程序只是JVM这个程序中的一个线程,JVM本身是一个多线程 ...

  3. CSS中默认被继承的属性

    在CSS中,所有属性都可以被继承,只需要显式的设置属性值为inherit即可.如果不设置该属性,CSS大部分属性默认不会从父元素继承而是设置初始值(initial value),但是有一部分属性,默认 ...

  4. JMeter 报告监听器导入.jtl结果文件报错解决方案

    JMeter 报告监听器导入.jtl结果文件报错解决方案   by:授客 QQ:1033553122   1. 问题描述 把jmeter压测时生成的 .jtl结果文件导入监听器报告中,弹出如下错误提示 ...

  5. wangEditor更改默认高度

    在使用WangEditor时觉得高度太低,默认是300px;想调下高度,借鉴https://blog.csdn.net/qq_31384551/article/details/83240188, 网址 ...

  6. 移动Web前端,游客点击商品的收藏按钮,登录完成,回来之后,如何自动收藏

    我们都知道,移动Web端(M站环境下),很多时候,前端是无法判断用户的登录状态的,因为出于安全性考虑,与账号相关的cookie字段一般都是 http-only的. 如果前端想判断用户的登录状态,需要主 ...

  7. LeetCode题解之Squares of a Sorted Array

    1.题目描述 2.问题分析 使用过两个计数器. 3.代码 class Solution { public: vector<int> sortedSquares(vector<int& ...

  8. Redis内存数据库快速入门

    Redis简介 Redis是一个开源(BSD许可),内存数据结构存储,用作数据库,缓存和消息代理.它支持数据结构,如 字符串,散列,列表,集合,带有范围查询的排序集,位图,超级日志,具有半径查询和流的 ...

  9. Java中线程的同步问题

    在生活中我们时常会遇到同步的问题,而且大多数的实际问题都是线程的同步问题 我这里以生活中的火车售票来进行举例: 假设现在我们总共有1000张票要进行出售,共有10个出售点,那么当售票到最后只有一张票时 ...

  10. python第一百零九天---Django 4

    session :1. Session 基于Cookie做用户验证时:敏感信息不适合放在cookie中 a. Session原理 Cookie是保存在用户浏览器端的键值对 Session是保存在服务器 ...