当前位置: 首页 > news >正文

从零开始学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中基本数据类型名称、关键字、内存占用和取值范围的表格:

数据类型关键字内存占用取值范围
bytebyte1 字节-128 到 127 (-2^7 到 2^7-1)
shortshort2 字节-32,768 到 32,767 (-2^15 到 2^15-1)
intint4 字节-2,147,483,648 到 2,147,483,647 (-2^31到 2^31-1)
longlong8 字节-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 (-2^63 到 2^63-1)
floatfloat4 字节大约 ±3.4E-45 到 ±3.4E38,有效位数为6-7位
doubledouble8 字节大约 ±4.9E-324 到 ±1.8E308,有效位数为15位
charchar2 字节'\u0000'(0)到 '\uffff'(65,535)
booleanboolean不确定,通常实现为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 {//主程序执行入口&#xff0c;main方法public static void main(String[] args){System.out.println("Hello world!");} } 运行结果 Hello world! java编写主程序常见错误&#xff1a; 1、System ---首字母没有…...

MySQL(四)查询

1、MySQL限性约束 —非空、唯一(自增)、主外键、检查(MySQL存在但是不能用)。 约束主要完成对数据的校验,保证数据库数据的完整性;如果有相互依赖数据,保证该数据不被删除。 1)常用五类约束 not null :非空约束,指定某列不为空。 unique:唯一约束,指定某列和几列组…...

嵌入式学习——网络编程(TCP)——day31

1. TCP和UDP的区别 TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议&#xff09; UDP&#xff08;User Datagram Protocol&#xff0c;用户数据报协议&#xff09; 1.1 连接方式 TCP 是面向连接的协议&#xff0c;它在数据传输前需要通过三次握手建立…...

[STM32]定位器与PWM的LED控制

目录 1. 深入了解STM32定时器原理&#xff0c;掌握脉宽调制pwm生成方法。 (1)STM32定时器原理 原理概述 STM32定时器的常见模式 使用步骤 (2)脉宽调制pwm生成方法。 2. 实验 (1)LED亮灭 代码 测试效果 (2)呼吸灯 代码 测试效果 3.总结 1. 深入了解STM32定时器原…...

可视化数据科学平台在信贷领域应用系列五:零代码可视化建模

信贷风控模型是金融机构风险管理的核心工具&#xff0c;在信贷风险管理工作中扮演着至关重要的角色。随着信贷市场的环境不断变化&#xff0c;信贷业务的风险日趋复杂化和隐蔽化&#xff0c;开发和应用准确高效的信贷风控模型显得尤为重要。信贷风险控制面临着越来越大的挑战和…...

Windows 11广告植入“另辟蹊径”:PC Manager暗示若不使用必应搜索,你的系统可能需要“修复”

Edge浏览器近期增添了许多实用的新功能&#xff0c;如侧边栏、休眠标签页和沉浸式阅读器。话虽如此&#xff0c;浏览器中仍有一部分功能被部分用户视为“冗余软件”和不必要的累赘。 随着Windows 11用户逐渐习惯操作系统关键位置出现越来越多的广告&#xff0c;微软似乎正尝试以…...

一线教师教学工具汇总

亲爱的教师们&#xff01;我们的教学工具箱里也该更新换代啦&#xff01;今天&#xff0c;就让我来给大家安利一波超实用的教学神器&#xff1a; 百度文库小程序 —— 在线图书馆 百度文库&#xff0c;一个宝藏级的在线文档分享平台&#xff01;在这里&#xff0c;你可以找到海…...

【数据结构】栈和队列-->理解和实现(赋源码)

Toc 欢迎光临我的Blog&#xff0c;喜欢就点歌关注吧♥ 前面介绍了顺序表、单链表、双向循环链表&#xff0c;基本上已经结束了链表的讲解&#xff0c;今天谈一下栈、队列。可以简单的说是前面学习的一特殊化实现&#xff0c;但是总体是相似的。 前言 栈是一种特殊的线性表&…...

一篇教会你CSS定位

