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

教材学习内容总结

本周,我学习了书本上二三两章的内容,以下是我整理的主要知识

第二章 基本数据类型与数

标识符与关键字

1.1 标识符表示名字(字母、下划线、美元符号、数字,不能使关键字,true,false,null)

1.2 Java中的Unicode字符表,类比C里的ASCII码表,有65535个字符,Unicode更为丰富

1.3关键字,int,double,float

基本数据类型

2.1 逻辑变量 boolean,赋值只能是true、false

2.2 整数类型 byte,short,int,long,区别主要是取值范围不一样。

2.3字符类型 char,强制转换(int)'a',(char)97

2.4浮点类型 float(16位,只保持7-8位,float m=12.123456789f),double(32位,保持15-16位)

类型转换运算

3.1 基本数据类型排序(从低到高)

byte,short,char,int,long,float,double

级别低的可以转换为级别高的(float m = 100),级别高的不可以直接转换为级别低的。

输入、输出数据

4.1 输入 步骤为

  1. 创建一个scanner对象 Scanner reader = new Scanner(System.in)
  2. Scanner对象调用方法读取用户键盘输入的数据,例:int m =reader.nextInt()

4.2 输出

  1. System.out.println("值为:"+a);
  2. System.out.printf("格式",值列表);类似于c语言的形式
数组

5.1 声明数组

int [] a;or int a[]

5.2 创建数组 数组名=new 类型[]a = new int [5]

5.3 数组的单元(元素)

a[0],不要越界

5.4 数组的长度,

一维数组 a.length

二维数组,a.length是二维数组中一维数组的个数

5.5数组的初始化int [] a ={1,2,3,4,5};int [][] b = {{1,2,3},{4,5,6},{7,8,9}};

5.6数组的引用

数组变量本身中存放的值称作数组的引用,数组使用下标运算访问自己的单元。

两个类型相同的数组,一旦二者具有相同的引用,那么二者就具有一样的单元。

运算符、表达式和语句

运算符与表达式

1.1 混合运算的精度

有double型,按double型算

最高精度为float,按float算

最高精度是long,按long算

最高精度低于int型,按int算

1.2 instanceof运算符

左面的操作员是一个对象,右面是一个类。当左面的对象是右面的类或子类创建的对象是,该运算符运算的结果true,否则是false。

语句概述

package和import语句

if条件分支语句

3.1

if(true){

}

3.2

if(条件表达式){

}
else{ }

3.3

if(条件表达式){

}
else if(条件表达式){ }...
else{ }
switch开关语句

类似c

循环语句
while(表达式){
//循环体
}
break和continue语句

break:结束循环语句

continue:立刻结束本次循环

数组与for语句
for(声明循环变量:数组的名字){

}

“对于循环变量依次取数组的每个元素的值”

这是一种新的更为方便的遍历数组的方式。

本周代码运行图









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

问题1:第三章3.3练习题中,代码如下

public class E{
public static void main(String args[]){
int x=1,y=6;
while(y-->0){
x--;
}
System.out println("x="+x+",y="+y);
}
}

答案为x=-5,y=-1,与之前的猜想不符,不知道具体过程是什么。

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

  • 问题1:
  • 问题1解决方案:像这样的情况,主要问题都在出现i的情况,仔细检查之后发现,是第一行i忘记了输入int。
  • 问题2:在输出中有很多的“”的情况的时候,会出现很多的错误。
  • 问题2解决方案:出现这种情况一开始是因为我没有弄清楚“”的对应关系,在理清对应关系后,重新输入这一行的代码即可。

代码托管

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 37/200 1/2 10/20
第二周 399/500 2/4 12/38

最新文章

  1. 在MAC上搭建cordova3.4.0的IOS和android开发环境
  2. smartjs - DataManager 场景示例分析 - 数据懒加载
  3. mysql 启动错误
  4. JAVA_3lesson
  5. media queries 媒体查询使用
  6. JS简单实现图片切换
  7. 纯CSS写九宫格样式,高宽自适应正方形
  8. 为OLED屏增加GUI支持
  9. 响应式网站-全屏banner响应的2中方法 - 被吃掉的banner
  10. hadoop学习第一天-hadoop初步环境搭建&伪分布式计算配置(详细)
  11. 三天来都在写项目;今天开始学习了js
  12. spring cloud 入门系列四:使用Hystrix 实现断路器进行服务容错保护
  13. Hadoop3.0 WordCount测试一直Accept 状态,Nodes of the cluster 页面node列表个数为0
  14. Codeforces Round#500 Div.2 翻车记
  15. spring boot + session+redis解决session共享问题
  16. JAVA中的异常疑点解析
  17. 【转】ORACLE 表空间扩展方法
  18. USACO 6.3 Cowcycles
  19. 定制LNMP的RPM包
  20. Session的存储原理

热门文章

  1. Google词向量word2vec的使用
  2. N-N
  3. https-->http and http-->https bitransfer
  4. iOS多线程编程之NSOperation的基本操作(转载)
  5. 学习计划 mysql explain执行计划任务详解
  6. linux环境下python的部署
  7. vertx异步编程测试
  8. git更新代码报错,error: The following untracked working tree files would be overwritten by ch
  9. spring boot 自定义过滤器链
  10. vs2010用NuGet(程序包管理)安装EF失败之解决办法