Eclipse基本使用、数据类型、运算符

news2025/1/12 18:42:28

Eclipse基本使用

创建JAVA项目

1.打开新建项目窗口(File --> New --> Project)

在这里插入图片描述


2.在New Project窗口中选择Java Project创建项目

在这里插入图片描述


3.在New Java Project对话框

Project name:项目名称
Project Layout项目布局:Create separate~~~(为源文件和类文件穿件单独的文件夹)

在这里插入图片描述

在这里插入图片描述

创建类文件

1.打开新建类窗口(File --> New --> Class)
在这里插入图片描述
在这里插入图片描述

名称描述
Source folder源文件
Package包名
Name类名

(1)在Source folder(源文件夹)文本框中输入项目源程序文件夹位置,通常会自动填写该文本框,如不特殊,不需修改
(2)在Package(包)文本框中输入类文件的包名,这里暂时默认为空,不输入任何信息,这就会使用Java工程的默认包
(3)在Name(类名称)文本框中需要输入新建类的名称
(4)选中pubilc static void main(String[] args)复选框,向导在创建类文件时,会自动为该类添加main()方法,使该类成为可以运行的主类


导入项目文件

File --> Improt --> 选择General --> Existing Peojects into Workspace --> Next --> Browse --> Finish


Java编辑器

位于Eclipse的中心区域,可重叠多个编辑器,类型可以不同


打开编辑器

最常用的是双击源文件、右击源文件 --> Open With --> Java Editor
Java编辑器以不同的样式和颜色突出显示语法
程序代码注释、Javadoc注释、Java关键字


编写Java代码

①可以使用Ctrl+Alt+/快捷键自动补齐Java关键字
②Ctrl + shift + +,-改变字体大小


运行Java程序

在文件处右击 --> Run As --> Java Application


程序调试

1.设置断点(调试器每次遇到程序断点时都会将当前线程挂起)

编辑器中显示代码行号的位置双击添加或删除当前行的断点
在当前行号右击选择“Toggle Breakpoint”实现添加或删除


2.以调试(DeBug)方法运行Java程序

单击鼠标右键,在弹出的快捷菜单中选择Debug As–>Java Application,调试器将会在断点处挂起当前线程,使程序暂停


3.程序调试(在Debug视图中)

程序执行遇到断点被暂停后,可以通过Debug(调试)视图工具栏上的按钮执行相应的调试操作,如运行,停止等


单步跳入(F5)

跳过调用方法或对象的内部单步执行程序并暂挂线程


## 单步跳过(F6) 运行单独的一行程序代码,但是不进入方法内部,然后跳到下一个可执行点并暂挂线程

代码编辑

代码注释

(1)单行注释://
(2)多行注释:/* /
(3)文档注释:/
* */


标识符与关键字

1.标识符(简单理解为一个名字)

由任意顺序的数字、字母、下划线、美元符号组成,数字不能开头、不能是Java关键字


2.关键字

(在编辑器中编程红色粗体的单词)


变量命名规范

告诉编译器数据类型,并分配空间


变量命名

(1)必须是一个有效的标识符
(2)不可以使用Java关键字
(3)不能重复
(4)尽量选择有意义的单词


常量(final)

final 数据类型 常量名称 = 值; final int COUNT = 12;


基本数据类型

1.整数类型(4)

数据类型字节位数范围
Byte1字节8位-128~127
Short2字节16位-32768~32767
Int4字节32位-2147483648~2147483647
Long8字节64位
8 bit(位)	=	1 byte(字节)
1024 byte	=	1 kb
1024 kb	=	1 mb
1024 mb	=	1 gb
1024 gb	=	1 t

注意:在UTF-8中汉字占3个字节

Long属于比int高级的数据类型,所以在赋值的时候要在整数后面加上L或l
Long love = 123456L;


2.浮点类型(2)

若想使用float型小数,则需要在小数后面添加F或f
Double类型可以在后面添加D或d,明确数据类型(可以不加)

数据类型字节位数范围
Float4字节32位1.4E~3.4028235E38
Double8字节64位4.9E-324~1.7976931348623157E308

3.字符类型(1)

不同编码产生的字节大小不同

数据类型字节位数范围
Char2字节16位65536个字符(单引号)

转义字符
一种特殊的字符变量,以反斜杠“\”开头,后跟一个或多个字符

转义字符赋值给字符变量时,一样要使用单引号

字符描述
\ddd1~3位八进制数据所表示的字符,如\456
\uxxxx4位十六进制所表示的字符,如\u0052
\’单引号字符
\”双引号字符
\反斜杠字符
\t垂直制表符,将光标移到下一个制表符的位置
\r回车
\n换行
\b退格
\f换页

4.布尔类型(1)

