Java:基础语法
基础语法
- 1. 基本结构
- 类和方法
- 2. 变量和数据类型
- 基本数据类型
- 引用数据类型
- 3. 操作符
- 算术操作符
- 比较操作符
- 逻辑操作符
- 4. 控制结构
- 条件语句
- 循环语句
- 5. 数组
- 6. 方法
- 7. 面向对象编程
- 类和对象
- 继承
- 多态
- 8. 异常处理
- 9. 常用类库
1. 基本结构
类和方法
Java程序的基本单位是类,每个类包含一个或多个方法。类是对象的蓝图,定义了对象的属性和行为。方法是执行特定任务的代码块。
public class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}
}
public class HelloWorld: 定义一个公共类HelloWorld。public static void main(String[] args): 定义程序的入口方法main,它是Java程序的执行起点。System.out.println("Hello, World!");: 输出字符串到控制台。
2. 变量和数据类型
基本数据类型
Java有八种基本数据类型,每种类型都有固定的大小和范围。
byte: 8位整数,范围-128到127。short: 16位整数,范围-32,768到32,767。int: 32位整数,范围-231到231-1。long: 64位整数,范围-263到263-1。float: 32位单精度浮点数。double: 64位双精度浮点数。char: 16位Unicode字符。boolean: 布尔类型,只有两个值:true和false。
int age = 25;
double price = 19.99;
char grade = 'A';
boolean isJavaFun = true;
引用数据类型
引用数据类型包括类、接口和数组。
String: 代表字符串。
String name = "Alice";
3. 操作符
算术操作符
用于进行算术运算。
+: 加法。-: 减法。*: 乘法。/: 除法。%: 取模(余数)。
int a = 10;
int b = 5;
int sum = a + b; // 15
int diff = a - b; // 5
int product = a * b; // 50
int quotient = a / b; // 2
int remainder = a % b; // 0
比较操作符
用于比较两个值。
==: 等于。!=: 不等于。>: 大于。<: 小于。>=: 大于等于。<=: 小于等于。
int x = 10;
int y = 20;
boolean isEqual = (x == y); // false
boolean isNotEqual = (x != y); // true
boolean isGreater = (x > y); // false
boolean isLesser = (x < y); // true
boolean isGreaterOrEqual = (x >= y); // false
boolean isLesserOrEqual = (x <= y); // true
逻辑操作符
用于进行逻辑运算。
&&: 逻辑与。||: 逻辑或。!: 逻辑非。
boolean a = true;
boolean b = false;
boolean andResult = (a && b); // false
boolean orResult = (a || b); // true
boolean notResult = !a; // false
4. 控制结构
条件语句
if语句:根据条件执行不同的代码块。
if (age > 18) {System.out.println("Adult");
} else {System.out.println("Not Adult");
}
switch语句:根据变量的值执行不同的代码块。
int day = 2;
switch (day) {case 1:System.out.println("Monday");break;case 2:System.out.println("Tuesday");break;// 其他casedefault:System.out.println("Invalid day");
}
循环语句
for循环:用于固定次数的循环。
for (int i = 0; i < 10; i++) {System.out.println(i);
}
while循环:用于基于条件的循环。
int i = 0;
while (i < 10) {System.out.println(i);i++;
}
do-while循环:类似于while循环,但至少执行一次。
int i = 0;
do {System.out.println(i);i++;
} while (i < 10);
5. 数组
数组是相同数据类型元素的集合。
int[] numbers = {1, 2, 3, 4, 5};
for (int number : numbers) {System.out.println(number);
}
6. 方法
方法是执行特定任务的代码块,可以传入参数并返回结果。
public int add(int a, int b) {return a + b;
}public static void main(String[] args) {HelloWorld hw = new HelloWorld();int sum = hw.add(5, 3);System.out.println(sum); // 输出8
}
7. 面向对象编程
类和对象
类是对象的蓝图,对象是类的实例。
public class Dog {String breed;int age;void bark() {System.out.println("Woof");}
}public class TestDog {public static void main(String[] args) {Dog myDog = new Dog();myDog.breed = "Labrador";myDog.age = 3;myDog.bark();}
}
继承
通过继承,一个类可以继承另一个类的属性和方法。
public class Animal {void eat() {System.out.println("This animal eats food.");}
}public class Dog extends Animal {void bark() {System.out.println("Woof");}
}public class TestInheritance {public static void main(String[] args) {Dog myDog = new Dog();myDog.eat(); // 输出"This animal eats food."myDog.bark(); // 输出"Woof"}
}
多态
多态允许不同类的对象通过相同的接口调用不同的方法实现。
public class Animal {void sound() {System.out.println("Animal makes a sound");}
}public class Dog extends Animal {void sound() {System.out.println("Woof");}
}public class Cat extends Animal {void sound() {System.out.println("Meow");}
}public class TestPolymorphism {public static void main(String[] args) {Animal myDog = new Dog();Animal myCat = new Cat();myDog.sound(); // 输出"Woof"myCat.sound(); // 输出"Meow"}
}
8. 异常处理
Java通过异常处理机制来处理运行时错误,确保程序的健壮性。
try {int division = 10 / 0;
} catch (ArithmeticException e) {System.out.println("Cannot divide by zero");
} finally {System.out.println("This block is always executed");
}
try块:包含可能抛出异常的代码。catch块:捕获并处理异常。finally块:无论是否发生异常,始终执行的代码块。
9. 常用类库
Java标准库提供了许多实用的类和方法,例如java.util包中的ArrayList类:
import java.util.ArrayList;public class TestArrayList {public static void main(String[] args) {ArrayList<String> list = new ArrayList<>();list.add("Apple");list.add("Banana");list.add("Cherry");for (String fruit : list) {System.out.println(fruit);}}
}
import java.util.ArrayList;: 导入ArrayList类。ArrayList<String> list = new ArrayList<>();: 创建ArrayList对象。list.add("Apple");: 向列表添加元素。for (String fruit : list): 使用增强的for循环遍历列表。
相关文章:
Java:基础语法
基础语法 1. 基本结构类和方法 2. 变量和数据类型基本数据类型引用数据类型 3. 操作符算术操作符比较操作符逻辑操作符 4. 控制结构条件语句循环语句 5. 数组6. 方法7. 面向对象编程类和对象继承多态 8. 异常处理9. 常用类库 1. 基本结构 类和方法 Java程序的基本单位是类&am…...
安装bedtools详细步骤和详细介绍bedtools用法
安装bedtools详细步骤和详细介绍bedtools用法 一、安装bedtools详细步骤下载解压安装编译依赖编译设置环境变量激活环境变量执行命令查看版本二、详细介绍bedtools用法使用bedtools示例用法bedtools intersectbedtools bamtobedbedtools window一、安装bedtools详细步骤 下载 …...
21 - grace数据处理 - 补充 - 泄露误差改正 - Slepian局部谱分析法(一) - slepian分析法理论理解
21 - grace数据处理 - 泄露误差改正 - Slepian局部谱分析法 - slepian分析法理论理解 0 引言1 slepian谱分析法1.1 slepian谱分析法AI解释1.2 基于slepian谱分析法的GRACE数据处理应用2 slepian谱分析法关键过程实现2.1 求解正定特征方程2.2 计算slepian基函数2.3 计算Shannon数…...
WLAN国家码与信道顺从表
国家码和信道顺从表及信道功率限制 不同的国家和地区规定了在本国或本地区可以使用的信道、射频信号在信道中的最大发射功率。工作在不同信道的射频信号,信号强度可能会有差别。国家码和信道顺从表、各信道的功率限制值、信道编号和频率对照关系请参见国家码和信道…...
行为型设计模式1:状态/策略/命令
行为型设计模式:状态/策略/命令 (qq.com)...
【知识专栏丨python数分实战】天猫订单数据分析及可视化|taobao天猫订单接口
今天这篇文章将给大家介绍天猫订单数据分析及可视化案例。 import pandas as pdimport numpy as npfrom pyecharts.charts import Pie,Bar,Line,Map,Map3D,Funnelfrom pyecharts import options as optsimport matplotlib.pyplot as pltimport warningsimport seaborn as snsfr…...
[kimi笔记]为什么csc.exe不可以双击运行
csc.exe 是 C# 编译器的可执行文件,它是 .NET Framework 的一部分,用于编译 C# 源代码文件( .cs 文件)生成可执行文件( .exe 文件)或其他类型的程序集。 csc.exe 不能通过双击运行的原因有以下几点&…...
护眼大路灯哪个牌子好?2024学生护眼大路灯推荐
护眼大路灯哪个牌子好?护眼大路灯不仅能够提供日常的光线照明,还模拟了太阳光光线,使在室内用眼学习也能够有着自然光般的舒适感,但现在市场上有许多对产品质量把控不过关、光线效果欠佳、存有安全隐患的劣质护眼大路灯产品&#…...
Vue项目中手搓滑动校验模块-demo
实现代码 SliderCheck.vue <template><div class"drag" ref"dragDiv"><div class"drag_bg" ref"dragBg"></div><div class"drag_text" ref"dragText">{{ confirmWords }}</di…...
Socket如何实现客户端和服务器间的通信
Socket 是实现网络通信的一种机制,它允许在不同主机之间的进程通过网络进行数据交换。下面我将简要介绍如何使用 Socket 实现客户端和服务器间的通信。 客户端-服务器通信步骤: 服务器端: 创建服务器端 Socket: 服务器端通过创…...
基于Spring boot + Vue的校园论坛
作者的B站地址:程序员云翼的个人空间-程序员云翼个人主页-哔哩哔哩视频 csdn地址:程序员云翼-CSDN博客 1.项目技术栈: 前后端分离的项目 后端:Springboot MybatisPlus 前端:Vue ElementUI 数据库: …...
RabbitMQ高级特性 - 生产者消息确认机制
文章目录 生产者消息确认机制概述confirm 代码实现return 代码实现 生产者消息确认机制 概述 为了保证信息 从生产者 发送到 队列,因此引入了生产者的消息确认机制. RabbitMQ 提供了两种解决方案: 通过事务机制实现.通过发送确认机制(confi…...
webpack的loader机制
webpack的loader机制 loader本质上就是导出函数的JavaScript模块。导出的函数,可以用来实现内容的转换。 /* * param{string|Buffer} content 源文件的内容 * param{object} [map] SourceMap数据 * param{any} [meta] meta数据,可以是任何数据 * */ fu…...
(STM32笔记)十一、通过EXTI外部中断实现 按键控制LED
我用的是正点的STM32F103来进行学习,板子和教程是野火的指南者。 之后的这个系列笔记开头未标明的话,用的也是这个板子和教程。 十一、通过EXTI外部中断实现 按键控制LED 十一、通过EXTI外部中断实现 按键控制LED1、按键模块按键原理图按键程序思路 2、中…...
假如家里太大了,wifi连不上了怎么办
最近有个土豪朋友抱怨,他家里太大了,一个路由器的Wi-Fi信号根本无法覆盖他们家的每个房间,都没办法上网看奥运会比赛了。(还好我是穷人,就没有这种烦恼T_T)。 然后我问他为何不用一个路由器作主路由器&…...
elementPlus 设置el-input文本域固定高度和禁止下拉
elementPlus 设置el-input文本域固定高度和禁止下拉 话不多说直接上代码 // resize"none" 禁止下拉<el-inputv-model"textarea"style"width: 240px"type"textarea"resize"none"placeholder"请输入"/>// 设…...
(转)领导人必过的三道关
为什么企业领导人享受优厚的待遇,为什么董事会对企业领导人千挑万选?因为企业生命如此脆弱,据美国《财 富》杂志报道,世界500强企业平均寿命40年,世界1000强企业平均寿命30年,一般跨国公司平均寿命10年。而就是这脆弱…...
速盾:cdn可以定时刷新缓存吗?
CDN(Content Delivery Network)是一种通过在全球各地分布的服务器上缓存和传送网站内容的技术,以提高用户访问速度和降低服务器负载。CDN的缓存机制可以减少用户对源服务器的请求次数,从而提高网站的响应速度和性能。但是…...
代码随想录算法训练营第二十九天| 62.不同路径、63. 不同路径 II
写代码的第二十九天 继续动归!!! 62.不同路径 思路 解决问题1:dp[i][j]的的含义是什么?本题给的是一个二维的表,判断从左上角走到右下角有多少种路径,所以dp应该是二维数组,dp[i]…...
Go+Redis零基础到用户管理系统API实战_20240730 课程笔记
概述 如果您没有Golang的基础,应该学习如下前置课程。 Golang零基础入门Golang面向对象编程Go Web 基础Go语言开发REST API接口_20240728Go语言操作MySQL开发用户管理系统API教程_20240729Redis零基础快速入门_20231227 基础不好的同学每节课的代码最好配合视频进…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版分享
平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...
生成 Git SSH 证书
🔑 1. 生成 SSH 密钥对 在终端(Windows 使用 Git Bash,Mac/Linux 使用 Terminal)执行命令: ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" 参数说明: -t rsa&#x…...
如何为服务器生成TLS证书
TLS(Transport Layer Security)证书是确保网络通信安全的重要手段,它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书,可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...
2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...
python爬虫——气象数据爬取
一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...
【Linux】自动化构建-Make/Makefile
前言 上文我们讲到了Linux中的编译器gcc/g 【Linux】编译器gcc/g及其库的详细介绍-CSDN博客 本来我们将一个对于编译来说很重要的工具:make/makfile 1.背景 在一个工程中源文件不计其数,其按类型、功能、模块分别放在若干个目录中,mak…...
uniapp 小程序 学习(一)
利用Hbuilder 创建项目 运行到内置浏览器看效果 下载微信小程序 安装到Hbuilder 下载地址 :开发者工具默认安装 设置服务端口号 在Hbuilder中设置微信小程序 配置 找到运行设置,将微信开发者工具放入到Hbuilder中, 打开后出现 如下 bug 解…...
