一:注释

注释主要就是用来解释某句或者某段代码使得其他人调试更加方便。特点是在编译代码的时候不会编译注释, 不管发不发生错误。注释主要分为单行注释//(快捷键ctrl+/)、多行注释/* */(快捷键ctrl+shift+/)和文档注释

/**

*/

文档注释主要用于类的开始,解释此类只要用来作什么。

注释的好处: 1. 使得自己能够读懂以前写的代码  2.便于我们进行调试

二:java的关键字

Java关键字:也就是在java语言里的特殊的单词,这些单词有特殊含义,不能用来作为变量名。

关键字的特点:1. 全部都是小写。2. 这些关键不能随意的增加与修改。3. 取名的时候不能使用这些关键。4.  goto这是一个保留的关键字,在Java关键字里基本用不到,但在取名的时候还是习惯性地不使用其作为变量。

三: 标识符

标识符:用来表示类名,变量名,方法名,类型名,数组名,文件名的有效字符序列称为标识符。也就是给类、接口、对象、变量取的别名。

规则:

1.只有字母(区分大小写),下划线,美元符号和数字组成,长度不受限制。

注:字母包括英文26个字母 ,汉字,日文,朝鲜文,俄文,希腊字母等。

2.第一个字母不能是数字。

3.不能是关键字。

4.不能是true、false、null(尽管三个都不是关键字)。

作用:可以具体通过别名来找到这个类、变量、方法等。

四:java的语法规范

包名的作用:便于我们管理java文件。

包名的规范: com /cn(域名).**(公司的名称).项目的名称.具体包的意思(中间要以英文的. 进行分割),例如:com.**.java.test

类的规范:首字母必须大写,如果是由多个单词构成,第二个单词的首字母也必须大写

方法:方法的首字母一般是小写,然后一般取名是动词。

变量:方法的首字母一般是小写,然后一般取名是名词,方法与变量的取名都是按照驼峰命名法。

常量:所有的字母都是大写,两个单词也下划线进行分割。

五:数据类型分类

1.java 八大基本数据类型

整数类型:int(整数)、short(短整形)、long(长整形)、byte(字节)

小数类型:float单精度、double双精度

布尔类型:boolean只有两种结果(true、flase)

字符类型:char(单个字符)一个中文占两个字节

2.引用数据类型:String(表示字符串,可以存多个字符)、实例化的对象、数组等。

3.数据类型与变量有什么关系?

答:声明一个变量

注意点:1.数据类型2.取名   3.给其赋值,变量的赋值永远是右边的给左边的进行赋值

变量值的大小由基本数据类型的值来决定。

如果是需要给多个变量来进行赋值,并且这些变量的数据类型都是一样的,就可以使用逗号进行分割,例如:int zhangsanAge = 18,wangwuAge = 28,zhaosi = 38;

变量要注意的点:

  1. 变量需要给其赋初始值
  2. 不能超过最基本数据类型的最大的长度
  3. 变量声明过后,下次就不需要来进行声明了,直接通过变量名来给其赋值就可以了。

注意:整型默认类型是int,小数默认类型是double,如果要使用float 类型而且数值偏大要在变量的值后面加上F,要使用long类型数据而且数据偏大要在变量的值后面加上L

六:数据类型转换

数据类型转换大小次序 :

byte<char=short<int=float< long = double

自动类型转换(隐式转换):由小的数据类型转换为大的数据类型不需要去处理,系统会自行进行转换,(小类型数据和大类型数据进行运算时,会默认提升为大类型)

注意:

其中(byte ,short ,char ,int)两个相加或自身相加会默认提升为int类型

而非较大类型 int以及int以上的类型,在相互运算时,会提升为较大类型

例如:double mathScore = score+1;

强制类型转换:由大的数据类型转换为小的数据类型需要进行处理,例如:

Int mathScore = (int)score+1;

需要注意的是:强制类型转换会产生丢位。

丢位:(我的理解是)

数值可能与原的有差异,因为大数据类型如果数值太大超过它转的那个小范围的数据类型最大值,会从那个小的数据类型的取值范围内最小那个值开始计数(类似时钟一圈12小时完了从新开始)。

七:常量,字符,字符串

1.常量:不会变的量,用final修饰,赋值以后就不能够改变。

与变量的区别:就是多了一个final与不能改变,而变量可以改变

例如:Static final int MAX = 10;这里的常量MAX的值就为10,不可以改变。

常量一般在开发中与final进行搭配,并且常量名一般是大写。

2.char:单个字符

1只要涉及单个字符都会出现

2char字符进行转换时会参照ascll码,进行运算时会转换为ascll码里的值进行运算。

3.String字符串:可以存多个字符

1. String是引用数据类型,存的是地址,而不是具体的值。

2.所有的基本数据类型与String进行+拼接出来的结果都是String类型。

八:java里的基本运算符

1.算术运算符:+(加)、-(减法)、*(乘法)、/(除法)   %(取余数)

num++与++ num的区别:num++是先获取num的值,再进行运算,而++num是先进行运算之后,再获取其值;num--与--num同理。

