🎊 JAVA基础语法~炼丹必备保姆级攻略!快收藏!

JAVA基础语法~炼丹必备保姆级攻略!快收藏!

一、Java 语言概述Java 是一门面向对象的编程语言,具有跨平台、安全、健壮等特性。它由 Sun Microsystems 公司开发,后被 Oracle 收购。Java 的应用场景广泛,涵盖 Web 开发、移动应用开发、企业级应用开发、大数据处理等领域 。

二、开发环境搭建安装 JDK:JDK(Java Development Kit)是 Java 开发的核心工具包,包含 Java 运行时环境(JRE)、Java 编译器(javac)和 Java 工具等。你可以从 Oracle 官方网站下载对应操作系统的 JDK 安装包,然后按照安装向导进行安装。

配置环境变量:安装完成后,需要配置系统环境变量。在 Windows 系统中,需设置JAVA_HOME、PATH和CLASSPATH。JAVA_HOME指向 JDK 的安装目录,PATH中添加 JDK 的bin目录路径,CLASSPATH指定类文件的搜索路径 。在 Linux 和 macOS 系统中,同样需要进行类似的环境变量配置。

**推荐:**我们一般使用IDEA作为编译器。下载网址

三、数据类型3.1 基本数据类型整数类型:

byte:占用 1 个字节,取值范围是 - 128 到 127 。常用于存储小整数,如网络通信中的字节数据。

short:占用 2 个字节,取值范围是 - 32768 到 32767 。适用于节省内存且数值范围不大的场景。

int:占用 4 个字节,是最常用的整数类型,取值范围大,一般整数运算都可使用。

long:占用 8 个字节,用于存储非常大的整数,如时间戳(从 1970 年 1 月 1 日 00:00:00 到现在的毫秒数)。定义long类型变量时,在数字后加L或l,如long num = 1234567890123L; 。

浮点类型:

float:占用 4 个字节,单精度浮点数,用于表示小数,但精度有限。定义时需在数字后加f或F,如float pi = 3.14f; 。

double:占用 8 个字节,双精度浮点数,精度比float更高,是常用的小数类型,如double e = 2.71828; 。

字符类型:char占用 2 个字节,用于表示单个字符,用单引号括起来,如char ch = ‘A’; 。它本质是一个 16 位的无符号整数,对应 Unicode 码表中的一个字符。

布尔类型:boolean只有true和false两个值,用于逻辑判断,如boolean isDone = false; 。

