Java--0基础入门篇

day-1

jvm--java虚拟机,实现java跨平台

jre--java运行环境,包含jvm

jdk--java开发工具--包含jre

java 复制代码
// public:在此处用于限定类名与文件名要一样
// class:定义一个类
// HelloWorld:类名
public class HelloWorld{
	// public:范围修饰符
	// static:静态的
	// void:代表没有返回值
	// main:方法名
	// String[] args:参数列表
	// 该方法为java程序的主方法,一个类里只能有一个主方法,但不是必须的
	public static void main(String[] args){
		//输出打印语句,括号里些什么就输出什么
		System.out.println("HelloWOrld");
	}
}

安装JDK

JDK11官网下载地址

下载成功后,双击运行安装包,一路下一步直至完成。如不想安装在c盘,就自行选择安装目录,安装目录不能出现中文字符,默认安装在C:\Program Files\Java路径下。

复制路径:C:\Program Files\Java\jdk-11

在系统搜索框中搜索path

没有找到的,1.设置--系统--系统信息--高级系统设置 2.此电脑--右键--属性--高级系统设置

新建系统变量:JAVA_HOME,值为C:\Program Files\Java\jdk-11

在系统变量中找到path,双击进入编辑,新增:%JAVA_HOME%\bin


验证

至此jdk安装配置完成。

jdk提供了两个非常重要的命令,java和javac

新建HelloWorld.txt文件,后缀改为java(HelloWorld.java)

将开头的那段代码复制,文件名和类名保持一致

保存,关闭文件

在文件所在目录下打开cmd

javac HelloWorld.java

java HelloWorld

运行成功,打印输出HelloWorld



好了,你已经运行成功你的第一个java程序了,接下来安装ideaidea安装教程

使用idea创建第一个Java项目




