Java基础笔记1】Java基础语法

news2024/9/20 1:15:19

目录

一、Java简介 

二、JDK和Java初体验

三、配置环境变量

四、IDEA快捷键

五、Java语法基础

1. 注释

2. 字面量

3. 变量 

4. 关键字和标识符

5. 变量详解

a. 数值数据在计算机中的存储​编辑

b. 文本、图片、音频等数据在计算机中的存储

c. 八进制和十六进制

6. 数据类型

a. long和float的注意事项

7. 类型转换

a. 自动类型转换

b. 表达式的自动类型转换

c. 强制类型转换(Alt+Enter)

8. 运算符

a. 算数运算符

b. 自增自减运算符

c. 赋值运算符

d. 关系运算符

e. 逻辑运算符

f. 三元运算符

​g. 运算符的优先级

9. API与输入API

a. 输入API

10. 流程控制

a. 分支结构

if分支:

switch分支:

b. 循环结构

for循环:

while循环: 

do-while循环:

死循环:

循环嵌套:

跳转关键字:

给循环命名:

11. 生成随机数

12. 数组

a. 静态数组

静态数组的定义

数组的存储

数组的访问

数组的遍历

b. 动态数组

c. 数组在内存中的执行原理:

d. 多个数组变量指向同一个数组

13. 方法

a. 概念:

b. 注意事项:

c. 方法在计算机中的执行原理

e. Java的参数传递机制

f.方法重载

六、Debug入门

七、案例

1. 生成验证码

2. 抢红包

3. 打印星星


一、Java简介 

二、JDK和Java初体验


Windows系统命令行常用命令


 

三、配置环境变量

  • 打开Windows系统的环境变量设置(可在任务栏左下角搜索)
  • 在系统变量中配置一个JAVA_HOME
  • 在Path环境变量中添加一个%JAVA_HOME%\bin

四、IDEA快捷键

C + A + l : 格式化

A + S + ↑ :上下移动读取代码

C + / :注释

C + A + t : 代码快捷键


五、Java语法基础

1. 注释

2. 字面量

String s = ""; //空字符串

3. 变量 

 4. 关键字和标识符

a. 命名规则

5. 变量详解

a. 数值数据在计算机中的存储

b. 文本、图片、音频等数据在计算机中的存储

c. 二进制

十进制转换为二进制的方法有多种,这里介绍一种常用的方法:除2取余法。

除2取余法步骤:

  1. 将十进制数除以2,记录余数
    • 余数为该二进制数的最低位(右边第一位)。
    • 商继续参与下一步的除法。
  2. 重复上一步骤,直到商为0
    • 每次的余数从右到左依次排列,构成该十进制数的二进制表示。

示例:

将十进制数 23 转换为二进制:

  1. 23÷2=11 余 1
  2. 11÷2=5 余 1
  3. 5÷2=2 余 1
  4. 2÷2=1 余 0
  5. 1÷2=0 余 1

将余数从下到上排列,得到 23 的二进制表示为 10111

d. 八进制和十六进制

6. 数据类型

a. long和float的注意事项

7. 类型转换

a. 自动类型转换

b. 表达式的自动类型转换

c. 强制类型转换(Alt+Enter)

8. 运算符

a. 算数运算符

b. 自增自减运算符

c. 赋值运算符

复合赋值运算符还会自动类型转换:

d. 关系运算符


e. 逻辑运算符


短路与和短路或的效率更高。

f. 三元运算符


g. 运算符的优先级

注意在Java中的优先级大于

9. API与输入API

a. 输入API

10. 流程控制

a. 分支结构

  • if分支:
    单分支、双分支、多分支
  • switch分支:

b. 循环结构

  • for循环:
  • while循环: 
  • do-while循环:

  • 死循环:
  • 循环嵌套:
    外部循环每循环一次,内部循环会执行完一轮。
跳转关键字:

给循环命名: 

11. 生成随机数

  • 导包:import java.util.Random;
  • 创建随机数对象: Random r = new Random();
  • 生成随机数:int n1 = r.nextInt(10); // 生成[0, 10)的随机整数。(包前不包后)
  • 生成随机数:int n2 = r.nextInt(10,20); // 生成[0, 20)的随机整数。(包前不包后)

