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

教材学习内容总结

本周学习内容如下:

  1. 基本数据类型
  • 整数类型:byte,shout,int,long。
  • 字符类型:char。
  • 浮点类型:float,double。
  • 布尔类型:boolean。
  1. 输入与输出
  • Scanner的使用必须先进行导入Scanner类: import java.util.Scanner;接下来需要创建一个Scanner对象: Scanner sc = new Scanner(System.in);最后从键盘上读取数据保存到变量中:int i=sc.nextInt(); double dd=sc.nextDouble(); String s=sc.next();注意不能直接从键盘得到一个字符。百度得:
//打印一个从键盘输入的字符
import java.util.Scanner;
public class Zifu{
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
System.out.println("请输入一串字符,其中首字符为需要打印的字符");
String s=sc.next();
char cc=sc.charAt(0);
if(('a'<=cc&&cc<='z')||('A'<=cc&&cc<='Z')){
System.out.println(cc+"输入为字符");
}
else{
System.out.println(cc+"输入不为字符");
}
}
}
  1. 数组
  • 数组知识基本与C语言相同,但Java不允许在声明数组中的方括号内指定数组元素的个数。double []b=new double[n];//java中数组只能这样写
  • a.length为数组a的长度
  • 如果遍历某个集合中所有的数据,还可以使用foreach循环

    注意:foreach循环只是用来读取数组中的每一个元素,不能用于修改数组的元素值。
    for(int x:a)
System.out.println(x); //依次把数组a的每一个元素赋值给x变量,在循环体中可以对x变量进行处理

如:

for(int i=0;i<a.length;i++){
a[i]=i*i;
}//通过循环修改数组的元素值
  1. 运算符:基本参照C语言所讲,注意运算的优先级
  2. 语句学习:
  • if条件分支语句
  • switch开关语句
  • 循环语句
  • break和continue语句
  • for语句与数组

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

  • 问题1:基本类型转换方式的使用及关于精度缺失的问题?
  • 问题1解决方案:
  1. 首先布尔类型不能和其他类型转换。整数、小数、字符类型可以相互转换。
  2. 自动类型转换: byte→short→int→long→float→double char→int→long→float→double 但可能丢失精度
  3. 强制类型转换:不能进行自动类型转换时就可以进行强制类型转换。

    (1)小数与整数之间的转换:
   double dd=3.121;
int ii;
ii=(int)dd;
System.out.println(ii);
//此时double类型转换为int类型,输出结果为3。

(2)大的整数类型转换为小的整数类型时,只把对应的低位字节转换,可能会出现数据错误。

    int ii=270;
byte bb;
bb=(byte)ii;
System.out.println(bb);
/*此时输出bb=14,因为ii变量在计算机中存储形式为: 0000 0000 0000 0000 0000 0001 0000 1110 把ii强制转换为byte类型,只把最后一个字节的数存储到bb变量中,bb变量中存储的内容为:0000 1110 即为14.*/

(3)整数可以转字符

    int ii=110;
char cc=(char)ii;
System.out.println(cc);
//此时输出为n,因为n的ASCII码值为110。

(4)可以对表达式进行强制转换:

    byte bb=123;
bb=(byte)(bb+1);
System.out.println(b );
//输出为124。

代码托管

上周考试错题总结

  • 错题1及原因,理解情况:如何在根目录下进行javac和java的相关操作,如:如何编译。java文件于bin目录下javc -d ./bin scr/Hello.java如何运行位于bin目录下is5324包中的.class文件java -cp .:bin is5324.Hello
  • 错题2及原因,理解情况:如果只是要运行java程序,下载程序哪个安装即可?应该选择JRE。分析得:java程序的运行只需要JRE即可,而java程序的开发需要JDK。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 203/203 4/4 15/15
第二周 326/529 2/6 12/27

参考资料