Boolean 1字节 值:ture/flase 二进制:00000001

数据类型转换

不同的类型占用的内存空间不同


隐式转换(自动转换)

byte < short < int < long < float < double
在这里插入图片描述


显式转换(强制转换)

语法:(类型名)要转换的值
例:int a = (int) 45.25;

显示转换导致精度损失

float f = (float) 3.1415923;     // 数据失准
int i = (int) f;                // 小数点丢失
byte b = (byte) 129;          // 数值越界溢出

数据类型的默认值

数据类型默认值说明
byte、short、int、long0整型零
float、double0.0浮点零
char‘’空格字符
booleanfalse逻辑假
引用类型Stringnull空值

运算符

赋值运算符

(=)


算数运算符

+(加) -(减) *(乘) /(除) %(取余) 自增(++) 自减(–)
自增、自减:前置会先将自身先增或减,后置会先参与表达式运算


关系运算符

==(等于) <(小于) >(大于) <=(小于等于) >=(大于等于) !=(不等于)


逻辑运算符

&&(与) ||(或) !(非)


位运算符

操作类型是整型,可以是有符号的也可以是无符号的,位运算符的两大类型:位逻辑运算符和位移运算符

运算符描述
&(与)a&b
|(或)a|b
~(取反)~a
^(异或)a^b
<<(左位移)a<<2
>>(右位移)b>>4
>>>(无符号位移)x>>>2

位逻辑运算符

&、|、^、~ :前三个是双目运算符、后一个是单目运算符
在这里插入图片描述


(1)位与运算符:&

参与运算的数字,低位对齐,高位不足的补零,如果对应的二进制位同时为 1,那么计算结果才为 1,否则为 0。因此,任何数与 0 进行按位与运算,其结果都为 0,最左边的符号位也是要参与运算的


(2)位或运算符:|

参与运算的数字,低位对齐,高位不足的补零。如果对应的二进制位只要有一个为 1,那么结果就为 1;如果对应的二进制位都为 0,结果才为 0


(3)位异或运算符:^

参与运算的数字,低位对齐,高位不足的补零,如果对应的二进制位相同(同时为 0 或同时为 1)时,结果为 0;如果对应的二进制位不相同,结果则为 1


(4)位取反运算符:~

只对一个操作数进行运算,将操作数二进制中的1改为0,0改为1


运算结果
在这里插入图片描述
在这里插入图片描述
总结:以(0、1和false、true)
&(与):有0则为0,有false则为false
|(或):有1则为1,有true则为true
~(取反):0取1,false取true
^(异或):需要运算


位移运算符

(1)左移运算符:<<

按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零

根据左移运算符可以推导出:
左移运算有乘以2的N次方的效果。一个数向左移动1位,就相当于乘以2的1次方,移动两位就相当于乘以2的2次方,也就是乘以4


(2)带符号右移运算符:>>

符号位不变,按二进制形式把所有的数字向右移动对应的位数,低位移出(舍弃),高位的空位补零


(3)无符号右移运算符:>>>

无符号右移在二进制串移动之后,空位由0来补充,与符号位是0还是1毫无关系;注意:这里的无符号是忽略符号位,也参与移位


在这里插入图片描述

在移位运算时,byte、short和char类型移位后的结果会变成int类型,对于byte、short、char和int进行移位时,规定实际移动的次数是移动次数和32的余数,也就是移位33次和移位1次得到的结果相同。移动long型的数值时,规定实际移动的次数是移动次数和64的余数,也就是移动66次和移动2次得到的结果相同
<<运算规则:按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零
语法格式:需要移位的数字 << 移位的次数

num << 2:左移运算符。相当于num除以2*2
num >> 1:右移运算符。相当于num乘以2
>>>:无符号右移,忽略符号位,空位都以0补齐

在Java语言中,为了保证移动位数的有效性,以使右移位数不超过32位,采用了取余的操作,即a >>n 等价于 a >> (n%32)

左移<<:该数对应的二进制码整体左移,左边超出的部分舍弃,右边补零(低位补0)

253的二进制码1111 1101,在经过运算253<<2后得到1111 0100

“有符号”右移>>:该数对应的二进制码整体右移,左边的用原有标志位补充,右边超出的部分舍弃。如果值为正,则在高位补0,如果值为负,则在高位补1

无符号右移>>>:不管正负标志位为0还是1,将该数的二进制码整体右移,左边部分总是以0填充,右边部分舍弃。采用0扩展机制,也就是说,无论值的正负,都在高位补0


复合赋值运算符

在这里插入图片描述


三元运算符

**语法:**返回值 = 判断公式 ? 结果1 : 结果2
判断公式:一个返回布尔值的公式

int a = 1;
int b = a<3?2:3      结果:b=2