还有一种方式: int i = Math.random(); 利用Math类中的random()静态方法。

12. 数组

a. 静态数组

  • 静态数组的定义
  • 数组的存储

  • 数组的访问
  • 数组的遍历

b. 动态数组

静态初始化数组:int[] arr1 = new int[]{1, 2, 3};  //后面的[]中没有数字。

动态初始化数组:int[] arr2 = new int[3]; 

c. 数组在内存中的执行原理:

d. 多个数组变量指向同一个数组

13. 方法

a. 概念:

b. 注意事项:

c. 方法在计算机中的执行原理

方法调用时,是进入到栈中运行的。

为什么要在栈中调用方法?

        保证一个方法调用完另外一个方法后,可以回来。

e. Java的参数传递机制

f.方法重载

六、Debug入门

七、案例

1. 生成验证码

两次随机,第一次随机是数字还是大小写字母,第二次随机具体的数字或字母。

2. 抢红包

(可以先打乱奖金在数组中的顺序,再按下标发出,这样也是随机,且性能更好。)

3. 打印星星

(计算机按行打印,找规律,三目运算符)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2147487.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【LabVIEW】事件结构的用法

本篇文章记录我学习LabVIEW的事件结构用法,希望我的分享对你有所帮助! 目录 一、案例说明 1、 LabVIEW实现“YAXBXC的计算” 2、添加事件结构 一、案例说明 在LabVIEW实现“YAXBXC的计算”的基础上,加上事件结构,实现单击一次按…

【读书笔记-《30天自制操作系统》-22】Day23

本篇内容比较简单,集中于显示问题。首先编写了应用程序使用的api_malloc,然后实现了在窗口中画点与画线的API与应用程序。有了窗口显示,还要实现关闭窗口的功能,于是在键盘输入API的基础上实现了按下按键关闭窗口。最后发现用上文…

初学者笔记本电脑玩转大模型系列二:微调谷歌Gemma模型

之前分享了《初学者笔记本电脑玩转大模型系列一:利用ollama跑大模型》,这不,Google发布了Gemma开放模型,同等参数尺寸性能最好的大模型,那么言归正传,如何在笔记本电脑微调Gemma模型呢?我们接下…

阿里云CTO:通义稳居全球最强开源大模型,性能接近GPT-4o

来源:首席数智官 9月19日,在2024杭州云栖大会上,阿里云CTO周靖人表示,阿里云正在围绕AI时代,树立一个AI基础设施的新标准,全面升级从服务器到计算、存储、网络、数据处理、模型训练和推理平台的技术架构体…

Temu应用全球下载量突破7.35亿次!美国占27%,还是主要市场

据了解,随着购物者更多选择Temu作为实惠的在线购物目的地,其月访问量在今年第一季度跃升至5亿次以上,应用下载量也大幅增加。据外媒报道,根据Stocklytics的最新数据,Temu应用程序截至目前的下载量已超过7.35亿次。 最新…

动态线程池(二)

动态线程池 环境搭建 启动Nacos和redis 安装Node-Exporter 安装Prometheus 安装Grafana 源码解析

鸢尾花书实践和知识记录[数学要素3-2乘除]

书的作者 文章目录 算术乘除:先乘除,后加减,括号内先算基本的乘法运算计算阶乘基本除法 向量的乘法:标量乘法,向量内积,逐项积标量乘法向量的内积对于inner和dot的实现方式的探究逐项积dot的计算过程 逐项…

MAC如何获取文件数字签名和进程名称

1、安装需要查看数字签名和进程名称的软件包 2、打开终端命令行(Terminal) 3、查找数字签名 在终端命令行中输入: codesign -dvv 安装的软件路径 2>&1 | grep "Authority=" | head -n 1 | cut -d = -f2”

PDF使用虚拟列表技术做渲染和加载带来的问题

🏆本文收录于《CSDN问答解惑-专业版》专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收…

JavaFX实现视频播放功能

