《Java程序设计》第二周学习记录(1)
第2章 基本数据类型与数组
2.1 标识符与关键字
1、标识符
- 标识符由字母、下划线、美元符号、数字组成
- 标识符第一个字符不能是数字字符
- 标识符不能是关键字或者true、false、null等有其他意义的字符
2、Unicode字符集
Java语言使用Unicode字符集,也就是说Java中可以直接把汉语作为变量名,但是不建议这么做
2.2 基本数据类型
可以大致分为四种:
逻辑类型:boolean 常量:true,false
整数类型:int 占4个字节内存, byte 占1个字节内存, short 占2个字符内存, long 占8个字节内存,常量用后缀‘L’表示
注:Java没有无符号的byte,short,int和long
字符类型:分配2个字节内存,特别:可以用Unicode表中排序位置的十六进制转义,如'\u0041'表示A。
浮点类型:float型保留8位有效数字,分配4个字节内存,常量用后缀'f'或者'F'修饰
double型保留16位有效数字,分配8个字节内存,常量用后缀'd'或'D'修饰,也可无
2.3 类型转换运算
精度从低到高排列:
byte short char int long float double
从级别低的赋值到级别高的变量时,会自动转换。
反之会报错,这点不同于C语言。可以使用强转。
2.4 输入、输出数据
输入要用到Scanner类,以下是Scanner类的基本信息

Scanner对象的构造

Scanner类包含的常用方法

还有hasNext()等方法可以判断是否还有对应类型的输入
所以输入的基本步骤是:
1、import java.util.Scanner;引入Scanner类
2、Scanner reader = new Scanner(System.in);创建Scanner对象
3、double x = reader.nextDouble();使用对应的数据类型来接收(在此之前可以用hasNextDouble()判断下一个值是否是double)
Scanner()中的System.in是System类的字段,具体如下

要输出的话就用System.out.println或者System.out.print,前者相当于调用print()后再通过写入行分隔符字符串终止当前行。行分隔符字符串由系统属性 line.separator 定义,不一定是单个换行符 ('\n')。但是有点搞不清楚这个System、out、println到底是什么关系,刚开始学java,对一些概念还不清楚,先大概看看吧。