20165324《Java程序设计》第二周的更多相关文章

  1. 20145304 刘钦令 Java程序设计第二周学习总结

    20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...

  2. 201521123063 JAVA程序设计 第二周学习总结

    1.本周学习重点(2.27-3.5) java中的数组 以二维数组为例,数组名为scores,则 (1)先声明数组 int[][] scores;或int scores[][];或int[] scor ...

  3. 2017面向对象程序设计(Java)第二周学习总结

    2017面向对象程序设计(Java)第二周学习总结 直系学妹学弟们好!额...不要问我为什么把学妹放前面,我也不知道!我只是你们和蔼可亲的学长一枚而已.也不要问为什么是第二周学习总结而不是第一周,因为 ...

  4. 201871010106-丁宣元 《面向对象程序设计(java)》第二周学习总结

    丁宣元 <面向对象程序设计(java)>第二周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...

  5. 2017-2018-1 JAVA实验站 第二周作业

    2017-2018-1 JAVA实验站 第二周作业 小组成员: 组长 20162318张泰毓 成员 20162303石亚鑫 20162304张浩林 20162307张韵琪 20162321王彪 201 ...

  6. 201671010140. 2016-2017-2 《Java程序设计》java学习第二周

                                 学习第二周(Java基本程序设计结构)      这一周,着重学习了Java的简单程序设计实现及运行,通过自己操作,发现Java的程序语法大面 ...

  7. 20145304 刘钦令 Java程序设计第一周学习总结

    20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...

  8. Java学习第二周学习笔记

    20145307<Java程序设计>第二周学习总结 教材学习内容总结 Java语言中的很多基本语法都和C语言类似,以下Java中的基本语法 标识符 标识符是程序中自定义的一些名称. 由26 ...

  9. JAVA语言 第二周

    放假第二周了,时间真快! 上一周配置好了环境变量,这一周就可以做一些测试了.对不同的内容分类进行了测试,包括写入.输出.变量·······还有很多.对于开学的试卷,在第一部分做的还行,第二部分就没什么 ...

  10. 201621123007 Java程序设计第一周 学习总结

    第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...

随机推荐

  1. 遍历一个Set的方法只有一个:迭代器(interator)

    Set-HashSet实现类: 遍历一个Set的方法只有一个:迭代器(interator). HashSet中元素是无序的(这个无序指的是数据的添加顺序和后来的排列顺序不同),而且元素不可重复. 在O ...

  2. mysql -- 创建存储过程 往数据表中新增字段

    需求: 往某数据库的某个表中新增一个字段(若该字段已存在,则不做操作:若该字段不存在,则新增) 百度了n久,没有符合要求的例子,只有参考加自己琢磨,最终终于给弄出来了,以下是几个版本的更迭 第一版: ...

  3. 【BZOJ】1684: [Usaco2005 Oct]Close Encounter(暴力+c++)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1684 这货完全在考精度啊.. 比如奇葩 (llf)a/b*i (llf)(a/b*i)和(llf)( ...

  4. 利用QtGraphicalEffects来使得自己的图像显示更加生动

    有兴趣的开发人员能够參阅连接http://doc.qt.io/qt-5/qtgraphicaleffects-qmlmodule.html来深度学习Qt对Graphics方面的处理. 在今天的这篇文章 ...

  5. Linux命令在线中文手册

    很好的Linux学习手册:http://linux.51yip.com/ 来源:http://blog.51yip.com/

  6. js post

    在进行html5页面的设计时,希望用户加载完成页面后,进行交互时只改变其中的某些元素的内容,这样更像本地APP的呈现效果,但是HTML中的post.get如果使用submit进行提交的话会直接使用返回 ...

  7. Linux JAVA 配置

    wget http://download.oracle.com/otn-pub/java/jdk/7u25-b15/jdk-7u25-linux-x64.tar.gz tar zxvf jdk-7u2 ...

  8. jboss6.4 域模式自动部署

    1.通过jenkins传递部署包到服务器,调用自动部署shell完成jboss6.4的域模式部署: 2.自动部署shell如下: 完成部署包重命名(从jenkins过来的包可能没有改名:). 调用jb ...

  9. JQuery------鼠标双击时,不选中div里面的文字

    如图:(去掉选中文字的蓝色背景色) 代码: //方法一:<div class="test" onselectstart="return false" &g ...

  10. CodeForces 42C Safe cracking 规律题

    题目链接:点击打开链接 3个数为一组,找最大的一个数让它降低,则显然是有解的,分类讨论一下就可以 #include<cstdio> #include<cstring> #inc ...