教材学习内容总结


第二章

(一)标识符

注意:

  • 标识符由字母、下画线、美元符号和数字组成,长度不受限制。
  • 标识符第一个字符不能是数学字符。
  • 标识符不能是关键字。
  • 标识符不能是true、false和null。
  • 标识符中的字母区分大小写。

(二)基本数据类型(重点)

- [四大类型]

逻辑类型:boolean(与C语言不同)

整数类型:byte、short、int、long

字符类型:char

浮点类型:float、double

- [相关内容解析]

数据类型关键字 常量 变量 字节内存 数据范围
boolean true、false 使用boolean来声明
int 123,6000,077,0x3ABC 使用int来声明 4 -2^31~(2^31-1)
byte 一定范围内的int型常量 用byte来声明 1 -128~127
short 一定范围内的int型常量 使用short来声明 2 -2^15~2^15-1
long 用后缀L来表示,108L,07123L 使用long来声明 8 -2^63~2^63-1
char 用单引号括起来的Unicode表中的字符,'A','b' 使用char来声明 2(无符号位,且无负数char) 0~65535
数据类型 常量 变量 数据所分配字节 数据精度
float 用后缀f或F,不能省略,453.5439f,21379.987F 用float来声明 4 8位有效数字
double 可以有后缀d或D,但可以省略,2389.539d,2318908.987 用double来声明 8 16位有效数字

(三)数组

1.声明数组

一维数组:float boy [ ];

二维数组:char cat [ ][ ];

2.为数组分配元素

数组名=new 数组元素的类型[数组元素的个数]

boy = new float[4];

或 float boy[] = new float [4];

二维数组:

int mytwo[][];

mytwo = new int [3][4];

或 int mytwo [][] = new int [3][4];

3.数组元素的使用

索引从0开始:

4.length的使用

一维数组:“数组名.length"的值是数组中元素的个数

二维数组:“数组名.length”的值是它含有的一维数组的个数。

例如:float a[ ] = new float [12];

int b[][] = new int [3][6];

则a.length为12,b.length为3;

5.数组的初始化

float boy[] = {21.3f,23.89f,2.0f,2.3f,778.98f};

int a[][] = {{1},{1,1},{1,2,1},{1,3,3,1},{1,4,6,4,1}};

6.数组的引用(元素的首地址)

两个相同类型的数组如果有相同的引用,他们就会有完全相同的元素。


public class Example2_4 {
public static void main(String args[ ]) {
int a[] = {1,2,3,4};
int b[] = {100,200,300};
System.out.println("数组a的元素个数="+a.length);
System.out.println("数组b的元素个数="+b.length);
System.out.println("数组a的引用="+a);
System.out.println("数组b的引用="+b);
a=b;
System.out.println("数组a的元素个数="+a.length);
System.out.println("数组b的元素个数="+b.length);
System.out.println("a[0]="+a[0]+",a[1]="+a[1]+",a[2]="+a[2]);
System.out.print("b[0]="+b[0]+",b[1]="+b[1]+",b[2]="+b[2]);
}
}

(三)运算符与表达式

运算符 结合方向 注意
+ - 从左到右 优先级弱于乘除
* / % 从左到右 优先级强于加减
++x(--x) 先使x的值加1,再使用x的值 x++(x--) 先使用x的值,再使x的值加1

- 算术混合运算的精度
排序:byte short char int long fioat double

用法规则:

1.表达式中++有++double型数据++,就按double计算

2.表达式++最高精度是float型数据++,就按float型计算

3.表达式中++最高精度是long型整数++,就按long型计算

4.表达式中++最高精度低于int型整数++,就按int型计算

易错点:允许把不超过byte、short、char的取值范围的算术表达式的值赋给byte、short、char型变量

- 关系运算符

运算符 备注
> =

优先级强于==和!=
== != 优先级弱于以上

#### - 逻辑运算符 和 位运算符

逻辑运算符 备注
&& || ! 连接表达式时,表达式的结果必须为true或false
位运算符 备注
& | ~ ^ 注意逆运算仍然是^
易错点:注意逻辑运算符的短路性。

- 语句方面

  • Swith语句中“表达式”的值可以为byte、short、int、char型

  • case常量也是byte、short、int、char型,而且要互不相同

  • 循环语句:注意与break和continue的结合性

  • for语句与数组:

    形式:for(声明循环变量:数组名字) {

    p

    }

    注意:“声明环境变量”必须是变量声明,不可以是使用已经声明过的变量。

- 关于类的调用方法:

因为还没有具体接触,谈一些自己的理解:

调用next类的话,是为了读取用户输入的值。

调用hasNext类的话,是为了判断值是否超出范围。

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

在学习应用举例时,对于比较排序法和折半查找法有所忘记,我细查了一下。

折半查找法

比较排序法

