标识符

凡是变量中需要自己命名的地方都是标识符,例如:包名、类名、变量名等等

标识符的命名规则

1.Java的标识符只能用26个英文字母大小写,0-9的数字,下划线(_),和美元的符号($).

2.标识符中不能含空格

3.数字不呢个开头

4.不能用关键字和保留字和特殊值,例如基本数据类型byte int 等与false,true,null,void等

5.Java严格区分大小写

6.Java标识符的长度没有限制,但不宜太长

标识符的命名规范

1.总原则,见名知意,有意义

2.类名,接口名:所有单词首字母大写 例如:XxxYyyZzz

3.变量名:第一个单词首字母小写其余首字母大写 例如:xxxYyyZzz

4.包名:所有字母都小写,不同单词用  .  分开 例如:java.lang

5.常量名:所有单词都大写,单词之间使用下划线 _ 例如:MAX_VALUE

变量

变量是代表内存中的一块存储区域

变量三要素

1.变量名:给这块存储区域命名,就不用内存地址访问

2.变量值:这块内存中存的数据

3.数据类型:决定这块内存的大小

使用要求

1.先声明后使用:声明格式:数据类型  变量名

2.使用之前必须赋值:赋值格式: 变量名 = 值 (这个值可以是常量,表达式)

3.变量的作用域:从声明处开始,到其所属的 } 结束,并且同一个作用域不能重名

数据类型

基本数据类型

整型

byte:占一个字节,储存范围(-128 - 127)

short:占两个字节

int:占四个字节 默认类型

long:占八个字节,需要在数字后面加L或者小写的 l

浮点型

float:占四个字节,需要在数字后面加F或者小写的 f

double:占八个字节,默认类型

字符型

char:占两个字节,存储的是Unicode编码,

布尔型

boolean:只能赋值true 或 false

基本数据类型转换

1.自动类型转换:double-->float-->long-->int-->byte,short,char

2.强制类型转换:需要强制类型转换符(类型),但是有可能丧失精度

引用数据类型

类:例如 String Syetem

接口

数组

运算符

算数运算符

正号:+

负号:-

加:+

减:-

乘:*

除:/(当整数与整数相除,结果只保留整数部分,当整数与整数相除,被除数/除数 ,除数不能为0,报异常,当浮点数相除,如果除数为0,结果是无穷大,非数字)

取余取模:%(会忽略模数的负号)

自增:++(i++:这个表达式的结果是与i自增前的结果一样,++i:这个表达式的结果是与i自增后的结果一样)

自减:--(同自增)

赋值运算符

基本赋值运算符=:把右边的结果赋值给左边的变量

扩展赋值运算符:+=,-=...... 隐含强制类型转换 例如short s = 6;s+=1; 等价于 s = (short)(s + 1)

比较运算符

大于:>

小于;<

大于等于:>=

小于等于:<=

不等于:!=

instanceof:比较对象是否时类产生的

结果一定是boolean值,所以比较表达式常用于条件表达式

逻辑表达式

逻辑与:& 只有左右两边的值都为true,结果才为true

逻辑或:| 只要左右两边的值有一个为true,结果就为true

逻辑异或:^ 只有左右两边一个为true,另一个为false,结果才为true

逻辑非:! !true 即为false  !fales即为true

短路与:&& 结果与&一样 只有左右两边的值都为true,结果才为true 不同的是 如果左边的表达式为false,右边的表达式就不计算了,出现短路现象

短路或:||  结果与|一样 只要左右两边的值有一个为true,结果就为true  不同的是  如果左边的表达式为true,右边的表达式就不计算了,出现短路现象

条件运算符(也叫三目运算符)

格式:条件表达式 ?  表达式1 : 表达式2

整个表达式的结果看条件表达式,如果条件表达式为true,那么就取表达式1的结果,否则取表达式2的结果

位运算符就不说了,基本用不上,实在是想学的去找一下资料

Java Day 2的更多相关文章

  1. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  2. 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题

    背景起因: 记起以前的另一次也是关于内存的调优分享下   有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...

  3. Elasticsearch之java的基本操作一

    摘要   接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...

  4. 论:开发者信仰之“天下IT是一家“(Java .NET篇)

    比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...

  5. 故障重现, JAVA进程内存不够时突然挂掉模拟

    背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...

  6. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  7. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  8. Java多线程基础学习(二)

    9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...

  9. Java多线程基础学习(一)

    1. 创建线程    1.1 通过构造函数:public Thread(Runnable target, String name){}  或:public Thread(Runnable target ...

  10. c#与java的区别

    经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...

随机推荐

  1. Go语言核心36讲51

    你好,我是郝林,今天我们继续分享程序性能分析基础的内容. 在上一篇文章中,我们围绕着"怎样让程序对CPU概要信息进行采样"这一问题进行了探讨,今天,我们再来一起看看它的拓展问题. ...

  2. Iris_data_analysis

    SVM调用实例--鸢尾花 任务描述: 构建一个模型,根据鸢尾花的花萼和花瓣大小将其分为三种不同的品种. 数据集: 每一行数据由4个特征值及1个目标值组成,4个特征值分别为:萼片长度.萼片宽度.花瓣长度 ...

  3. JavaScript笔记之面向对象

    面向对象 了解构造函数原型对象的语法特征,掌握 JavaScript 中面向对象编程的实现方式,基于面向对象编程思想实现 DOM 操作的封装. 了解面向对象编程的一般特征 掌握基于构造函数原型对象的逻 ...

  4. MAUI Blazor (Windows) App 动态设置窗口标题

    接着上一篇"如何为面向 Windows 的 MAUI Blazor 应用程序设置窗口标题?" Tips: 总所周知,MAUI 除了 Windows App 其他平台窗口是没有 Ti ...

  5. 【每日一题】【map存值】2022年2月25日-NC112 进制转换

    描述给定一个十进制数 M ,以及需要转换的进制数 N .将十进制数 M 转化为 N 进制数. 当 N 大于 10 以后, 应在结果中使用大写字母表示大于 10 的一位,如 'A' 表示此位为 10 , ...

  6. 【云原生 • Docker】mysql、tomcat、nginx、redis 环境部署

    注意在应用部署之前,docker 服务必须是开启状态 systemctl start docker. 目录 一.MySQL 部署 二.Tomcat 部署 三.Nginx 部署 四.Redis 部署 一 ...

  7. PostgreSQL和MySQL的优劣对比

    在开发项目的过程中,难免要面对选择数据库的情况.总结此文章是因为在之前公司里使用的都是MYSQL 数据库,而在现在公司里,新项目中使用的是 PostgreSQL 数据库,在使用过程中,经常需要查找两种 ...

  8. plsql developer切换用户

    方法1: 1.双击plsql developer桌面软件图标启动软件 2.在连接窗口中填写连接信息,连接数据库 3.在新建窗口下拉选项中,选择命令窗口功能 4.在工作区内会出现当前用户连接数据库的窗口 ...

  9. Jmeter ForEach 循环控制器

    ForEach Controller 即循环控制器,顾名思义是定义一种循环规则,如下图: 1.名称:控制器名称,可根据用户需要任意填写,也可不填 2.注释:用户可根据需要任意填写,也可不填 3.输入变 ...

  10. C语言两结构体之间的成员互换

    今天在写一个通讯录实现程序的时候,遇到个让我突然卡壳的问题,不知道怎么进行两个结构体之间的成员互换......结构体成员有"姓名","性别","年龄& ...