`
conanwsz
  • 浏览: 8048 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
社区版块
存档分类
最新评论

从“傻X”到牛X——扫盲篇(二)JAVA的基本语法(一)

阅读更多
一、上节回顾
上次我们做出来一个史上最简单的程序。今天我们就再了解一下JAVA的语法。我们不系统的讲语法,那样子这个系列的文章就没法断续下去了。我们用到什么讲什么,没有JAVA基础的同学还是把J2SE的内容看看为好。

好了,接着上一次的内容来。

package test; 

public class MyFirstPro {
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println("Hello World!");
	}
}

这是我们上次的代码,我们分解来讲。
首先是:
package test;

package是包的意思。上句代码就是说把本文件打包在名称为test的这个包下。再说简单点,大家可以理解为路径,MyFirstPro.java这个文件就存放在工程根目录下的src/test 目录下。大家可以自己找找,src/test目录下有不有这个文件。


第二部分:
public class MyFirstPro {
}

这一是个标准的声明一个类的方式。public声明该类为一个公共类(什么是公共类以后再讲);class是声明类的关键字;MyFirstPro是我们自己定义的一个类的名称。
也就是说,上面这个语法中,除了MyFirstPro这个名称可以由我们自己定义外,其它一字不差,一个空格都不差的按差上面敲就可以了。
类名的写法有两点讲究:
1.类名只能由英文字母组成,不要光顾自己开心,填几个中文上去,也不能有空格等其它符号。
2.类名的首字母要大写。

第三部分:
	/**
	 * @param args
	 */

这个是注释,用来对代码进行解释说明的。不参与代码的编译,不对程序的运行构成任何影响。
注释的方式有三种:
1.
  //  这是单行注释。注释一行内容。

2.
	/*
	 *    这是多行注释,以'/*'开头,以'*\'结尾。
  *    可以注释多行内容。
	 */

3.我们代码中的那种形式,Javadoc注释。同样可以注释多行,主要用于自动生成JAVA文档的。我们现在还用不到,先无视它。

上面讲的只是注释的三种方式,不管用哪种,效果都一样。

第四部分:
	public static void main(String[] args) {
	}

这个是程序的入口,当我们运行程序的时候,程序就会自己找到这里来,开始逐行代码的执行。语法上没什么说的,死记下来。

第五部分:
	// TODO Auto-generated method stub
	System.out.println("Hello World!");

第一句,我们上面已经说过了。用//对该行后面的内容进行了注释。这一行是由Eclipse自动生成出来的。TODO标签用来提醒我们这里还有内容没写,是空的。没什么意义,可以直接删除。
第二句,System.out.println();是输出语句。我们在控制台上看到的Hello World!那句话就是由它输出的。注意代码中的"Hellow World!"是有引号的,代表它是一个字符串(String)。那什么是字符串呢,下面我们就来讲今天的第二个概念,变量。

小知识:所有的JAVA语言都是由 ;(分号—英文字符) 结尾的。大家千万别写掉了或写成中文的分号哦。

二、变量
什么是变量?
变量就是就来储存值的,为一个值起了一个别名,解决了值重用的问题。比如说100这个数值,我把它放到变量number里,那么以后我只要调用number,就可以得到100这个数值了。

小知识:Java是一个区分大小写的语言(Case Sensitive),所以变量number与变量Number或变量numBER都是不一样的。变量命名上,我们一般把首字母小写,变量名尽量要有意义。要是变量名由两个单词组成,第二个单词首字母大写,例如:myMoney。


变量的声明方法:

1.整数型。
整型变量用来存储整数数据,比如说,生命值,攻击力等。
int hp=100; //用int关键字来声明hp为一个整型变量,初始值为100。

我们也可以不为它赋初值。在需要用到的时候再跟它赋值。
int hp; //声明
hp=100; //赋值。我们平时所说的等号"=" 在程序里叫赋值号,当然你要叫它等号也行。

整型不只int,还有byte,short,long。它们的区别在于能够存放的数值的范围不一样,当然占用内存的大小也就不一样。例如:int能够存放的范围在-2147483648到2147483647之间。再大的数,int里就放不下了。就要用到long了。
从小到大范围排序依次为 byte < short < int < long。
我们通常用到int就可以了。以后遇到具体情况再进一步讲解。

2.浮点型。
浮点型就是我们常说的小数。比如说,身高1.75米。
float height1=1.75F; //用float关键字来声明height1为一个浮点型变量,初始值为1.75。
float height2=1.75f; //1.75后面的f写成小写也可以。

注意,在声明为float的时候,值后面要加上一个f或F。虽然Java是区分大小写的,但是这里比较特别,大小写都可以。至于为什么,我们这里暂不讨论。
浮点型中还有double,和上面一样double范围大于float。

3.布尔型。
boolean型只有两个值——"true"和"false"。当我们需要判断一个逻辑表达式为“真”或为“假”需要用到它。
例如:玩家打怪,如果打中了(true),那么怪减hp,如果没打中(false),则不减。
具体应用我们下一节讲。

4.字符串
上面的都叫JAVA的基本数据类型,我们现在来讲讲字符串(String)。顾名思意,字符串就是一串字符(废话!)。
大家可能已经注意到了,前面的变量声明的关键字都是小写的,但是String的第一个字母是大写的。对了,String不是基本数据类型之一,它是一个由Java提供给我们使用的类。还记不记得我们前面说了,类名的首字母要大写?
字符串比较特殊,但是我们只讲它最简单的用法。
String str1="Hi!This is Hanmeimei."; //用String关键字声明str1为字符串,初值为"Hi!This is Hanmeimei."
String str2; //声明str2为字符串。
str2="Hi! I'm Lilei." //为str2赋值。

需要注意的是,字符串的值需要用双引号引起来。并且,在JAVA中,只要看到双引号,就要知道,它里面的内容是一个字符串。

我们再来写一个小例子让大家巩固一下,把上节中写的代码改成如下。

package test;

public class MyFirstPro {

	public static void main(String[] args) {
		int i = 100;				//声明i为整型,初值为100
		float j = 12.35F;			//声明j为浮点型,初值为12.35
		String str = "Hello Lilei!";	//声明str为字符串,初值为Hello Lilei!
		
		System.out.println(i);		//输出变量i的值
		System.out.println(j);		//输出变量j的值
		System.out.println(str);	//输出变量str的值
	}
}

大家可以先想想这三句输出的结果会是怎样的,再自己执行看看。

三、运算符
+:加
-:减
*:乘
/:除
* 和 / 的优先级高于 + 和 - 。

上面这些小学生都会,没什么好讲的。
%:取模运算符,A % B 的结果就是A除以B的余数。
=:赋值运算符,为什么等号也拉出来讲,呵呵。因为它跟我们平时理解的不一样,它的功能正确的讲,应该是把符号右边的值赋给符号左边的变量,Java语言是从右向左执行的。
+=:加赋值。直接举例:a += b;相当于a = a + b;
-=:减赋值。同上。a -= b; 相当于 a = a - b;
同类型的还有 *=、/=、%=。

++:加1. a++ 相当于 a = a + 1;
--:减1.同上。

了解了这些,我们再把上面的代码改改,中间加几行进来。
package test;

public class MyFirstPro {

	public static void main(String[] args) {
		int i = 100;				//声明i为整型,初值为100
		float j = 12.35F;			//声明j为浮点型,初值为12.35
		String str = "Hello Lilei!";	//声明str为字符串,初值为Hello Lilei!
		i = 200;					//把i赋值为200,那么i现在存放的值便不再是100而是200
		j = j + 3.15F;				//JAVA语句是从右往左执行的,就是说先运行j+3.15F,再把j+3.15F的结果赋给j
		str += " I'm Hanmeimei!";	//+=运算符的效果等同于:str = str + " I'm Hanmeimei!";
		System.out.println(i);		//输出变量i的值
		System.out.println(j);		//输出变量j的值
		System.out.println(str);	//输出变量str的值
	}
}

这次结果是什么呢,大家自己运行看看吧。
分享到:
评论

相关推荐

    高校学生选课系统项目源码资源

    项目名称: 高校学生选课系统 内容概要: 高校学生选课系统是为了方便高校学生进行选课管理而设计的系统。该系统提供了学生选课、查看课程信息、管理个人课程表等功能,同时也为教师提供了课程发布和管理功能,以及管理员对整个选课系统的管理功能。 适用人群: 学生: 高校本科生和研究生,用于选课、查看课程信息、管理个人课程表等。 教师: 高校教师,用于发布课程、管理课程信息和学生选课情况等。 管理员: 系统管理员,用于管理整个选课系统,包括用户管理、课程管理、权限管理等。 使用场景及目标: 学生选课场景: 学生登录系统后可以浏览课程列表,根据自己的专业和兴趣选择适合自己的课程,并进行选课操作。系统会实时更新学生的选课信息,并生成个人课程表。 教师发布课程场景: 教师登录系统后可以发布新的课程信息,包括课程名称、课程描述、上课时间、上课地点等。发布后的课程将出现在课程列表中供学生选择。 管理员管理场景: 管理员可以管理系统的用户信息,包括学生、教师和管理员账号的添加、删除和修改;管理课程信息,包括课程的添加、删除和修改;管理系统的权限控制,包括用户权限的分配和管理。 目标: 为高校学生提

    TC-125 230V 50HZ 圆锯

    TC-125 230V 50HZ 圆锯

    影音娱乐北雨影音系统 v1.0.1-bymov101.rar

    北雨影音系统 v1.0.1_bymov101.rar 是一个计算机专业的 JSP 源码资料包,它为用户提供了一个强大而灵活的在线影音娱乐平台。该系统集成了多种功能,包括视频上传、播放、分享和评论等,旨在为用户提供一个全面而便捷的在线视频观看体验。首先,北雨影音系统具有强大的视频上传功能。用户可以轻松地将本地的视频文件上传到系统中,并与其他人分享。系统支持多种视频格式,包括常见的 MP4、AVI、FLV 等,确保用户能够方便地上传和观看各种类型的视频。其次,该系统提供了丰富的视频播放功能。用户可以选择不同的视频进行观看,并且可以调整视频的清晰度、音量等参数,以适应不同的观看需求。系统还支持自动播放下一个视频的功能,让用户可以连续观看多个视频,无需手动切换。此外,北雨影音系统还提供了一个社交互动的平台。用户可以在视频下方发表评论,与其他观众进行交流和讨论。这为用户之间的互动提供了便利,增加了观看视频的乐趣和参与感。最后,该系统还具备良好的用户体验和界面设计。界面简洁明了,操作直观易用,让用户可以快速上手并使用各项功能。同时,系统还提供了个性化的推荐功能,根据用户的观看历史和兴趣,为用户推荐

    Tripp Trapp 儿童椅用户指南 STOKKE

    Tripp Trapp 儿童椅用户指南

    node-v8.13.0-linux-armv6l.tar.gz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    谷歌浏览器 64位-89.0.4389.128.exe

    Windows版本64位谷歌浏览器,是由Google谷歌公司开发的一款电脑版网络浏览器,可以运行在Windows 10/8.1/8/7 64位的操作系统上。该浏览器是基于其它开放原始码软件所撰写,包括WebKit和Mozilla,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。软件的特点是简洁、快速。并且支持多标签浏览,每个标签页面都在独立的“沙箱”内运行,在提高安全性的同时,一个标签页面的崩溃也不会导致其他标签页面被关闭。此外,谷歌浏览器(Google Chrome)基于更强大的JavaScript V8引擎,这是当前Web浏览器所无法实现的。

    适用于鲲鹏麒麟的OpenJDK1.8

    适用于鲲鹏麒麟的OpenJDK1.8

    毕业设计-基于SSH的任务调度系统的设计与实现

    任务调度试系统,基本功能包括:用户的注册、用户的登录、发起项目、项目详细及搜索等。本系统结构如下: (1)用户的注册登录: 注册模块:完成用户注册功能; 登录模块:完成用户登录功能; (2)发起项目: 发起项目模块:完成了项目及项目下一个或者多个任务的添加; 项目详细:点击项目名称,可以看到项目及任务详细信息; 搜索项目:完成对项目名称的模糊搜索功能 任务调度试系统,基本功能包括:用户的注册、用户的登录、发起项目、项目详细及搜索等。本系统结构如下: (1)用户的注册登录: 注册模块:完成用户注册功能; 登录模块:完成用户登录功能; (2)发起项目: 发起项目模块:完成了项目及项目下一个或者多个任务的添加; 项目详细:点击项目名称,可以看到项目及任务详细信息; 搜索项目:完成对项目名称的模糊搜索功能

    30个炫酷的数据可视化大屏(含源码)

    大屏数据可视化是以大屏为主要展示载体的数据可视化设计,30个可视化大屏包含源码,直接运行文件夹中的index.html,即可看到大屏。 内含:数据可视化页面设计;数据可视化演示系统;大数据可视化监管平台;智能看板;翼兴消防监控;南方软件视频平台;全国图书零售监测数据;晋城高速综合管控大数据;无线网络大数据平台;设备大数据;游戏数据大屏;厅店营业效能分析;车辆综合管控平台;政务大数据共享交换平台;智慧社区;物流云数据看板平台;风机可视化大屏等。

    基于yolov5识别算法实现的DNF自动脚本源码.zip

    优秀源码设计,详情请查看资源源码内容

    毕业设计:基于SSM的mysql-在线网上书店(源码 + 数据库 + 说明文档)

    毕业设计:基于SSM的mysql_在线网上书店(源码 + 数据库 + 说明文档) 2.系统分析与设计 3 2.1系统分析 3 2.1.1需求分析 3 2.1.2必要性分析 3 2.2系统概要设计 3 2.2.1 项目规划 3 2.2.2系统功能结构图 4 2.3开发及运行环境 4 2.4逻辑结构设计 5 2.4.1 数据库概要说明 5 2.4.2 主要数据表结构 6 2.5文件夹架构 9 2.6编写JAVA BEAN 9 3.网站前台主要功能模块设计 10 3.1前台首页架构设计 10 3.2网站前台首页设计 11 3.3新书上市模块设计 12 3.4特价书籍模块设计 13 3.5书籍分类模块设计 14 3.6会员管理模块设计 15 3.7购物车模块设计 17 3.8收银台设计模块 19 3.9畅销书籍模块设计 20 4.网站后台主要功能模块设计 21 4.1网站后台文件夹架构设计 21 4.2后台主页面设计 21 4.3书籍管理模块设计 22 4.4会员管理模块设计 25 4.5订单管理模块设计 26 4.6公告管理模块设计 28 4.7退出系统页面设计 29 5.网站制作中遇到的问

    python 开发 python爬虫数据可视化分析项目源码加课题报告,源码注解清晰一看就懂,适合新手.zip

    python 开发 python爬虫数据可视化分析项目源码加课题报告,源码注解清晰一看就懂,适合新手

    node-v8.0.0-linux-armv7l.tar.gz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    使用FPGA发送一个经过曼彻斯特编码的伪随机序列

    rtl中存放的是设计文件 sim中存放的是仿真文件

    基于Java的班级管理系统课程设计源码

    附件是基于 Java的班级管理系统课程设计源码,包含程序说明和运行环境要求,文件绿色安全,仅供学习交流使用,欢迎大家下载学习交流!

    最新获取QQ微信头像橘头像阁PHP源码下载.rar

    最新获取QQ微信头像橘头像阁PHP源码下载.rar最新获取QQ微信头像橘头像阁PHP源码下载.rar

    K-750 管道疏通机手册

    K-750 管道疏通机手册 Drain Cleaner Manual K-750 Drain Cleaning Machine

    基于哈希链表的简单人员信息管理系统

    实现基于哈希表的员工信息管理系统,该系统主要用于处理员工信息,主要包括员工个人信息的录入、删除、查找、修改等,同时支持数据的导入导出

    node-v6.16.0.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    3D模型007,可用于建模、GIS、BIM、CIM学习

    3D模型007,可用于建模、GIS、BIM、CIM学习

Global site tag (gtag.js) - Google Analytics