第一部分 Java的基本数据结构与流程控制
本文是建立在拥有一定C/C++基础上介绍的主观性极强的个人学习笔记,以个人感受和心得为主。
I 最简单的Java应用程序
众所周知,任何编程语言都是从一句Hello World开始的,所以…
1 | package MyJava; |
输出结果:
1 | > Hello world! |
简单分析:
- package表明这个java程序包含在MyJava这个包里面,包可以理解为类的容器
- public称为访问修饰符,表示访问权限的级别,与C++基本类似
- class表明这是一个java的类,由此可见Java相较于C++更加依赖类与对象的使用,其中类的标识符约定俗成为首字母大写
- println与C++中的printf或cout唯一不同的是,前者相当于输出后自动添加一个换行符,不需要的话同样有print方法可以使用
- java程序并不需要return 0,正常结束的java程序默认退出代码为0,若需要修改可以使用System.exit方法
单从这一个Hello World来看,Java似乎并不是一个很简洁的语言(?),因为java十分注重类之间的包含和使用,因此在最开始会显得有些冗长,不过后续java的特点会慢慢展现出来,毕竟谁不喜欢int main()呢
众所周知,读到这里你已经完全掌握了java并且可以找到不错的工作(不是),当然你也可以选择继续深入(入土)
II 注释
java的注释继承了C++的注释方法,其中单行注释和多行注释完全一样,因此这里不做赘述,唯一的不同点在于java多了一项特殊的注释–文档注释
1 | /** |
值得一提的是,java可以根据文档注释的内容与关键字自动生成文档以及作者信息,这样即方便了项目管理也减轻了项目解释的工作
III 数据类型
- 整形:int、short、long、byte和C++在使用上几乎相同
- 浮点型:float、double和C++在使用上几乎相同
- char:这里表示Unicode编码的字符单元的字符类型,可以简单理解为字符
- boolean:即C++的bool
- 数组:与C++不同,java声明的方式为Templete[] name;此外,java的数组支持直接相互赋值(好耶)
变量的声明与初始化、运算符类似于C++,不过常量的修饰符为final
IV 输入输出
对于java而言,标准输入流进行控制台输入需要以来Scanner类并与System.in关联,以下代码可以直观体现出Scanner的最基本的操作
1 | public class Example |
Scanner对于数据的读入可以说相当方便,但是就安全性而言Console类更胜一筹,前者对于最基本的输入输出还是很便利的
Java的输出类似于C++中printf与cout的结合体,即支持简单的用+连接每个输出元素,又支持传统的占位符输出法
V 分支和循环
Java几乎完整延续了C++的流程控制语法,因此不多介绍
截止目前,Java和C++可以说是惊人的相似,我愿称之为C++++(C#:?)