结果1:如果公式返回的是true,运算符结算返回结果1
结果2:如果公式返回的是false,运算符结算返回的结果2


圆括号

提升计算公式的优先级(和数学中的用法一致)、提升公式的可阅读性

int a =2,b=3;
a*b+5   先计算乘法;后计算加法          结果:11
a*(a+5)  先计算括号内,后计算括号外      结果:16

运算符优先级

优先级描述运算符
1括号()
2自增,自减,逻辑非,正负号,取反++,–,!,±,~
3乘,除,取余*,/,%
4加,减+,-
5左位移,右位移,无符号位移<<,>>,>>>
6大于,小于等于,大于,大于等于,判断继承关系<,<=,>,>=,instanceof
7等于,不等于==,!=
8&
9异或^
10|
11并且&&
12或者||
13赋值=,+=,-=,*=,/=,%=,<<=,>>=,&=,^=,|=,>>>=




上一篇:一个简单的java程序                        下一篇:控制语句(if、switch、for、while、foreach)




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

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

相关文章

初识Node

Node.js是什么 Node.js是一个基于Chrome V8引擎的[JavaScript运行环境]。 Node.js使用了一个事件驱动、非阻塞式I/O 的模型。 Node.js 可以做什么 Nodejs作为一个JavaScript的运行环境&#xff0c;仅仅提供了基础的功能和API。然而&#xff0c;基于Node.js 提供的这些基础能…

【SCI征稿】SPRINGER旗下CCF1区计算机工程类SCI, 网格计算、储层计算、机器学习相关领域均可~

一、期刊简介&#xff1a; 1区计算机工程类SCI&EI (CCF) 【期刊概况】SPRINGER出版社&#xff0c;IF:4.0-5.0, JCR1/2区, 中科院2区&#xff1b; 【终审周期】走期刊部系统&#xff0c;3个月左右录用&#xff1b; 【检索情况】SCI&EI双检&#xff1b; 【数据库收录…

Revit墙问题:系统自带幕墙偏移解决和墙翻模操作

一、关于Revit绘制默认幕墙会自动产生偏移问题的解决办法! 很多人在安装完Revit后绘制系统自带的幕墙会产生偏移! 首先我们要了解偏移产生的根源&#xff1a; 1、绘制的时候在偏移量里设置了偏移值! 2、幕墙嵌板族设置了偏移&#xff1a;这种问题一般分种情况&#xff1a; A&am…

Linux编译器 gcc与g++

Linux编译器 gcc/g工具 目录 Linux编译器 gcc/g工具1、程序的诞生2、gcc工具2.1 预处理2.2 编译2.3 汇编2.4 链接2.5 运行2.6 总结 3、静态链接与动态链接3.1 静态链接3.2 动态链接3.3 Linux下库的命名 1、程序的诞生 程序的编译过程&#xff1a; 1、预处理&#xff08;头文件包…

算法导论 | 算法在计算中的作用

第一章 | 算法在计算中的作用 笔记 什么是算法&#xff1f; 算法就是任何良定义的计算过程&#xff0c;该过程取某个值或值的集合作为输入并产生某个值或值的集合作为输出不正确的算法只要其错误率可控有时可能是有用的算法的说明的唯一要求是这个说明必须精确描述所要遵循的…

datax 从oracle迁移到es中

任务启动时刻 : 2023-04-20 19:34:56 任务结束时刻 : 2023-04-20 19:56:22 任务总计耗时 : 1285s 任务平均流量 : 5.07MB/s 记录写入速度 : …

离散型制造企业如何选择MES系统

随着MES系统越来越被企业所重视&#xff0c;并并被运用到很多不同行业的制造业中。 MES对于制造企业来说&#xff0c;其所需要的要求是各不相同的&#xff0c;比如离散型制造企业&#xff0c;该如何去选择MES系统呢&#xff1f; 什么是离散型制造企业&#xff1f; 离散型制造企…

nn.init.xavier_uniform_()的作用:根据均匀分布生成Tensor

官网解释如下&#xff1a; Signature: nn.init.xavier_uniform_(tensor: torch.Tensor, gain: float 1.0) -> torch.Tensor Docstring: Fills the input Tensor with values according to the method described in Understanding the difficulty of training deep feedforw…

PHP语言开发的医院不良事件上报系统源码,前后端分离,仓储模式

医院安全&#xff08;不良&#xff09;事件上报系统源码 系统定义&#xff1a; 规范医院安全&#xff08;不良&#xff09;事件的主动报告&#xff0c;增强风险防范意识&#xff0c;及时发现医院不良事件和安全隐患&#xff0c;将获取的医院安全信息进行分析反馈&#xff0c;…

