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. opencv 摄像头人脸检测

    PYTHON ubuntu16.04 默认安装的Python版本2.7.12,当用pip install opencv-python 安装了opencv for python 3.3.0.10后,运行 ...

  2. HashSet非常的消耗空间,TreeSet因为有排序功能,因此资源消耗非常的高,我们应该尽量少使用

    注:HashMap底层也是用数组,HashSet底层实际上也是HashMap,HashSet类中有HashMap属性(我们如何在API中查属性).HashSet实际上为(key.null)类型的Has ...

  3. Key-Value是用一个不可重复的key集合对应可重复的value集合

    Key-Value是用一个不可重复的key集合对应可重复的value集合.(典型的例子是字典:通过页码的key值找字的value值). 例子: key1—value1; key2—value2; ke ...

  4. selenium 获取按钮的笔记

    测试odoo时,发现大部分按钮都是动态生成,id也是动态的, 只能用xpath,但是配置一旦改变导致按钮位置改变 想到一个办法,遍历所有按钮,然后内容相符的才点击,测试代码如下 submit_loc ...

  5. java----IO和NIO的区别

    概念:NIO即New IO,这个库是在JDK1.4中才引入的.NIO和IO有相同的作用和目的,但实现方式不同,NIO主要用到的是块,所以NIO的效率要比IO高很多.在Java API中提供了两套NIO ...

  6. 转载:Struts2支持断点续传下载实现

    转自:http://blog.sina.com.cn/s/blog_667ac0360102eckm.html package com.ipan.core.controller.web.result; ...

  7. 编程之美 set 7 求数组中的最长递增子序列

    解法 1. 假设在目标数组 array[] 的前 i 个元素中, 最长递增子序列的长度为 LIS[i] 那么状态转移方程为 LIS[i] = max(1, LIS[k]+1) array[i+1] & ...

  8. win10 设置C盘访问权限

    “以管理员身份运行” cmd.exe C:\Windows\system32>icacls "C:\Program Files\Epic Games" /setintegri ...

  9. VS2008 AddIn 操作DTE2

    在VS2008扩展开发中,最重要的就是DTE对象.DTE对象提供了对扩展性模型中其他对象的访问.DTE是VS自动化模型中的顶级对象. 在按照http://www.cnblogs.com/yjf512/ ...

  10. 第十二章:Linux中权限控制实例

    前言 前文对 Linux 中的权限进行了较为透彻的分析.而本文,则在前文的基础上,具体说明如何在代码中进行权限控制. 下面的代码涉及到以下几个方面: 1. 创建文件时设置文件权限 2. 修改文件的默认 ...