Java基础语法实现猜数字
Java语言发展史
Java语言是美国Sun公司(Stanford University Network)在1995年推出的计算机语言。
Java之父:詹姆斯·高斯林(James Gosling)
2009年,Sun公司被甲骨文公司收购。
JRE和JDK
JVM(Java Virtual Machine),Java虚拟机。
JRE(Java Runtime Environment),Java运行环境,包含了JVM和Java的核心类库(Java API)。
JDK(Java Development Kit)称为Java开发工具,包含了JRE和开发工具。
我们只需安装JDk即可,它包含了java的运行环境个虚拟机。
一、JDK的下载和安装:
1.下载:
通过官方网站获取JDK:http://www.oracle.com
注意:针对不同的操作系统需要下载对应版本的JDK。
2.安装:
安装JDK直接默认下一步即可。但默认的安装路径是在C:\Program Files下,为方便统一管理建议修改安装路径,将与开发相关的软件都安装到一个目录下,例如:E:\develop。
注意:安装路径不要包含中文或者空格等特殊字符(使用纯英文目录)
3JDK的安装目录介绍
HelloWorld程序演示
Java程序开发运行流程:
开发Java程序,需要三个步骤:编写程序,编译程序,运行程序。
在接粗集成开发环境之前,我们使用命令窗口对java程序进行编译和运行,所有我们需要了解一些常用DOS命令。
常用DOS命令
Path环境变量的配置
开发Java程序,需要使用JDK提供的开发工具,而这些工具在JDK的安装目录bin目录下。
为了在开发Java程序的时候能够使用javac和java这些命令,我们需要配置Path环境
Path环境变量配置的具体步骤:
第一步
第二步
第三步
HelloWorld案列编写
1.新建文本文档文件,修改名称为HelloWorld.java。
2.用记事本打开HelloWorld.java文件,编写程序内容。
3.保存文件,打开命令窗口,将目录切换至java文件所在的目录下,编译java文件生成class文件,运行class文件。
编译:javac 文件名.java
范例:javac HelloWorld.java
运行:java 类名
范例:java HelloWorld
注意:java中的符号都是英文格式的。java语言区分大小写。编译是需要带文件后缀 .java。运行命令不需要文件后缀 .class。
猜数字具体实现代码
实现猜数字我们需了解及掌握数据的输入、java内包含的数据类型、运算符,及变量的定义格式以及命名规则,还需要掌握java的分支结构以及循环结构。
一、数据输入
我们通过Scanner类来获取用户的输入。使用步骤如下:
1、导包。Scanner 类在java.util包下,所以需要将该类导入。导包的语句需要定义在类的上面。
import java.util.Scanner;
2、创建Scanner对象。
Scanner sc = new Scanner(System.in);// 创建Scanner对象,sc表示变量名,其他均不可变
3、接收数据
int i = sc.nextInt(); // 表示将键盘录入的值作为int数返回。
二、Java中的数据类型:
Java是一个强类型语言,Java中的数据必须明确数据类型。在Java中的数据类型包括基本数据类型和引用数据类型两种。
说明:
e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方。
在java中整数默认是int类型,浮点数默认是double类型。
三、运算符
1、算术运算符
**注意:**当“+”操作中出现字符串时,这个”+”是字符串连接符,而不是算术运算。
System.out.println("itheima"+ 666); // 输出:itheima666
2、赋值运算符:
**注意:**扩展的赋值运算符隐含了强制类型转换。
3、自增自减运算符:
**注意:** 参与操作的时候,如果放在变量的后边,先拿变量参与操作,后拿变量做++或者–。
参与操作的时候,如果放在变量的前边,先拿变量做++或者–,后拿变量参与操作。
4、关系运算符:
注意:
关系运算符的结果都是boolean类型,要么是true,要么是false。
千万不要把“”误写成“=”,"“是判断是否相等的关系,”="是赋值。
5、逻辑运算符:
6、短路逻辑运算符:
注意:
逻辑与&,无论左边真假,右边都要执行。
短路与&&,如果左边为真,右边执行;如果左边为假,右边不执行。
逻辑或|,无论左边真假,右边都要执行。
短路或||,如果左边为假,右边执行;如果左边为真,右边不执行。
四、变量:
1.变量的定义:
在程序运行过程中其值可发生改变的量。从本质上讲,变量是内存中的一小块区域,其值可以在一定范围内变化。
2.变量定义的格式:
或者
还可以在同一行定义多个同一种数据类型的变量,中间用逗号隔开。但这种方法会降低程序的可读性。
注意:
- 在同一对花括号中,变量名不能重复。
- 变量在使用之前,必须初始化(赋值)。
- 定义long类型的变量时,需要在整数的后面加L(大小写均可,建议大写)。因为整数默认是int类型,整数太大可能超出int范围。
- 定义float类型的变量时,需要在小数的后面加F(大小写均可,建议大写)。因为浮点数的默认类型是double, double的取值范围是大于float的,类型不兼容。
五、分支语句(if,switch)
1、if语句:
if语句格式1:
格式:
if (关系表达式) {
语句体;
}
if语句格式2:
格式:
if (关系表达式) {
语句体1;
} else {
语句体2;
}
if语句格式3:
格式:
if (关系表达式1) {
语句体1;
} else if (关系表达式2) {
语句体2;
}
…
else {
语句体n+1;
}
2、switch语句
结构
switch (表达式) {
case 1:
语句体1;
break;
case 2:
语句体2;
break;
...
default:
语句体n+1;
break;
}
执行流程:
- 首先计算出表达式的值
- 其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结 束。
- 最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。
六、循环语句(for、while、do…while();)
1、for循环结构:
格式:
for (初始化语句;条件判断语句;条件控制语句) {
循环体语句;
}
格式解释:
- 初始化语句: 用于表示循环开启时的起始状态,简单说就是循环开始的时候什么样
- 条件判断语句:用于表示循环反复执行的条件,简单说就是判断循环是否能一直执行下去
- 循环体语句: 用于表示循环反复执行的内容,简单说就是循环反复执行的事情
- 条件控制语句:用于表示循环执行中每次变化的内容,简单说就是控制循环是否能执行下去
2、while循环结构:
初始化语句;
while (条件判断语句) {
循环体语句;
条件控制语句;
}
3、do…while循环结构:
初始化语句;
do {
循环体语句;
条件控制语句;
}while(条件判断语句);
七、Random产生随机数
概述:Random类似Scanner,也是Java提供好的API,内部提供了产生随机数的功能。
使用步骤:
- 导入包
import java.util.Random;
- 创建对象
Random r = new Random();
- 产生随机数
int num = r.nextInt(10);
10代表的是一个范围,如果括号写10,产生的随机数就是0-9,括号写20,参数的随机数则是0-19。
猜数字具体实现代码:
import java.util.Random;
import java.util.Scanner;
public class RandomTest {
public static void main(String[] args) {
//要完成猜数字的游戏,首先需要有一个要猜的数字,使用随机数生成该数字,范围1到100
Random r = new Random();
int number = r.nextInt(100) + 1;
while(true) {
//使用程序实现猜数字,每次均要输入猜测的数字值,需要使用键盘录入实现
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要猜的数字:");
int guessNumber = sc.nextInt();
//比较输入的数字和系统产生的数据,需要使用分支语句。
//这里使用if..else..if..格式,根据不同情况进行猜测结果显示
if(guessNumber > number) {
System.out.println("你猜的数字" + guessNumber + "大了");
} else if(guessNumber < number) {
System.out.println("你猜的数字" + guessNumber + "小了");
} else {
System.out.println("恭喜你猜中了");
break;
}
}
}
}