STM32开发(十五)STM32F103 片内资源 —— 通用定时器 PWN 无源蜂鸣器 详解

文章目录 一、基础知识点二、开发环境三、STM32CubeMX相关配置四、Vscode代码讲解五、结果演示 一、基础知识点 本实验通过STM32F103 的通用定时器 PWN功能&#xff0c;实现对无源蜂鸣器控制。 本实验内容知识点&#xff1a; 1、通用定时器 PWN 详解 2、有源蜂鸣器和无源蜂鸣器…

当我开始学习人工智能:知识表示方法

加油加油&#xff0c;五一前复习玩&#xff0c;五一就可以出去玩啦 一、状态空间法&#xff08;State Space Representation&#xff09; 问题求解技术主要是两个方面 问题的表示求解的方法 状态空间法 状态算符状态空间方法 1.1 问题状态描述 定义 状态&#xff1a;描述某类不…

电感耦合等离子体原子发射光谱法(ICP-AES)

一、定义 电感耦合等离子体原子发射光谱法(ICP-AES)&#xff0c;是以电感耦合等离子矩为激发光源的光谱分析方法&#xff0c;具有准确度高和精密度高、检出限低、测定快速、线性范围宽、可同时测定多种元素等优点&#xff0c;国外已广泛用于环境样品及岩石、矿物、金属等样品中…

SimpleDateFormat模式字符串格式

SimpleDateFormat模式字符串 new SimpleDateFormat(String parm); parm为一个字符串,表示格式. 时间模式 字母 时间元素 表示 示例 y 年 Year 1996; 96 M 年中的月份 Month July; Jul; 07 D 年中的天数 Number 200 d 月份中的天数 Number 31;30;28;29 H 一天中的小时(24小时…

【MySQL】表的基本操作

1、数据类型 1.1 数值类型 数据类型大小说明bit[(M)]M指定位数&#xff0c;默认为1二进制&#xff0c;M范围从1到64&#xff0c;存储数值范围从0到2^M-1tinyint1字节smallint2字节int4字节bigint8字节float(M,D)4字节单精度&#xff0c;M指定长度&#xff0c;D 指定小数位数&am…

Peach Fuzzer漏洞挖掘实战

概述 本文主要介绍模糊测试技术&#xff0c;开源模糊测试框架Peach Fuzzer&#xff0c;最后使用Peach Fuzzer对Modbus Slave软件进行漏洞挖掘&#xff0c;并成功挖掘到0DAY漏洞。&#xff08;文中涉及的漏洞已提交到国家漏洞库&#xff0c;现已修复&#xff09; 模糊测试技术 模…

电影《绿皮书》鉴赏

**《绿皮书》**由彼得法雷尔执导&#xff0c;维戈莫滕森和马萨拉阿里主演&#xff0c;改编自关于保镖托尼的真实故事。20世纪60年代&#xff0c;美国的种族关系紧张&#xff0c;黑人音乐家很少有机会演出。作为当时为数不多的黑人钢琴家之一&#xff0c;唐参加了许多音乐会巡演…

[chapter27][PyTorch][visdom]

前言&#xff1a; Visdom是Facebook专为PyTorch开发的实时可视化工具包&#xff0c;相当于TensorFlow中的Tensorboard&#xff0c;灵活高效且界面美观。 目录&#xff1a; 1&#xff1a; 环境安装 2&#xff1a; 参数简介 3&#xff1a; 监听单一数据 4&#xff1a; 监听多个数…

晶振电路并联一个电阻作用

晶振电路并联一个电阻的作用 前言 在设计电路时&#xff0c;通常看到一些主控的外部高速晶振并联了一个1MΩ的电阻&#xff0c;但是发现有的电路不用也可以正常工作&#xff0c;对这个就有点好奇啦&#xff1f; 电路图如下&#xff1a; 实际上晶振电路在工作时没有并联一个1…

如何使用Sublime来规范化代码的格式,让代码更加规范整齐,批量修改代码

如何使用Sublime来规范化代码的格式&#xff0c;让代码更加规范整齐&#xff0c;批量修改代码 设备/引擎&#xff1a;Mac&#xff08;11.7&#xff09;/cocos 开发工具&#xff1a;Sublime Text 开发语言&#xff1a;c/java 代码开发中经常需要将代码进行规范化处理&#x…

PHP +python+nodejs+springboot+vue 校园电子资料资源管理系统

能实现不出家门就可以通过网络进行系统管理&#xff0c;交易等&#xff0c;而且过程简单、快捷。同样的&#xff0c;在人们的工作生活中&#xff0c;也就需要互联网技术来方便人们的日常工作生活&#xff0c;实现工作办公的自动化处理&#xff0c;实现信息化&#xff0c;无纸化…