前言&#xff1a;在网页布局的时候&#xff0c;我们需要将想要的元素放到指定的位置上&#xff0c;这个时候我们就可以使用CSS中的定位操作。 先让我们看一下本篇文章的大致内容&#xff1a; 目录 什么是定位 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操作库 创建库 语法&#xff1a; create…...

redis做为缓存,mysql的数据如何与redis进行同步呢?

让我们一步步来实现如何让MySQL数据库的数据和Redis缓存保持同步。想象一下&#xff0c;MySQL是一个大仓库&#xff0c;存放着所有重要的货物&#xff08;数据&#xff09;&#xff0c;而Redis则像是一个快速取货窗口&#xff0c;让你能更快拿到常用的东西。为了让两者保持一致…...

【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年中国金融行业网络安全研究报告(免费下载)

以上是资料简介和目录&#xff0c;如需下载&#xff0c;请前往星球获取&#xff01;&#xff01;&#xff01;...

基于fabric封装一个简单的图片编辑器(vue 篇)

介绍 前言vue demo版本react 版本 前言 对 fabric.js 进行二次封装&#xff0c;实现图片编辑器的核心功能。核心代码 不依赖 ui响应式框架vue ,react 都适用。 只写了核心编辑相关代码便于大家后续白嫖二次开发 核心代码我就没有打包发布 会 和 业务代码一起放到项目中。 vu…...

Linux中 .PHONY 和 all 在 Makefile 中的作用

1 .PHONY 和 all .PHONY 是 GNU make 工具中的一个特殊指令&#xff0c;用于指示某个目标是一个伪目标。伪目标并不对应于实际的文件&#xff0c;而是用来执行一系列命令的标识符。使用 .PHONY 的好处包括避免与现有文件同名造成的冲突&#xff0c;以及提高 make 的执行效率&am…...

Flutter 中的 FlexibleSpaceBar 小部件:全面指南

Flutter 中的 FlexibleSpaceBar 小部件&#xff1a;全面指南 Flutter 是一个由 Google 开发的跨平台 UI 框架&#xff0c;它提供了丰富的组件来帮助开发者构建高性能、美观的移动、Web 和桌面应用。在 Flutter 的组件库中&#xff0c;FlexibleSpaceBar 是一个与 SliverAppBar …...

每天一个数据分析题(三百五十四)-分析报表

分析报表的主要作用是通过可视化图表的形式将各种分析结果完整、准确地呈现给阅读者&#xff0c;帮助阅读者读懂数据&#xff0c;从而进一步发现数据背后隐藏的业务问题。下列说法正确的是&#xff1f; A. 静态报表的主要载体是电子表格工具 B. BI报表的数据源获取方式是应用…...

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点&#xff0c;但无自动故障转移能力&#xff0c;Master宕机后需人工切换&#xff0c;期间消息可能无法读取。Slave仅存储数据&#xff0c;无法主动升级为Master响应请求&#xff…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

算法:模拟

1.替换所有的问号 1576. 替换所有的问号 - 力扣&#xff08;LeetCode&#xff09; ​遍历字符串​&#xff1a;通过外层循环逐一检查每个字符。​遇到 ? 时处理​&#xff1a; 内层循环遍历小写字母&#xff08;a 到 z&#xff09;。对每个字母检查是否满足&#xff1a; ​与…...

Linux 内存管理实战精讲:核心原理与面试常考点全解析

Linux 内存管理实战精讲&#xff1a;核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用&#xff0c;还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...

人机融合智能 | “人智交互”跨学科新领域

本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)

前言&#xff1a; 在Java编程中&#xff0c;类的生命周期是指类从被加载到内存中开始&#xff0c;到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期&#xff0c;让读者对此有深刻印象。 目录 ​…...

【C++进阶篇】智能指针

C内存管理终极指南&#xff1a;智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现企业微信功能

1. 开发环境准备 ​​安装DevEco Studio 3.1​​&#xff1a; 从华为开发者官网下载最新版DevEco Studio安装HarmonyOS 5.0 SDK ​​项目配置​​&#xff1a; // module.json5 {"module": {"requestPermissions": [{"name": "ohos.permis…...