一、前言 最近使用javaFx写了个简单的视频播放功能,可以实现打开本地视频播放。 二、实现 1.使用jdk8自带的javaFx包实现,首先定义一个类VideoPlayer。 代码如下: import javafx.application.Application; import javafx.application.Platf…

LAN8720A-CP-TR-ABC QFN-24 以太网收发器芯片

功能: 高性能收发器:支持10BASE-T和100BASE-TX标准,能够自动协商最佳速度和双工模式。 小尺寸:是业界尺寸最小的解决方案,适合空间受限的应用场景。 低功耗:功耗比现有的Microchip收发器低40%&#x…

【Unity】URP Rendering总结

unity-urp-rendering 介绍 个人学习总结,不定期更新 仓库 Unity版本:2022.3.42 Unity URP渲染管线下相关的渲染demo和总结 1. GPUInstance 1.1 Graphics.DrawMeshInstanced 1.2 Graphics.DrawMeshInstancedIndirect 1.3 MeshRenderer.SetPropertyBlock…

MTK芯片机型的“工程固件” 红米note9 5G版资源预览 写入以及改写参数相关步骤解析

小米机型:小米5 小米5x 米6 米6x 米8 米9 米10系列 米11系列 米12系列 mix mix2 mix2s mix3 max max2 max3 note3 8se 9se cc9系列 米play 平板系列等分享 红米机型:红米note4 红米note4x 红米note5 红米note6 红米note7 红米note8 红米note8pro 红米s2 红米note7pro 红米…

【C++算法】模拟算法

替换所有的问号 题目链接 替换所有的问号https://leetcode.cn/problems/replace-all-s-to-avoid-consecutive-repeating-characters/description/ 算法原理 代码步骤 class Solution { public:string modifyString(string s) {int n s.size();for(int i 0; i < n; i){…

网络药理学:15、草稿暂存区

TCMSP 韦恩图在线网站 https://bioinfogp.cnb.csic.es/tools/venny/index.html String数据库参数详解&#xff1a;https://www.bilibili.com/video/BV1q64y1k7Zf?p16&vd_sourceaed4c634975918b14b7354ec93ce5389 David数据库可以用基因ID或者基因名。 KEGG数据库使用&am…

高效处理NPE!!

相信不少小伙伴已经被java的NPE(Null Pointer Exception)所谓的空指针异常搞的头昏脑涨,有大佬说过“防止 NPE&#xff0c;是程序员的基本修养。”但是修养归修养&#xff0c;也是我们程序员最头疼的问题之一&#xff0c;那么我们今天就要尽可能的利用Java8的新特性 Optional来…

视觉语言大模型模型介绍-CLIP学习

多模态学习领域通过结合图像和文本信息&#xff0c;为各种视觉语言任务提供了强大的支持。图像和文本的结合在人工智能领域具有重要的意义&#xff0c;它使得机器能够更全面地理解人类的交流方式。通过这种结合&#xff0c;模型能够处理包括图像描述、视觉问答、特征提取和图像…

Maya动画基础

Maya动画基础教程&#xff08;完整&#xff09;_哔哩哔哩_bilibili 第一集 动画基础设置 altv播放动画 选择撕下副本 右键---播放预览 第二集 k帧记录物体的空间信息 初始位置清零 删除历史记录 s键key帧 自动记录位置信息 删除帧&#xff0c;按住右键选择delete 按shif…

Apache subversion 编译流程

目录 1. 概述2. 依赖库简介2.1 Expat2.2 Apache apr2.3 Apache apr-iconv2.4 Apache apr-util2.5 Zlib2.6 OpenSSL2.7 Sqlite2.8 Apache Serf2.9 Apache subversion3. 编译3.1 Expat编译3.1.1 源码信息3.1.2 CMake-GUI3.1.3 编译步骤3.2 APR编译3.2.1 源码信息3.2.2 编译步骤3.…

详解c++菱形继承和多态---下

菱形继承 #include<iostream>using namespace std; class Animal { public:int m_Age; }; class Sheep : public Animal {}; class Tuo : public Animal {}; class SheepTuo : public Sheep, public Tuo {}; void test() {SheepTuo st;st.Sheep::m_Age 18;st.Tuo::m_Age…