在课下,我还想把具体C语言中学到的查找方法和排序方法总结一下。

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

Q1:出现了

A:运行时,应为java <主类名>,且主类名不要加后缀。随后便出现了结果

Q2:出现了

A:import java.util.*中util错拼成了until.而且两次出现了这样的问题,以后应引起重视。解决后,运行出正确结果:

代码托管

脚本运行截图

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

本周学习是Java的语法学习,虽然有了一定的C语言基础,但是我还是没有掉以轻心,仔细回忆Java语法与C语言语法的相同点和不同点,并找出了自己C语言的一些漏洞。

可以说本周收获颇丰,不仅巩固了C语言的基础,而且还了解了Java语法,在自己尝试编程时,自己动脑来设计算法,有时,自己也会尝试将原来C语言的练习题用Java语言进行编程,自己仿佛找到了开启另一扇大门的钥匙,希望自己继续努力吧。

参考资料

折半查找法

比较排序法

20165203《Java程序设计》第二周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. 20145213《Java程序设计》第四周学习总结

    20145213<Java程序设计>第四周学习总结 教材学习内容总结 本周任务是学习面向对象的继承.接口以及之后的如何活用多态.(还真是路漫漫其修远兮啊!)教材也是延续上周艰深晦涩的语言风 ...

  6. 20145330《Java程序设计》第四周学习总结

    20145330<Java程序设计>第四周学习总结 一周两章新知识的自学与理解真的是很考验和锻炼我们,也对前面几章我们的学习进行了检测,遇到忘记和不懂的知识就再复习前面的,如此巩固也让我对 ...

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

    20145337<Java程序设计>第四周学习总结 教材学习内容总结 继承与多态 继承 继承,避免多个类间重复定义共同行为 符合DRY(Don't Repeat Yourself)原则,多 ...

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

    20145218 <Java程序设计>第四周学习总结 教材学习内容总结 继承 继承共同行为 继承基本上就是避免多个类间重复定义共同行为. 继承的三个好处:减少代码冗余:维护变得简单:扩展变 ...

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

    20145224-陈颢文 <Java程序设计>第四周学习总结 教材学习内容总结 第六章 继承与多态 ·继承就是面向对象中,子类继承父类,避免重复的行为定义.重复再程序设计上是非常不好的信号 ...

  10. 20155304 2016-2017-2 《Java程序设计》第四周学习总结

    20155304 2016-2017-2 <Java程序设计>第四周学习总结 教材学习内容总结 第六章 继承: 概念: 面向对象中,为避免多个类间重复定义共同行为.(简单说就是将相同的程序 ...

随机推荐

  1. dev代码拷贝中文乱码的解决方案

    .c / .cpp文件用记事本打开,再拷贝

  2. Django JSON 时间

    在views.py中导入: from django.core.serializers.json import DjangoJSONEncoder 在返回JSON数据时调用: return HttpRe ...

  3. P1558 色板游戏

    P1558 色板游戏 题目背景 阿宝上学了,今天老师拿来了一块很长的涂色板. 题目描述 色板长度为L,L是一个正整数,所以我们可以均匀地将它划分成L块1厘米长的小方格.并从左到右标记为1, 2, .. ...

  4. 2016/1/3 Python中的多线程(2):threading模块

    之前提了Python多线程的一点使用,今天介绍更好的threading模块,它提供了Thread类和一些比较好用的同步机制. 先介绍Thread类 threading模块中的Thread类有很多thr ...

  5. MySQL学习(一)——Java连接MySql数据库

    MySQL学习(一)——Java连接MySql数据库 API详解: 获得语句执行 String sql = "Insert into category(cid, cname) values( ...

  6. 使用subprocess.Poen注意事项

    学习使用python已经有四个月了,subprocess这个执行linux中shell命令的函数已经用过无数次了,踩到的坑也有几个,写出来分享一下,欢迎大家拍砖头. 1.shell命令中若有管道,一定 ...

  7. 20155217 2016-2017-2 《Java程序设计》第4周学习总结

    20155217 2016-2017-2 <Java程序设计>第4周学习总结 教材学习内容总结 第六章 在java中,继承时使用extends关键字,private成员也会被继承,只不过子 ...

  8. OK6410 rmmod卸载模块失败:No such file or directory -- 转

    原文地址:http://hi.baidu.com/andio/item/b8be9810282841433a176e86 rmmod chdir no such file or directory 说 ...

  9. getElementById()方法取值

    举例子: javascript: var time = document.getElementById('jidu').value; //指定时间 var taskclass = document.g ...

  10. HDU 2073 叠框

    解题报告:一个字符串的题,最恶心的还是格式问题,PE了很多次,要求是每个测试数据的后面都带有一个空行,但是最后一个不能有空行,所以只能把第一组 数据的前面不输出空行,而后面的每一组数据都输出空行,这样 ...