从零开始学JAVA
一、编写Hello world程序
public class JavaMain1 {//主程序执行入口,main方法public static void main(String[] args){System.out.println("Hello world!");}
}
运行结果
Hello world!
java编写主程序常见错误: 1、System ---首字母没有大写 2、主程序没有void
二、关键字
关键字:就是Java语言赋予的特定含义单词 特点:关键字字母全部都是小写,IDEA针对关键字有特殊的颜色标记。如:public class static void 如在IEDA中的关键字,有明显的颜色区分。

三、常量
|
示例代码:
public class JavaMain1 {//主程序执行入口,main方法public static void main(String[] args){//输出字符串常量System.out.println("Hello world");//输出整数常量System.out.println(77777);//输出小数常量System.out.println(77.777);//输出字符常量System.out.println('男');//输出布尔常量System.out.println(ture);}
}
Hello world
77777
77.777
男
true
四、变量
变量:在程序运行过程中,其值可以发生改变的值(变量是内存中一小块区域) 定义变量:变量的数据类型 变量名称=赋值
五、字符和字符串中的‘+’操作
字符的‘+’操作:拿字符在计算机底层对应的数值来进行计算(底层计算使用ASCII码)
ASCII码表中的26个大小写字母对应的十进制如下表:
| 大写字母 | ASCII码 | 小写字母 | ASCII码 |
|----------|----------|----------|----------|
| A | 65 | a | 97 |
| B | 66 | b | 98 |
| C | 67 | c | 99 |
| D | 68 | d | 100 |
| E | 69 | e | 101 |
| F | 70 | f | 102 |
| G | 71 | g | 103 |
| H | 72 | h | 104 |
| I | 73 | i | 105 |
| J | 74 | j | 106 |
| K | 75 | k | 107 |
| L | 76 | l | 108 |
| M | 77 | m | 109 |
| N | 78 | n | 110 |
| O | 79 | o | 111 |
| P | 80 | p | 112 |
| Q | 81 | q | 113 |
| R | 82 | r | 114 |
| S | 83 | s | 115 |
| T | 84 | t | 116 |
| U | 85 | u | 117 |
| V | 86 | v | 118 |
| W | 87 | w | 119 |
| X | 88 | x | 120 |
| Y | 89 | y | 121 |
| Z | 90 | z | 122 |字符串的‘+’操作:当字符串中出现‘+’,此时的‘+’是连接运算符
六、关系运算符
关系运算符有6种关系,分别为小于、小于等于、大于、等于、大于等于、不等于。
| 符号 | 说明 |
|---|---|
| == | a==b,判断a和b的值是否相等,成立为true,不成立为false |
| != | 𝑎 =𝑏a =b,判断a和b的值是否不相等,成立为true,不成立为false |
| >> | a>>b,判断a是否大于b,成立为true,不成立为false |
| > => = | 𝑎>=𝑏a>=b,判断a是否大于等于b,成立为true,不成立为false |
| << | 𝑎<𝑏a<b,判断a是否小于b,成立为true,不成立为false |
| < =< = | 𝑎<=𝑏a<=b,判断a是否小于等于b,成立为true,不成立为false |
注意事项:关系运算符的结果都是𝑏𝑜𝑜𝑙𝑒𝑎𝑛类型,要么是𝑡𝑟𝑢𝑒,要么是𝑓𝑎𝑙𝑠𝑒。千万不要把“”误写成“=”,“”是判断是否相等的关系,“=”是赋值。注意事项:关系运算符的结果都是boolean类型,要么是true,要么是false。千万不要把“”误写成“=”,“”是判断是否相等的关系,“=”是赋值。
七、数据类型的特性或数据类型的属性
Java中基本数据类型名称、关键字、内存占用和取值范围的表格:
| 数据类型 | 关键字 | 内存占用 | 取值范围 |
|---|---|---|---|
| byte | byte | 1 字节 | -128 到 127 (-2^7 到 2^7-1) |
| short | short | 2 字节 | -32,768 到 32,767 (-2^15 到 2^15-1) |
| int | int | 4 字节 | -2,147,483,648 到 2,147,483,647 (-2^31到 2^31-1) |
| long | long | 8 字节 | -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 (-2^63 到 2^63-1) |
| float | float | 4 字节 | 大约 ±3.4E-45 到 ±3.4E38,有效位数为6-7位 |
| double | double | 8 字节 | 大约 ±4.9E-324 到 ±1.8E308,有效位数为15位 |
| char | char | 2 字节 | '\u0000'(0)到 '\uffff'(65,535) |
| boolean | boolean | 不确定,通常实现为1位或1字节 | true 或 false |
请注意以下几点:
char类型表示一个Unicode字符。它以16位(2个字节)的形式存储,范围从'\u0000'(也就是0)到'\uffff'(也就是65,535)。boolean类型的内存占用在Java中没有明确指定,并且可能因JVM实现而异。虽然它可以只用1位来表示,但出于对齐原因通常会使用更多空间。float和double类型遵循IEEE 754标准,分别用32位和64位来存储浮点数。
以上表格提供了每种基本数据类型的关键字、内存占用和取值范围的基本概述。
八、逻辑运算符
| 名称 | 运算符 | 描述 |
| 逻辑与 | & | a&b,a和b都是true,结果为true。否则为false。 |
| 逻辑或 | | | a|b,a和b都是false,结果为false。否则为true。 |
| 逻辑非 | ! | !a,结果和a的结果正好相反 |
| 逻辑异或 | ^ | a^b,a和b结果不同为true,相同为false |
| 短路与 | && | 作用和&相同,但是有短路 |
| 短路或 | || | 作用和|相同,但是有短路 |
逻辑运算符的代码示例如下
public class Logicaloperation {public static void main(String[] args){// 逻辑与,左边&右边,都必须是true,则返回结果是为trueSystem.out.println("&并且");System.out.println(true & true);System.out.println(true & false);System.out.println(false & false);int a = 10;int b = 20;int c = 30;//a>b false b>c falseSystem.out.println(a>b&b>c);// 输出:false//a<b true b<c trueSystem.out.println(a<b&b<c);// 输出:true//a<b true b>c falseSystem.out.println(a<b&b>c);// 输出:false// 逻辑或,左边 | 右边,只要有一个为true,则返回为trueSystem.out.println("| 演示");System.out.println(true | false); // 输出:trueSystem.out.println(false | false); // 输出:falseSystem.out.println(true | true); // 输出:true// 逻辑异或System.out.println("异或 演示");System.out.println(true ^ false); // 输出:trueSystem.out.println(true ^ true); // 输出:false//逻辑非 !System.out.println("! 取反");System.out.println(!true); // 输出:System.out.println(!false); // 输出:// 短路与//左边返回false,右边不会执行,若左边返回true,两边执行System.out.println("短路与&& 演示");System.out.println((a++>100)&&(b++>100));System.out.println(a);System.out.println(b);// 短路或//左边和右边只要有一个返回true,最终结果是trueint d = 10;System.out.println("短路或 ||");System.out.println((d++>1)||(b++>100));System.out.println(d);System.out.println(b);}
}
&并且
true
false
false
false
true
false
| 演示
true
false
true
异或 演示
true
false
! 取反
false
true
短路与&& 演示
false
11
20
短路或 ||
true
11
20
相关文章:
从零开始学JAVA
一、编写Hello world程序 public class JavaMain1 {//主程序执行入口,main方法public static void main(String[] args){System.out.println("Hello world!");} } 运行结果 Hello world! java编写主程序常见错误: 1、System ---首字母没有…...
MySQL(四)查询
1、MySQL限性约束 —非空、唯一(自增)、主外键、检查(MySQL存在但是不能用)。 约束主要完成对数据的校验,保证数据库数据的完整性;如果有相互依赖数据,保证该数据不被删除。 1)常用五类约束 not null :非空约束,指定某列不为空。 unique:唯一约束,指定某列和几列组…...
嵌入式学习——网络编程(TCP)——day31
1. TCP和UDP的区别 TCP(Transmission Control Protocol,传输控制协议) UDP(User Datagram Protocol,用户数据报协议) 1.1 连接方式 TCP 是面向连接的协议,它在数据传输前需要通过三次握手建立…...
[STM32]定位器与PWM的LED控制
目录 1. 深入了解STM32定时器原理,掌握脉宽调制pwm生成方法。 (1)STM32定时器原理 原理概述 STM32定时器的常见模式 使用步骤 (2)脉宽调制pwm生成方法。 2. 实验 (1)LED亮灭 代码 测试效果 (2)呼吸灯 代码 测试效果 3.总结 1. 深入了解STM32定时器原…...
可视化数据科学平台在信贷领域应用系列五:零代码可视化建模
信贷风控模型是金融机构风险管理的核心工具,在信贷风险管理工作中扮演着至关重要的角色。随着信贷市场的环境不断变化,信贷业务的风险日趋复杂化和隐蔽化,开发和应用准确高效的信贷风控模型显得尤为重要。信贷风险控制面临着越来越大的挑战和…...
Windows 11广告植入“另辟蹊径”:PC Manager暗示若不使用必应搜索,你的系统可能需要“修复”
Edge浏览器近期增添了许多实用的新功能,如侧边栏、休眠标签页和沉浸式阅读器。话虽如此,浏览器中仍有一部分功能被部分用户视为“冗余软件”和不必要的累赘。 随着Windows 11用户逐渐习惯操作系统关键位置出现越来越多的广告,微软似乎正尝试以…...
一线教师教学工具汇总
亲爱的教师们!我们的教学工具箱里也该更新换代啦!今天,就让我来给大家安利一波超实用的教学神器: 百度文库小程序 —— 在线图书馆 百度文库,一个宝藏级的在线文档分享平台!在这里,你可以找到海…...
【数据结构】栈和队列-->理解和实现(赋源码)
Toc 欢迎光临我的Blog,喜欢就点歌关注吧♥ 前面介绍了顺序表、单链表、双向循环链表,基本上已经结束了链表的讲解,今天谈一下栈、队列。可以简单的说是前面学习的一特殊化实现,但是总体是相似的。 前言 栈是一种特殊的线性表&…...
一篇教会你CSS定位
前言:在网页布局的时候,我们需要将想要的元素放到指定的位置上,这个时候我们就可以使用CSS中的定位操作。 先让我们看一下本篇文章的大致内容: 目录 什么是定位 1.相对定位 2.绝对定位 3. 固定定位 4. 粘性定位 5. 定位层级…...
Hive的常规操作
Hive常规操作 hive常用交互命令 -e执行sql语句 [rootmaster ~]# hive -e "show databases";-f执行sql脚本 [rootmaster ~]# hive -f /usr/local/demo.sql查看hive中输入的所有命令 [rootmaster ~]# cat ~/.hivehistory操作库 创建库 语法: create…...
redis做为缓存,mysql的数据如何与redis进行同步呢?
让我们一步步来实现如何让MySQL数据库的数据和Redis缓存保持同步。想象一下,MySQL是一个大仓库,存放着所有重要的货物(数据),而Redis则像是一个快速取货窗口,让你能更快拿到常用的东西。为了让两者保持一致…...
【Map】集合总结
一、Map 之前学习的Collection集合体系是单列集合,即一次存取一个元素 Map是双列集合,一次存取一对元素,这一对儿称为键值对,key-value,且key是映射到value 所谓键映射到值,是指只能通过键找到值,无法通过值找键 Map中键不能重复!值允许重复 Map中一个键,只能对应一个值 Ma…...
SpringBoot实现发送邮件功能
目录 一、开启邮件服务 二、导入pom依赖 三、配置yml文件 四、发送邮件 4.1、发送文字邮件 4.2、发送html邮件 4.3、发送附件邮件 4.4、发送图片邮件 一、开启邮件服务 这里拿QQ邮箱举例。 翻到下面进行开启,之后获取授权码。 二、导入pom依赖 <dependency><…...
外观数列 ---- 模拟
题目链接 题目: 分析: 题目的意思如下:所以我们需要引用双指针来找到连续的字符有几个, 并添加到答案中, 接着将此字符添加到答案中, 让left right , 继续向后遍历整个字符串, 重复上面的操作将答案重新赋给字符串, 继续重复上述操作, 应该重复n - 1 次, 因为n为1的时候, 直…...
上心师傅的思路分享(二)
Druid monitor 与Springboot常见报错界面渗透小技巧 目录 前言 1.Druid monitor介绍 2.Druid未授权(1rank) 3.druid弱口令 4.Druid进一步利用 4.1 URL监控 4.2 Session监控 利用思路 EditThisCookie(小饼干插件) 5.SpringBoot Actuator未授权访问漏洞 5.1 简介 5…...
116页 | 2024年中国金融行业网络安全研究报告(免费下载)
以上是资料简介和目录,如需下载,请前往星球获取!!!...
基于fabric封装一个简单的图片编辑器(vue 篇)
介绍 前言vue demo版本react 版本 前言 对 fabric.js 进行二次封装,实现图片编辑器的核心功能。核心代码 不依赖 ui响应式框架vue ,react 都适用。 只写了核心编辑相关代码便于大家后续白嫖二次开发 核心代码我就没有打包发布 会 和 业务代码一起放到项目中。 vu…...
Linux中 .PHONY 和 all 在 Makefile 中的作用
1 .PHONY 和 all .PHONY 是 GNU make 工具中的一个特殊指令,用于指示某个目标是一个伪目标。伪目标并不对应于实际的文件,而是用来执行一系列命令的标识符。使用 .PHONY 的好处包括避免与现有文件同名造成的冲突,以及提高 make 的执行效率&am…...
Flutter 中的 FlexibleSpaceBar 小部件:全面指南
Flutter 中的 FlexibleSpaceBar 小部件:全面指南 Flutter 是一个由 Google 开发的跨平台 UI 框架,它提供了丰富的组件来帮助开发者构建高性能、美观的移动、Web 和桌面应用。在 Flutter 的组件库中,FlexibleSpaceBar 是一个与 SliverAppBar …...
每天一个数据分析题(三百五十四)-分析报表
分析报表的主要作用是通过可视化图表的形式将各种分析结果完整、准确地呈现给阅读者,帮助阅读者读懂数据,从而进一步发现数据背后隐藏的业务问题。下列说法正确的是? A. 静态报表的主要载体是电子表格工具 B. BI报表的数据源获取方式是应用…...
8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
电脑插入多块移动硬盘后经常出现卡顿和蓝屏
当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...
剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
NLP学习路线图(二十三):长短期记忆网络(LSTM)
在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
Python 高效图像帧提取与视频编码:实战指南
Python 高效图像帧提取与视频编码:实战指南 在音视频处理领域,图像帧提取与视频编码是基础但极具挑战性的任务。Python 结合强大的第三方库(如 OpenCV、FFmpeg、PyAV),可以高效处理视频流,实现快速帧提取、压缩编码等关键功能。本文将深入介绍如何优化这些流程,提高处理…...
云安全与网络安全:核心区别与协同作用解析
在数字化转型的浪潮中,云安全与网络安全作为信息安全的两大支柱,常被混淆但本质不同。本文将从概念、责任分工、技术手段、威胁类型等维度深入解析两者的差异,并探讨它们的协同作用。 一、核心区别 定义与范围 网络安全:聚焦于保…...
CppCon 2015 学习:Simple, Extensible Pattern Matching in C++14
什么是 Pattern Matching(模式匹配) ❝ 模式匹配就是一种“描述式”的写法,不需要你手动判断、提取数据,而是直接描述你希望的数据结构是什么样子,系统自动判断并提取。❞ 你给的定义拆解: ✴ Instead of …...
中科院1区顶刊|IF14+:多组学MR联合单细胞时空分析,锁定心血管代谢疾病的免疫治疗新靶点
中科院1区顶刊|IF14:多组学MR联合单细胞时空分析,锁定心血管代谢疾病的免疫治疗新靶点 当下,免疫与代谢性疾病的关联研究已成为生命科学领域的前沿热点。随着研究的深入,我们愈发清晰地认识到免疫系统与代谢系统之间存在着极为复…...
Neo4j 完全指南:从入门到精通
第1章:Neo4j简介与图数据库基础 1.1 图数据库概述 传统关系型数据库与图数据库的对比图数据库的核心优势图数据库的应用场景 1.2 Neo4j的发展历史 Neo4j的起源与演进Neo4j的版本迭代Neo4j在图数据库领域的地位 1.3 图数据库的基本概念 节点(Node)与关系(Relat…...
