Java中关于注释、标识符、变量、常量、数据类型、类型转换、转移字符以及数值型的表现形式的详解
Java文件的注意事项
在同一个Java文件中,可以定义多个类,但是被public修饰的类只能够有一个,并且此类名要与文件名一致。
在同一个类中,可以定义多个方法,但是名字叫做main的方法只能有一个,因为它是程序的入口。逐行执行主方法的中的代码。
备注:Java中若有多个类,则编译之后会生成多个.class文件,由此也可以看出Java是以类为单位的。
Java中的注释问题
注释就是解释说明的文字
注释有两个作用
1.对于你的代码进行解释说明
2.便于后期维护
注释的分类
颜色 | 作用域 | 嵌套 | 位置 | |
---|---|---|---|---|
//单行注释 | 绿色 | 当前行有效 | 无法嵌套 | 行的上面或者后见面 |
/多行注释/ | 绿色 | 多行有效 | 可以嵌套单行,无法嵌套多行以及文档注释 | 类和方法的上面 |
/*文档注释/ | 蓝色 | 多行有效 | 可以嵌套当行,无法嵌套多行以及文档注释 | 类和方法的上面 |
文档注释可以出现在类的api文档中
标识符
在java中一切起名字的地方,这个名字就是名字就是标识符。
标识符的命名规则
由数字、字母、下划线及$符任意组合而成,但是不能以数字开头。
java是严格区分大小写的
关键字和保留字
关键字
在java中,有一些词有自己的作用和用途,我们称之为关键字
保留字 goto const
在java中,有一些词将来可能有自己的作用和用途,我们称之为保留字。
所有的关键字都是小写,工具有提示色
标识符的命名规范
见名知意
驼峰命名原则
包名:全部小写,并且以.分隔,例如shang.xue.tang
类名和接口名:所有单词首字母大写,例如ShangXueTang
方法名和变量名:第一个单词全部小写,从第二个单词开始首字母大写,例如shangXueTang
常量:全部大写并且以_分隔,流入SHANG_XUE_TANG
变量
变量:在程序运行过程中,其值可以发生改变。
常量:在程序运行过程中,其值不允许发生改变。
在内存中,开辟指定空间存放不同类型的数据
语法
声明的同时赋值
数据类型 变量名=值;
常用的数据类型:整数int 小数double 字符串String char字符
先声明后赋值
数据类型 变量名; -先声明
变量名=值; -后赋值
在同一行中可以声明多个变量
注意:=是java中唯一一个从右往左执行的符号
变量关注的点
数据类型
变量名(标识符)
变量的值要与数据类型保持一致
变量的作用域{}
使用变量的注意事项
使用前先声明并赋值
变量在同一时刻只能存储一个值
变量的作用域从变量的声明开始,直到包裹它的第一个的}结束。
变量的分类
局部变量:方法中,语句块定义的变量
局部变量使用前必须声明并赋值
成员变量|实例变量:类中方法外定义的变量
成员变量可以只声明不赋值,有默认值
整数:0 小数:0.0 字符型:' ' 布尔型:false String:null
常量
常量:在程序运行过程中,其值不会发生改变的量
分类
字面值常量
类型 | 数值 |
---|---|
整数常量 | 1 5 -58 |
小数常量 | 1.2 6.52 |
字符常量 | 'a' '1' '好' |
布尔常量 | false true |
字符串常量 | "123456哈哈" |
空常量 | null |
自定义常量
自定义常量:使用一个关键字final把变量变为常量
数据类型
Java是一种强类型的语言
数据类型可分为基本数据类型和引用数据类型
计算机的基本存储单位:字节,1byte=8bit
基本数据类型(四类八种)
四类八种:整型、浮点型、字符型和布尔型
整型
表现形式 | 表示名称 | 范围 | 大小 |
---|---|---|---|
byte | 字节型 | [-128,127] | 1个字节 8bit |
short | 短整型 | [-32768,32767] | 2个字节 16bit |
int | 整型 | 正负21亿万 | 4个字节 32bit |
long | 长整型 | 很大 | 8个字节 64bit |
注意事项:
整型的字面常量值默认是int类型的数据
如果想给比int的范围大的long赋值的时候,需要在后面添加上L或l,建议L
如果要给比int的范围小的short byte char赋值的时候,在其范围内就能够成功赋值
浮点型
表现形式 | 表示名称 | 精度 | 大小 |
---|---|---|---|
double | 双精度 | 精确到15位 | 8个字节 64bit |
float | 单精度 | 精确到7位 | 4个字节 32bit |
注意事项:
不推荐double或者float进行精确的运算
double是小数类型的默认类型
如果要给float类型赋值的时候,需要在后面加F或者f。
字符型
表现形式 | 表示名称 | 范围 | 大小 |
---|---|---|---|
char | 字符型 | [0,65535] | 2个字节 16bit |
表现形式:
''中包裹单个字符,一定需要一个字符,并且也只能有一个字符
使用0-65535之间的数字进行表示不同的字符,可以去ASCII查看
字符型参与运算,先转为对应的数字再去参与运算
布尔型
表现形式 | 表示名称 | 范围 | 大小 |
---|---|---|---|
boolean | 布尔型 | 0 1 | 1bit |
在逻辑运算中常常使用
引用数据类型
类 接口 数组
类型转换
注意:boolean不参与类型转换
自动类型转换
从小范围类型->大范围类型,会发生自动类型提升
强类型转换
从大范围类型->小范围类型,需要强制类型转换,有可能损失精度。
小范围类型 变量名=(小范围类型)大范围数据类型的值;
注意
如果参与运算没有比int类型更大的数据类型,最终的结果自动提升为int类型
如果参与运算有比int类型更大的数据类型,最终的结果自动提升为最大的数据类型
如果要给比int范围小的byte、short、char赋值的时候,在其范围内的常量可以成功赋值。
转义字符
在java中有一些字符,具有特殊含义,没有办法当做本身的作用使用,需要使用转义字符。
转义字符从\开始,+要转移的字符
\"
\'
\\ \b 退格 光标回删一格
\t 制表符 一个完整的制表符为8个空格
命令行中一个数字字母占1个空格 一个汉字2个空格
看制表符前面的内容是否是完整的制表符位,如果是重开一个制表符为8个空格,如果不是补全一个制表符位
\n 换行
\r 光标回到行首
数值型的表现形式
数值型一共分为两种,整数型和浮点型。
整数型
进制:满几进一
二进制: 只能有0,1组成 , 以0b开头 (大小写都行)
八进制: 可以由0~7组成 , 以0开头
十六进制: 0~9,a~f(大小写都可以)组成 ,以0x|0X
其他进制转为十进制
从右往左算, 每位上的数字乘以进制的n-1次幂,n从1开始。(n是位数)
十进制转为其他进制:
让数值一直除以要转为的进制数,结果0的时候,去余数,从下往上看
浮点型
0.XXX->0可以省略
科学计数法
1.23E5->1.23*10^5
1.23E-5->1.23/10^5
Java中关于注释、标识符、变量、常量、数据类型、类型转换、转移字符以及数值型的表现形式的详解的更多相关文章
- 27 JavaScript的引入&注释&弹窗&变量常量&数据类型及转换&内存&垃圾回收
JS的引入: 1 内部引入 绑定元素事件如onclick="" 绑定锚点如href="JavaScript:void(0)" script标签引入,注意:如果标 ...
- java中的、标识符、运算符以及数据类型之间的转换。
---恢复内容开始--- 数据类型之间的转换: 1:自动转换:就是不用说出要转换成什么类型,由java中的虚拟机自动将小数据类型转换成大数据类型,但大数据中的数据精度有可能被破坏. 2:强制转换:强制 ...
- Java中的注释
代码注释是架起程序设计者与程序阅读者之间的通信桥梁,最大限度的提高团队开发合作效率.也是程序代码可维护性的重要环节之一.所以我们不是为写注释而写注释.下面说一下Javadoc注释规范以及楼主在J2EE ...
- 九天学会Java,第一天,变量和数据类型,赋值和输出
用9天入门三门编程语言,有可能嘛,尤其是对没有基础的同学来说?对于想学好的编程的人来说,无论从哪一门语言开始入手,语言的本身其实并不是我们最应该的关心的,至少不是作为一个初学者首先关心的. 网络上,网 ...
- JAVA中局部变量 和 成员变量有哪些区别
JAVA中局部变量 和 成员变量有哪些区别 1.定义的位置不一样<重点>***局部变量:在方法的内部成员变量:在方法的外部,直接写在类当中 2.作用范围不一样<重点>***局部 ...
- Java中构造函数传参数在基本数据类型和引用类型之间的区别
Java中构造函数传参数在基本数据类型和引用类型的区别 如果构造函数中穿的参数为基本数据类型,如果在函数中没有返回值,在调用的时候不会发生改变:而如果是引用类型,改变的是存储的位置,所有不管有没有返回 ...
- Java 中(静态)变量、(静态)代码块的执行顺序
Java 中(静态)变量.(静态)代码块的执行顺序 非原创 本文讨论 Java 中(静态)变量.(静态)代码块的执行顺序 首先创建 3 个类 1.Foo 类 public class Foo { pu ...
- java中一个数组不能放不同数据类型的值
在java中,数组不能放不同数据类型的值. 方法一: 多态 定义数组类型的时候定义为父类,而存进数组为父类的子类 public class test2 { public static void mai ...
- 在 Java 中不使用多余变量交换两个字符串
在 Java 中不使用多余变量交换两个字符串 public class Test { public static void main(String[] args) { String a = " ...
随机推荐
- 沉默的QQ
QQ很久没有叮咚了,一是没人发消息给我,二是我关了QQ的声音.现在除了几个还在接收消息的群外,其他的群都屏蔽了,有事才上去看看.我从来就没写过QQ空间,那些以前经常写空间的朋友也多数停止了喧闹.每次登 ...
- leetcode-12周双周赛-5090-抛掷硬币
题目描述: 二维dp: class Solution: def probabilityOfHeads(self, prob: List[float], target: int) -> float ...
- IDEA工具下Mybaties框架快速入门程序
本篇文章介绍在IDEA工具下mybatis快速入门程序分为以下五步 1 添加依赖包 2 编写pojo对象 3 编写映射文件 4 编写核心配置文件 5 测试框架 详细如下 建立Mod ...
- alert样式优化
//alert样式优化 function alert(msg, mode) { //mode为空,即只有一个确认按钮,mode为1时有确认和取消两个按钮 msg = msg || ''; mode = ...
- 2018-2019-2-20175323 java实验四 Android程序设计
(一)安装及配置Andriod Studio,执行HelloWorld 我选择的安装网址下载了3.2.0版本的Andriod Studio 此处应该选择cancel 报错 点击所给链接,安装相应SDK ...
- POJ3436:ACM Computer Factory-最大流
目录 目录 思路: (有任何问题欢迎留言或私聊 && 欢迎交流讨论哦 目录 题意:传送门 原题目描述在最下面. 题目真难读懂 有\(n\)台机器,每台机器有\(p\)个部分,每台机 ...
- LeetCode 176. Second Highest Salary (第二高的薪水)
题目标签: 题目给了我们一个工资表,让我们返回第二高的工资. 利用Max,把第一高的工资找到,然后利用 NOT IN,去找到第二高的工资. Java Solution: Runtime: 153ms ...
- 剑指offer——15剪绳子
题目描述 给你一根长度为n的绳子,请把绳子剪成m段(m.n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],...,k[m].请问k[0]xk[1]x...xk[m]可能 ...
- 20140422 ALT+F8 四个强制类型转换
一.static_cast, dynamic_cast, const_cast http://www.cnblogs.com/chio/archive/2007/07/18/822389.html h ...
- 更改idea启动内存信息
1.到idea的安装目录的bin下,找idea64.exe.vmoptions 文件 2.更改参数 对应的参数解释: -Xms1024m 设置IDEA初时的内存大小,提高Java程序的启动速度. ...