需要注意是 / 整除:整除等到的是除法的商并且一般是取整的,要想拿到一个小数的商,可以在除数或被除数加小数点如 12.0,并且还有如下规律:

1、如果是两个整数相除,结果还是一个整数

2、如果任意一个操作数是小数,那么结果就是小数

还有取余运算符 %:结果是除法的余数,注意事项:取余的结果的符号只和%前面的操作数的符号有关,第一个数小于第二个数,取余的结果就是第一个数。

如果第一个数比第二个大:余数的结果不会超过第二数然后增加第一个数的大小,取余结果0开始增加到第二个数的大小然后又变为0这样一直循坏。

2.赋值运算符:+=(加)、-=(减法)、*=(乘法)、/=(除法)、%=(取余数)

num+=5;等同于num = num+5;其他赋值运算符也是如此。

3.逻辑运算符:

逻辑运算符:普通逻辑运算符有 与&   或|  ^   非!

                      短路逻辑运算符有 与&&  或||

其中短路逻辑运算的概念为:短路逻辑运算符:逻辑运算符前后的两个表达式中,第一个表达式计算完成之后,一定可以确定整个逻辑表达式的值,那么就不再计算第二个表达式的值。

&&:并且,也就是只有当条件1与条件2返回的结果都是真时,最后这个表达式的结果才是真,例如(1==1) && (1<=3)返回的结果就是true

||  :或者,也就是条件1与条件2返回的结果只要有一个是真的,最后这个表达式的结果就是真的。

&、|:用法跟前面的一样,区别是只要第一个表达式不对,后面的就都不比较(只要了解就行了,不常用)。

!:取相反的结果,例如!(1==1) 返回的结果是false,与(1==1)的结果true相反。

小节:

对于普通逻辑运算符:(&与,| 或 ,!非 ,^逻辑异或(使用不多))

记忆技巧:|:或运算符一真及真,并且假假必假,&:与运算符一假及假,并且假假必假,非!true及false,非!false及true,^:逻辑异或。相同为假,不同为真。

4. 三元运算符:语法: 表达式1 ? 表达式2 : 表达式3

表达式1的结果只有两种:要么是true,要么是flase

如果表达式1返回的结果是true则执行表达式2,反之执行表达式3

注意:表达式2与表达式3的数据类型必须一样

小节:

其中需要注意的问题是:对于三目运算符的结果有几种接收方式,

第一种:根据返回的类型进行变量接收但是注意三目运算符的两个结果true/false的返回类型必须相同,否则无法确定接收的类型,出现报错。

第二种:使用system.out.println(),进行数据输出,此时可以不指定true/false两个放回结果的数据类型是否相同。

九:判断语句(判断语句有单条件判断,多条件判断等)

单分支if选择结构:

语法:if(条件(条件必须返回的是boolean类型)) {

执行语句

}

后续补充。。。。。。。。

十:键盘输入类:

Scanner sc = new Scanner(System.in);

sc.next():获取从键盘输入的字符串类型的值

sc.nextInt():获取从键盘输入的整数类型的值

sc.nextDouble():获取从键盘输入的小数类型的值

如果是两个字符串比较,使用的是其equlas 方法

最新文章

  1. 浅析java内存模型--JMM(Java Memory Model)
  2. 转:安装MySQL遇到MySQL Server Instance Configuration Wizard未响应的解决办法
  3. GWT资料收集
  4. file_operations结构2
  5. Ubuntu 修改 Apache2 用户组 方法
  6. rhel5.8安装mysql测试
  7. Mysql JOIN优化。
  8. Hostker云主机
  9. Qt5该插件机制(4)--QtMeta信息窗口小部件metaData
  10. 给VIM和Terminal配色:Solarized
  11. TensorFlow从1到2(三)数据预处理和卷积神经网络
  12. SpringBoot学习笔记(2) Spring Boot的一些配置
  13. Python基础知识点小结
  14. DButils实现数据库表下划线转bean中驼峰格式
  15. ubuntu 脚本执行
  16. Unity3D Android动态反射加载程序集
  17. HDU 1710Binary Tree Traversals(已知前序中序,求后序的二叉树遍历)
  18. python 进程 线程 协程
  19. Liunx cannot remove `xxx&#39;: Operation not permitted
  20. Eclipse/MyEclipse按任何键,都可以提示?(最强帮手)

热门文章

  1. 如何调试Maven软件的源代码
  2. Django:文章详情页面评论功能需要登录后才能使用,登录后自动返回到文章详情页
  3. Django后台缓存运用,提高并发
  4. RabbitMQ的安装(Windows环境下)
  5. 第一周-----Java 的核心优势和生态体系——程序员们希望他们编写的程序能够运行在不同的机器,不同的环境中,这需要一种体系中立的语言(即跨平台)。
  6. Lucas定理的运用及组合数奇偶性的判断
  7. LIUNX随堂学习-3 权限
  8. 探索grafana
  9. glib系列2 APP编译
  10. [Tensorflow]激励函数tf.nn.relu样例