Java基础篇(一)

#Java基础篇(一)

1.关于Java开发环境的搭建与配置

JVM: java虚拟机

jre: java运行环境

jdk: java开发工具

jdk里面包含了jvm和jre

1.1关于jdk 安装

下载好jdk的安装包后一路next即可。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.2关于环境变量的配置

配置环境变量的原因:在编译代码的时候,我们需要找到jdk中的Java和Javac命令,使用环境变量(路径)能直接找到。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.DOS命令

2.1dir

显示当前目录下所有文件

在这里插入图片描述

2.2 cd

切换路径

在这里插入图片描述

2.3mkdir

在当前目录下创建文件夹

在这里插入图片描述

2.4rd

删除指定目录,注:不能删除非空的目录

在这里插入图片描述

2.5del

删除文本文件

在这里插入图片描述

2.6cls

清屏操作

3.HelloWorld代码的书写

class Hello{
public static void main(String[] args){
	System.out,println("HelloWorld");
	}
}

4.Java中的注释问题

//单行注释

/*
   多行注释
*/

/**
*文档注释
*
*/

5.eclipse的安装

下载好eclipse的安装包后在打开解压后的文件,打开eclipse.exe应用程序即可。(注:可在桌面上创建快捷键)

6.进制单位

进制单位基数范围规则
二进制0~1逢2进1
八进制0~7逢8进1
十进制0~9逢10 进1
十六进制0~9 a~f逢16进1
二进制:  逢2进1
	0 (0)   1(1)  10 (2)  11(3) 100 (4)
八进制:   逢8进1
	0(0) 1(1)  ...   7 (7)  10(8)  11(9)  12(10)
十进制:   
十六进制:   0(0).... a (10)   b (11)  ...f(15) 10(16)

进制之间可以转换的:
	1.可以使用计算器
	2.在线转换的网站
	3.进制转换是有Java可以的转的

7.变量【重点】

定义:  在程序运行的过程中,可以改变的量的叫变量

语法格式:

数据类型   变量名   =   值;
数据类型:  对变量进行约束的

变量的名字: 自己起的一个名字

=:   赋值号

初始化的值:  就是存储的一个数据

变量的命名规则:
1、变量是由字母,数字,下划线,特殊字符组成的,不能以数字开头
2、小驼峰命名法
3、变量名不能使用Java中的关键字
4、首字母小写
5、见明知意

8.Java中的数据类型(八种)

8.1整数类型

整数类型数据的范围占用的内存的字节数
byte-128~1271字节
short-32768~327672字节
int (常用的)-2^31 ~ 2^31 - 14字节
long-2^63 ~ 2^63-18字节

8.2浮点型

浮点类型数据的范围占用的字节数
float(单精度的)-3.4*10^38 ~ 3.4 * 10^384字节
double(双精度的)(Java中默认的)-1.79*10^308 ~ 1.79 * 10 ^3088字节

8.3布尔类型

布尔数据范围占用的字节数
booleantrue 或者 false1字节

8.4字符型

字符数据范围占用的字节
char除了\ 其他都可以2个

9.转义字符【重点】

目的: 将一个无意义的字符转为一个有意义的字符或者将一个有意义的字符转为一个无意义的字符

语法格式:    \字符

特殊转义字符:\n   回车换行    \t制表符   制表符在前表tab   在语句中间表示空格

10.运算符

10.1算术运算符

算术运算符表示的意思
+
-
*
/
%取余
+=加等(先加后等)
-=减等(先减后等)
*=乘等(先乘后等)
/=除等(先除后等)
%=余等(先余后等)

10.2关系运算符

关系运算符表示的意思
>大于
<小于
>=大于等于
<=小于等于
==是否等于
!=是否不等于

10.3逻辑运算符

逻辑运算符表示的意思
&&
||

10.4逻辑运算符的短路原则

逻辑与的短路原则:
	表达式1  &&  表达式2  &&...
	如果表达式1 为false 的话,整体就为false了, 表达式2  和以后的表达式就不再执行了
	为啥? 逻辑与 只要有一个为false,整体就为false了。表达式1位f已经为false了。已经决定了
	整体的结果了。Jav为了执行的效率的问题,所以短路了
	逻辑或的短路原则:
		表达式1 ||  表达式2 || ...
		如果出现表达式为true的,整体就为true,从为true的表达式开始后面的表达式就不再执行了

11.Java中的分支结构

11.1if分支

语法结构:

if(){
语句体;
}
执行流程:  如果布尔表达式为true,  就执行大括号里面的语句体。 如果布尔表达式为false,就跳过大括号里面的语句体,接着往下执行
例:
public class Demo7 {
	public static void main(String[] args) {
		if (false) {
			System.out.println("执行了if");
		}
		System.out.println("if未执行");
	}
}
public class Demo8 {
	public static void main(String[] args) {
		//如果成绩大于80分,输出奖励一个宝剑
		int score = 50;
		if (score > 80) {
			System.out.println("奖励一个宝剑");
		}
		System.out.println("结束");
	}
}

11.1.1if-else分支结构

语法格式:

if (布尔表达式) {
	语句体1;
} else {
	语句体2;
}
执行流程: 如果布尔表达式为true 执行语句体1  ,如果布尔表达式为false 执行 语句体2
最重要的看布尔表达式值。  两者只能选择其一。
public class Demo10 {
	public static void main(String[] args) {
		
		if (false) {
			System.out.println("呵呵");
		} else {
			System.out.println("嘿嘿");
		}
	}
}

案例: 判断一个年份是否是闰年

public class Demo12 {
	public static void main(String[] args) {
		
		//判断一个年份是否是闰年
		//分析:   是闰年   不是闰年  if-else
		//一个年份 :   在Java中咋表示
		//闰年: 能被4整除的并且不能100整除 或者能被400整除的是闰年
		int year = 2001;
		if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
			System.out.println("是闰年");
		} else {
			System.out.println("不是闰年");
		}	
	}
}

11.1.2if-else if分支结构

语法格式:

if (布尔表达式1) {
	语句体1
} else if (布尔表达式2) {
	语句体2
} else if (布尔表达式n) {
	语句体n
} else {
	语句体n+1
}
执行流程:  

	如果碰到if语句后面的小括号中的表达式为true的时候,就执行相对应的大括号后面的语句体

	其他语句体一概不执行

    应用场景:  多种情况

案例:判断成绩的等级

public class Demo13 {
	public static void main(String[] args) {
		
		/**
		 * 学生成绩的等级问题:
		 * 		90~100  打印优秀
		 * 		80~89  打印良好
		 * 		70~79  打印一般
		 * 		60~69 打印及格
		 * 		60分以下  叫家长
		 * 		结果是多个分支   用if-esle if
		 */
		int score = 31;
		if (score <= 100 && score >= 90) {
			System.out.println("优秀");
		} else if (score >= 80) {//代码能够执行到 这一步
			System.out.println("良好");
		} else if ( score >= 70) {
			System.out.println("一般");
		} else if (score >= 60) {
			System.out.println("及格");
		} else {
			System.out.println("叫家长");
		}
	}
}

11.1.3if的嵌套【了解】

public class Demo14 {

	public static void main(String[] args){
		//嵌套写法
		//年龄满18岁,体重达标   才能献血
		int age = 19;
		int weight = 80;
//		if (age >= 18 && weight >= 50) {
//			System.out.println("去献血");
//		}
		if (age >= 18) {
			//age >= 18 如果年龄达标  再判断体重
			if (weight >= 50) {
				System.out.println("可以去献血");
			} else {
				System.out.println("年龄达标,但是体重不达标");
			}
			
		} else {
			//age < 18
			System.out.println("未成年不能献血");
			
		}
	}
}

11.2switch分支结构

也是一种选择,类似与 if-else if 分支

多种选择

语法格式:

swicth (表达式) {
	case 常量1:
		语句体1;
		break;
	case 常量2:
		语句体2;
		break;
	case 常量3:
		语句体3;
		break;
	...
	default:
		语句体n;
		break;
}

执行流程: switch后面小括号中的表达式值去和 case后面的常量进行匹配。如果他们两个一样的话

就执行当前的语句体,其他语句体不执行。

案例:

public class Demo15 {
	public static void main(String[] args) {
		
		//使用switch-case 写
		/**
		 * 按1 给妈妈打电话
		 * 按2 给爸爸打电话
		 * 按3 给奶奶打电话
		 * 按4给爷爷打电话
		 * 按其他键 个110
		 */
		int num = 1;
		switch (num) {//num表示的是int类型的值,二if中表示的是布尔类型
			case 1:
				System.out.println("给妈妈打电话");
				break;//终止  打断
			case 2:
				System.out.println("给爸爸打电话");
				break;
			case 3:
				System.out.println("给奶奶打电话");
				break;
			case 4:
				System.out.println("给爷爷打电话");
				break;
			default:
				System.out.println("110");
				break;
		}

11.3关于switch-case的面试题

switch(表达式) {

}

表达式可以是什么类型的数据

byte short int char String 枚举

扩展:控制台键盘录入

import java.util.Scanner;

public class Demo19 {
	public static void main(String[] args) {
		Scanner sb = new Scanner(System.in);
        System.out.println("请输入一个整数:")
		//获取控制台输入的int类型的数据
		int a = sb.nextInt();
		//获取控制台输入的byte类型的数据
//		byte b = sb.nextByte();
		//获取控制台输入的float类型的数据
//		float f1 = sb.nextFloat();
		//获取控制台输入的布尔类型的数据
//		boolean b1 = sb.nextBoolean();
		//获取控制台输入的字符串类型的数据
//		String str = sb.next();//获取控制台字符串的方法
		//获取控制台输入的字符类型的数据	
		//sb.next()  取控制台的字符串的:  例如   abcdef
		//charAt(0)   取你字符串中  第一个位置的字符   a 
		//charAt(1)取你字符串中  第二个位置的字符   b 
		//char ch = sb.next().charAt(0);
		System.out.println(a);
		//字符的获取 是在字符串的基础之上获取的		
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值