代码语言:javascript复制 public class test1 {

public static void main(String[] args) {

String name = "爱因斯晨";

int age = 18;

String gender = "女";

double height = 165.0;

boolean flag = true;

System.out.println(name);

Sys tem.out.println(age);

System.out.println(gender);

System.out.println(height);

System.out.println(flag);

}代码语言:javascript复制爱因斯晨

18

165.0

true注:拼接字符串与变量时应加上加号:

代码语言:javascript复制System.out.println("姓名:"+name);如果应让打印更好看可以加上’/t’:

代码语言:javascript复制System.out.println("姓名:"+'/t'+name);3.2 引用数据类型类:是对对象的抽象描述,包含属性和方法。例如String类用于处理字符串,String str = “Hello Java”; 。

接口:定义了一组方法签名,但没有方法体,类实现接口后需实现接口中的方法,常用于实现多继承和定义规范。

数组:是相同类型数据的有序集合,可以是基本数据类型数组,也可以是引用数据类型数组。

数组的声明与初始化:

静态初始化:声明数组的同时直接指定元素值,如int[] numbers = {1, 2, 3, 4, 5}; 。

动态初始化:先声明数组,再使用new关键字分配内存空间并指定长度,之后为元素赋值。如int[] ages = new int[5]; ages[0] = 20; 。

访问数组元素:通过索引访问,索引从 0 开始。如int first = numbers[0]; 。

多维数组:以二维数组为例,可看作数组的数组。如int[][] matrix = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; ,访问元素时用两个索引,如int element = matrix[1][2]; 。

数组的常用操作:

获取长度:通过length属性获取,如int len = numbers.length; 。

遍历数组:通常用for循环,Java 5.0 引入的增强型for循环(foreach 循环)更方便。例如:

代码语言:javascript复制// 普通for循环遍历

int[] numbers = {1, 2, 3, 4, 5};

for (int i = 0; i < numbers.length; i++) {

System.out.println(numbers[i]);

}

// foreach循环遍历

for (int num : numbers) {

System.out.println(num);

}数组复制:可使用System.arraycopy()方法或Arrays.copyOf()方法。例如:代码语言:javascript复制int[] source = {1, 2, 3, 4, 5};

int[] target = new int[5];

System.arraycopy(source, 0, target, 0, source.length);

int[] newArray = Arrays.copyOf(source, source.length);数组排序:使用Arrays.sort()方法。对于基本数据类型数组,如int[] numbers = {5, 3, 1, 4, 2}; Arrays.sort(numbers); ;对于引用数据类型数组,数组元素的类需实现Comparable接口 。四、变量和常量4.1 变量变量是用于存储数据的容器,使用前需先声明。声明变量要指定类型和名称,如int age; 。声明后可赋值,如age = 25; ,也可声明时直接赋值int age = 25; 。变量有作用域概念,方法内声明的是局部变量,作用域限于该方法;类中方法外声明的是成员变量,作用域是整个类 。

4.2 常量常量是在程序运行中值不能改变的量,使用final关键字声明。例如final double PI = 3.14159; ,常量名一般用大写字母,多个单词用下划线连接,声明时必须赋值,且后续不能修改其值 。

五、运算符5.1 算术运算符+:加法运算,如int sum = 3 + 5; 。

-:减法运算,int diff = 8 - 3; 。

*:乘法运算,int product = 4 * 6; 。

/:除法运算,整数相除结果为整数,小数部分舍去,如int quotient = 10 / 3; // 结果为3 ;若有浮点数参与运算,结果为浮点数,如double result = 10.0 / 3; // 结果为3.3333333333333335 。

%:取模运算,取余数,如int remainder = 10 % 3; // 结果为1 。

++:自增运算符,有前置和后置形式。前置++i先加 1 再返回值,后置i++先返回值再加 1 。如int i = 5; int j = ++i; // i和j都为6 ,int i = 5; int j = i++; // j为5,i为6 。

--:自减运算符,与自增运算符类似,有前置和后置形式 。

5.2 比较运算符==:判断两个值是否相等,int a = 5; int b = 5; boolean isEqual = a == b; // 结果为true 。

!=:判断两个值是否不相等,int a = 5; int b = 3; boolean isNotEqual = a!= b; // 结果为true 。

>:大于,int a = 5; int b = 3; boolean isGreater = a > b; // 结果为true 。

<:小于,int a = 3; int b = 5; boolean isLess = a < b; // 结果为true 。

>=:大于等于,int a = 5; int b = 5; boolean isGreaterOrEqual = a >= b; // 结果为true 。

<=:小于等于,int a = 3; int b = 5; boolean isLessOrEqual = a <= b; // 结果为true 。

5.3 逻辑运算符&&:逻辑与,两个条件都为true时结果才为true,具有短路特性,即第一个条件为false时不判断第二个条件。如boolean result = (3 > 2) && (5 > 4); // 结果为true 。

||:逻辑或,只要有一个条件为true结果就为true,也有短路特性。如boolean result = (3 > 2) || (5 < 4); // 结果为true

!:逻辑非,将true变为false,false变为true。如boolean result =!(3 > 2); // 结果为false 。

5.4 赋值运算符=:基本赋值运算符,将右边的值赋给左边变量,如int a = 5; 。

+=:加等于,int a = 3; a += 2; // 相当于a = a + 2,a的值为5 。

-=:减等于,int a = 5; a -= 2; // 相当于a = a - 2,a的值为3 。

*=:乘等于,int a = 3; a *= 2; // 相当于a = a * 2,a的值为6 。

/=:除等于,int a = 6; a /= 2; // 相当于a = a / 2,a的值为3 。

%=:取模等于,int a = 7; a %= 3; // 相当于a = a % 3,a的值为1 。

六、流程控制语句6.1 条件语句if-else:根据条件判断执行不同代码块。可以有多个else if分支,例如:

代码语言:javascript复制int score = 85;

if (score >= 90) {

System.out.println("优秀");

} else if (score >= 80) {

System.out.println("良好");

} else if (score >= 60) {

System.out.println("及格");

} else {

System.out.println("不及格");

}switch:根据表达式的值选择执行多个分支中的一个。表达式可以是byte、short、char、int、String(Java 7 及以上)、枚举类型。每个case分支后需用break语句跳出,否则会继续执行下一个case,default分支处理其他未匹配情况,例如:

代码语言:javascript复制int day = 3;

switch (day) {

case 1:

System.out.println("星期一");

break;

case 2:

System.out.println("星期二");

break;

case 3:

System.out.println("星期三");

break;

default:

System.out.println("其他");

break;

}进阶写法:

代码语言:javascript复制case 1 ->{

System.out.println("一");

}

case 2 ->{

System.out.println("二");

}

case 3 ->{

System.out.println("三");

}

case 4 ->{

System.out.println("四");

}max版:

代码语言:javascript复制case 1 -> System.out.println("一");

case 2 -> System.out.println("二");

case 3 -> System.out.println("三");

case 4 -> System.out.println("四");注:如果大括号中只有一行代码的话,大括号可以省略。

这个新特性只可以JDK12及以上版本使用!

6.2 循环语句for:常用于已知循环次数的场景。语法结构为for(初始化表达式; 循环条件; 更新表达式) { 循环体 } 。例如:

代码语言:javascript复制for (int i = 1; i <= 5; i++) {

System.out.println(i);

}使用for循环时,要正确设置初始化表达式、循环条件和更新表达式,否则可能导致死循环或循环次数错误。

while:先判断条件,条件为true时执行循环体。例如:

代码语言:javascript复制int i = 1;

while (i <= 5) {

System.out.println(i);

i++;

}使用while循环时,务必在循环体中改变循环条件,否则会陷入死循环。

do-while:先执行一次循环体,再判断条件,条件为true时继续执行循环体。例如:

代码语言:javascript复制int i = 1;

do {

System.out.println(i);

i++;

} while (i <= 5);do-while循环的特点是循环体至少执行一次,适用于先执行操作再判断条件的场景。

6.3 跳转语句break:用于跳出当前循环或switch语句。在循环中使用可提前结束循环,例如:

代码语言:javascript复制for (int i = 1; i <= 10; i++) {

if (i == 5) {

break;

}

System.out.println(i);

}在多层循环中,可通过标签指定跳出的循环。例如:

代码语言:javascript复制outer:

for (int i = 0; i < 3; i++) {

for (int j = 0; j < 3; j++) {

if (i == 1 && j == 1) {

break outer;

}

System.out.println("i: " + i + ", j: " + j);

}

}continue:用于跳过本次循环的剩余代码,直接开始下一次循环。例如:

代码语言:javascript复制for (int i = 1; i <= 5; i++) {

if (i == 3) {

continue;

}

System.out.println(i);

}在多层循环中,continue也可与标签配合使用,跳过指定循环的某次迭代。

return:用于从方法中返回值,并结束方法执行。如果方法返回类型为void,return可省略;若有返回值,必须用return返回相应类型的值。例如:

代码语言:javascript复制public int add(int a, int b) {

return a + b;

}七、总结次循环。例如:

代码语言:javascript复制for (int i = 1; i <= 5; i++) {

if (i == 3) {

continue;

}

System.out.println(i);

}在多层循环中,continue也可与标签配合使用,跳过指定循环的某次迭代。

return:用于从方法中返回值,并结束方法执行。如果方法返回类型为void,return可省略;若有返回值,必须用return返回相应类型的值。例如:

代码语言:javascript复制public int add(int a, int b) {

return a + b;

}七、总结通过本教程,你对 Java 基础语法有了全面了解,包括数据类型、变量与常量、运算符、流程控制语句等。这些知识是进一步学习 Java 编程的基石,后续你可以深入学习 Java 的面向对象编程、异常处理、I/O 操作、多线程等高级特性,不断提升编程能力。

🎯 相关推荐

【关注】山东:一体化建设“灯塔—党建在线”网络平台
福州市长乐市河下街桑拿洗浴商家综合服务排名前十榜单,长乐市桑拿洗浴哪家服务好!
阴阳怪气怼人,又不带脏字的20句话,建议不会吵架的背下来!
摸头的意思
365直播网网络电视台

摸头的意思

📅 06-27 👀 6969
梦幻西游电脑版免费区是哪个?
28365365tw五大联赛

梦幻西游电脑版免费区是哪个?

📅 07-18 👀 7957
发字最佳名字组合
28365365tw五大联赛

发字最佳名字组合

📅 08-02 👀 6403
【春日童诗会】贝贝班:春天的颜色
365直播网网络电视台

【春日童诗会】贝贝班:春天的颜色

📅 06-17 👀 2252
电子保密柜常见故障及解决方案
28365365tw五大联赛

电子保密柜常见故障及解决方案

📅 07-10 👀 5477
绘画教程
帕尼尼球星卡FIFA365

绘画教程

📅 01-28 👀 9700