另外好奇为什么Scanner要引入但是System不需要,原来是System在lang包下,而lang包是默认导入的。
另外还有printf(),使用方法和C语言中的printf格式控制差不多
2.5 数组
声明数组
数组的元素类型 [] 数组名
C/C++的声明也可以,但是不建议
注: 不可以在[]中指定数组元素个数创建数组
数组名 = new 元素类型[数组大小]
可以和声明一起完成
元素类型 [] 数组名 = new 元素类型[数组大小]数组的初始化
创建数组后,系统会给数组的每个元素一个默认的值
一维数组如元素类型 [] 数组名 = {data, data...}
二维数组如元素类型 [][] 数组名 = {{data, data...},{data, data...},...}数组的引用
数组属于引用性变量,这是我第一次接触到这个名词,第一感觉有点像C语言的指针,于是去搜了一下这两者的相同点和区别,比如说JAVA 引用和C语言指针的区别,又想起《流畅的Python》中提到,不再把变量看成盒子,而看成标签。这个问题还是以后再慢慢研究。
参考资料
- 《Java学习笔记(第8版)》学习指导
- 《Java 2 实用教程》
- 《JDK 6.0 Documentation》
《Java程序设计》第二周学习记录(1)的更多相关文章
- 20145304 刘钦令 Java程序设计第二周学习总结
20145304 <Java程序设计>第2周学习总结 教材学习内容总结 java可区分基本类型和类类型(即参考类型)两大类型系统. 基本类型主要可区分为整数.字节.浮点数.字符与布尔. 整 ...
- 201521123063 JAVA程序设计 第二周学习总结
1.本周学习重点(2.27-3.5) java中的数组 以二维数组为例,数组名为scores,则 (1)先声明数组 int[][] scores;或int scores[][];或int[] scor ...
- 2017面向对象程序设计(Java)第二周学习总结
2017面向对象程序设计(Java)第二周学习总结 直系学妹学弟们好!额...不要问我为什么把学妹放前面,我也不知道!我只是你们和蔼可亲的学长一枚而已.也不要问为什么是第二周学习总结而不是第一周,因为 ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第二周学习总结
丁宣元 <面向对象程序设计(java)>第二周学习总结 正文开头 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...
- 201521044152<java程序设计>第一周学习总结
本周学习总结 java开发时间虽然很短,但是发展迅速,已成为现在非常流行的一门语言,很开心能有幸学习java.第一周学习了java的平台,运行环境jdk以及jrt等等新名词,还了解了eclipse的基 ...
- 20145304 刘钦令 Java程序设计第一周学习总结
20145304<Java程序设计>第1周学习总结 教材学习内容总结 1995年5月23日,是公认的Java的诞生日,Java正式由Oak改名为Java. Java的三大平台是:Java ...
- 201621123007 Java程序设计第一周 学习总结
第一周-Java基本概念 201621123007 <Java程序设计> 第一周学习总结 1. 本周学习总结 java是面向对象的一类语言,三大特征:封装性,继承性,多态性. jdk jr ...
- 《Java程序设计》第二周学习记录(2)
目录 3.1 运算符与表达式 3.3 if条件分支语句 3.7 for语句与数组 参考资料 3.1 运算符与表达式 和C语言基本上没有区别,要注意的是关系运算符的输出结果是bool型变量 特别要注意算 ...
- 201871010121 王方 《面向对象程序设计(java)》 第二周学习总结
这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p/11475 ...
随机推荐
- C#学习笔记(34)——委托传值(回忆版)
说明(2018-4-6 20:31:03): 1. 昨天晚上看三层,看完第一天的最后一节,会员的修改和增加,感觉欲仙欲死,果断关机睡觉. 2. 上午搞了半天哈利波特的原版书epub的下载,结果都没发现 ...
- 什么是面向切面编程AOP--知识点汇总
最近在学这方面的内容,读到的这段话我感觉说的很清楚了:这种在运行时,动态地将代码切入到类的指定方法.指定位置上的编程思想就是面向切面的编程. 面向切面编程(AOP是Aspect Orie ...
- WPF ViewModelLocator
在WPF中应用ViewModelLocator <Window x:Class="Demo.Views.MainWindow" ... xmlns:prism="h ...
- 分析“HTTP500内部服务器错误”解决方法
系统中出现的一些故障是用户最不想看到的,有时候遇到一些故障都到折腾个大半天才能够搞定.打开网站出现了HTTP500内部服务器错误的提示,无法法查看错误的详细信息,用户也没办法根据具体的问题来解决,这对 ...
- USB2.0学习笔记连载(一):CY7C68013特性简介
上一篇博客已经给出了整个视频板卡架构,那么对于USB接口部分需要着重理解和学习. 对于目前来说,若是利用FPGA去模拟USB2.0内核,难度还是挺大的,整个状态的收发都不好控制.现在目前都在使用桥接芯 ...
- 在windows 上自动重启 tomcat 的方法
在windows 上自动重启 tomcat 的方法 实现思路: Windows 上监控tomcat 进程并且自动重启的脚本 一类是 定时重启 tomcat 一类是 监控并重启 写一个守护tomcat进 ...
- 蜕变成蝶~Linux设备驱动之DMA
如果不曾相逢 也许 心绪永远不会沉重 如果真的失之交臂 恐怕一生也不得轻松 一个眼神 便足以让心海 掠过飓风 在贫瘠的土地上 更深地懂得风景 一次远行 便足以憔悴了一颗 羸弱的心 每望一眼秋水微澜 便 ...
- 【转】Servlet 生命周期、工作原理
Servlet 生命周期:Servlet 加载--->实例化--->服务--->销毁. init():在Servlet的生命周期中,仅执行一次init()方法.它是在服务器装入Ser ...
- Android查看文件大小
查看当前路径下的各个挂载模块的大小及剩余量(例如在根目录执行) df #输出 Filesystem Size Used Free Blksize /sys/fs/cgroup .0K /mnt/ase ...
- Elasticsearch Java API的基本使用
说明 在明确了ES的基本概念和使用方法后,我们来学习如何使用ES的Java API. 本文假设你已经对ES的基本概念已经有了一个比较全面的认识. 客户端 你可以用Java客户端做很多事情: 执行标准的 ...