基础语法

  1. 注释--对代码的解释说明,不参与编译与运行
    • 单行注释 //注释内容
    • 多行注释 /注释内容/
    • 文档注释 /*注释内容/
  2. 关键字
    特点:
    ①完全是小写的字母
    ②常见的开发软件中会有特殊颜色标识
  3. 常量/字面量--在程序运行过程中,固定不变的量
分类
整数常量 1 2 100 -1等
小数(浮点数) 1.0 -1.1等
字符常量(有且仅有一个字符) '1' ',' '你' 'a' 等
字符串常量 "你好" " " "a"等
布尔常量 true false
空常量 null
  1. 变量--程序运行期间,其值可以发生改变的量,一般是用来存储一些数据
  2. 数据类型--分为基本数据类型和引用数据类型
类型 解释 符号 大小(bit)
整数 字节型 byte 1
短整型 short 2
整型 int 4
长整型 long 8
浮点型 单精度 float 4
双精度 double 8
字符型 char 2
布尔型 boolean 1
  1. 标识符--变量,方法或者类取的名字
    ①标识符可以包含英文大小写字母,数字,$和_ 中文也可以(不要用中文)
    ②不能以数字开头
    ③不能是关键字

day-2

类型转换

自动转换

1.概念:由小的数据类型提升为大的数据类型,系统自动完成的

2.规则:数据范围从小到大 byte/short/char --> int --> long --> float -- > double

3.整数默认是int类型,byte、short和char类型数据参与运算均会自动转换为int类型。

强制转换

1.概念:由大的数据类型转为小的数据类型,系统不能自动完成

2.格式: 目标类型 变量名 = (目标类型)被转换的数据;

3.注意事项:强制类型转换一般不推荐使用,因为可能会发生精度损失,数据溢出

运算符

|/||:逻辑或,两边都为假时,结果为假

&/&&:逻辑与,两边都为真时,结果为真

|和||的区别:|左边的表达式为真时,右边的式子不予运行,||两边的表达式都会运行。&和&&同理

还有一个'!':取反,!true = false,!false = true

java 复制代码
System.out.println(7 > 5 & 5 > 4);//true & true--->true
System.out.println(7 < 5 & 5 < 4);//false & false--->false
System.out.println(7 < 5 & 5 > 4);//false & true--->false
System.out.println(7 > 5 & 5 < 4);//true & false-->false
System.out.println(7 > 5 | 5 > 4);//true | true--->true
System.out.println(7 < 5 | 5 < 4);//false | false--->false
System.out.println(7 < 5 | 5 > 4);//false | true--true
System.out.println(7 > 5 | 5 < 4);//true | false-true
System.out.println(!true);//false
System.out.println(!false);//true
System.out.println(!(5 < 4));//true
System.out.println(7 > 5 ^ 5 > 4);//true ^ true>false
System.out.println(7 < 5 ^ 5 < 4);//false ^ false->false
System.out.println(7 < 5 ^ 5 > 4);//false ^ true-true
System.out.println(7 > 5 ^ 5 < 4);//true ^ false->true

分支语句

switch (普通表达式) {

case 值1:

语句体1;

break; case 值2:

语句体2;

break; case 值3:

语句体3;

break; ... default:

语句体n+1;

break; // 最后一个break语句可以省略,但是强烈推荐不要省略 }

执行流程: 看表达式的结果和哪个case后面的值相同,就执行那个case后面的语句体,碰到break就结束switch.

如果没有符合要求的case则执行default后面的语句体.

注意事项:

①switch后面小括号当中只能是下列数据类型:

基本数据类型:byte/short/char/int

引用数据类型:String字符串、enum枚举

②switch可以没有default,但是一般都会加上

③case语句后面可以不加break.但是如果不加break就会出现case穿透问题.匹配哪一个case就从哪一个位置向下执行,直到遇到了break或者整体结束为止;

循环

for(初始化语句;比较表达式;步进语句){ 循环体; }

注意事项:for循环的变量在小括号当中定义,只有循环内部才可以使用。

格式:

for (int i = 初始值; i < 末值 ; i++) {

//循环体

}
初始化语句; while(比较表达式){ 循环体; }

看判断表达式的结果,如果为false循环结束,如果为true,则执行循环体.循环体执行完后继续看判断表达式的结果以此类推

格式:

while (循环条件){

//循环体

}
初始化语句; do{ 循环体; }while(比较表达式);

先执行循环体,然后看判断表达式的结果如果为true则继续执行循环体如果判断表达式的结果为false则循环结束,如此反复。

格式:

do{

//循环体

}while(循环条件)

1、for循环和while循环的区别

复制代码
	for循环的特点:初始化表达式只在当前的循环范围内有效。
	出了循环的大括号以外,就无法使用了(tips:for循环的初始化表达式,也可以定义在外面)
	while循环的特点:初始化表达式是定义在循环的外面。出了循环也可以继续使用。

2.do-while循环和for、while循环的区别

复制代码
	do-while循环会至少先执行一遍循环体。然后再做条件判断
	而for、while循环都是先判断条件。如果条件满足才执行循环体。
	如果条件不满足,就直接结束循环

3.使用场景

复制代码
	一般在循环次数确定的时候,推荐使用for循环
	一般在循环次数不确定的时候,推荐使用while循环
	do-while循环很少很少会用到

break用于结束循环,只能出现在循环中或者switch中,continue跳过本次循环,继续下次循环

假如不知道循环结束的条件(死循环如何跳出)

1.标号

java 复制代码
lo:while (true){
	System.out.println("循环");
	break lo;
}

2.System.exit(0)--等价于停止运行程序,用这个不仅结束了循环,也结束了程序,也就是循环后面写的代码都不执行了。而标号形式的结束循环依然可以继续执行后续代码。

java 复制代码
while (true){
	System.out.println("循环");
	System.exit(0);
}

键盘录入

java 复制代码
//格式:Scanner 变量名= new Scanner(System.in);
System.out.println("请输入一个数字:");
Scanner scanner = new Scanner(System.in);
System.out.println(scanner.nextInt());

生成随机数

获取一个范围在1-10之间的随机数(包含10) r.nextInt(10)+1;

获取一个范围在1-100之间的随机数(包含100) r.nextInt(100)+1;

获取一个范围在20-80之间的随机数(包含80) r.nextInt(61)+20;

java 复制代码
Random random = new Random();
int x = random.nextInt(100);//[0-100]之间的随机数

猜数字小游戏

java 复制代码
public class Demo04 {
	public static void main(String[] args) {
		//	程序自动生成一个1-100之间的数字,使用程序实现猜出这个数字是多少?
		Random random = new Random();
		int x = random.nextInt(100);
		//System.out.println(x);
		lo:
		while (true) {
			System.out.println("请输入你猜想的数字:");
			Scanner sc = new Scanner(System.in);
			int i = sc.nextInt();
			if (i > x) {
				System.out.print("比目标数字大~");
			} else if (i < x) {
				System.out.print("比目标数字小~");
			} else if (i == x) {
				System.out.print("恭喜你猜对啦");
				break lo;
			}
		}
	}
}
相关推荐
大G哥1 分钟前
用 Java 和 DL4J 实现验证码识别系统
java·linux·开发语言·前端·python
science怪兽9 分钟前
【进阶】C# 委托(Delegate)知识点总结归纳
开发语言·笔记·c#
Ya-Jun9 分钟前
性能优化实践:性能监控体系
android·开发语言·flutter·ios·性能优化
forth touch1 小时前
C与指针——输入输出
c语言·开发语言
Allen Bright1 小时前
【Java JUnit单元测试框架-60】深入理解JUnit:Java单元测试的艺术与实践
java·junit·单元测试
钢铁男儿2 小时前
Python基本语法(lambda表达式)
开发语言·python
琢磨先生David2 小时前
深入探索 Java 区块链技术:从核心原理到企业级实践
java·区块链
Wabi_sabi_x2 小时前
C++设计模式:面向对象的八大设计原则之三
开发语言·c++·设计模式
Moso_Rx2 小时前
javaEE——单例模式
java·单例模式·java-ee
计算机学姐2 小时前
基于SpringBoot的同城宠物照看管理系统
java·vue.js·spring boot·后端·mysql·mybatis·宠物