Java基础语法

——————————————————————————————————————————————————

1. 注释

  • 注释:解释说明代码功能。

    单行注释,多行注释,文档注释(不影响程序执行),IDEA项目里面的out文件里的class文件直接双击就可以反编译可以看到去掉注释的源码
/**
* 文本注释
*/ /*
多行注释
*/ // 单行注释

2.字面量

  • 字面量

    | 整数 | 生活中程序中书写一致

    | 小数 | 生活中程序中书写一致

    | 字符 | 用单引号,仅有一个字符

    | 字符串 | 用双引号,内容可有可无

    | 布尔值 | true,false 只有两个

    | 空值 | null

    |特殊字面量 | 例如:\t、\n

  • 数据类型:

    基本数据类型:四大类八种

    整型(byte,short,int,long)->1,2,4(十进制10位,),8(十进制19位)

    浮点型(float,double),-> 4(十进制38位),8(十进制308位)

    字符型(char),->2

    布尔型(boolean)->1

    引用数据类型(字符串、枚举类型)

3.变量

  • 变量详解:

    变量是内存中的一块区域,理解成一个盒子,装程序要处理的数据的。

    数据类型 变量名称 = 数据;

    数据形式,变量名首字母小写,=是赋值

  • 十进制 -> 二进制 (除二取余法)

    TB GB MB KB B b

    文本:字符在计算机中,是对应的ASII码数值

    0:48、 A:65、 a:97

    图片数据存储:是无数像素点组成0~255x255x255

    声音存储:对应的是波形图,存储波的值

    二进制 -> 十进制 (各个位数乘二)

4.关键字、标识符

  • 关键字:一些特殊字符,Java开发工具会提示,如public,static,class……

    标识符:数字不能开头,可以用数字,字母,下划线,$符。

    变量名:建议首字母小写 studyNumber……

    类名:首字母大写 Student,HelloWorld……

5.方法

  • 方法:就是功能,Java开发的软件中功能最小的单位是一个个的方法。

  • 如何定义满足需求的方法,学会调用?

修饰符   返回值类型   方法名称 (形参列表){
方法体代码
return 返回值;
}
  • 调用方法:方法名称(数据)

    方法名要首字母小写,驼峰模式,getCode

  • 方法是否需要接受数据,方法是否返回数据?

    无返回值的方法中可以直接通过单独的return;立即结束当前方法执行。

    做任何功能都可以定义方法。

  • 方法可以重载:

    一个类中出现多个方法的名称相同,但是它们的形参列表是不同的,那么这些方法就成为方法重载了

    类型不同,个数不同,顺序不同

6.类型转换

  • 自动类型转换,类型范围小的变量,可以直接赋值给类型范围大的变量(byte -> int)
  • 强制类型转换,类型范围大的变量,不可用直接赋值给类型范围小的变量,会报错,需要强制类型转换过去(int -> byte)

    直接把小范围赋给大范围类型, 会报错

    所以需要强制类型转换
int i = 20;
// 强制类型转换:类型 变量2 = (类型)变量1;
byte j = (byte)i;
  • 表达式的自动类型提升:

    表达式中,小范围类型的变量,会自动转换成表达式中较大范围的类型,再参与运算;

    表达式最终结果类型由表达式中的最高类型决定;

    表达式中,byte,short,char运算时是直接转换成int类型参与运算;

7.输入输出

  • 输出,把程序中的数据展示出来

  • 输入,程序读取用户键盘输入的数据(通过Java提供的Scanner程序来实现)

    Scanner是Java提供好的API,程序员可以直接使用

  • 输入:

    1.导包(可以自动)

    2.抄代码,代表得到键盘扫描器对象

    Scanner sc = new Scanner(System.in);

    3.抄代码,等待接受用户输入数据

    String name = sc.next();

    int age = sc.nextInt();

8.运算符

  • 算术运算符:+-*/%

    +与字符串运算的时候用作连接符

    "abc" + 5 --> "abc5"

    能算则算,不能算就连在一起

    两个整数作除法,其结果一定是整数,因为最高类型是整数

  • 自增自减运算符:++ --

  • 赋值运算符:=

  • 扩展赋值运算符:+= -= *= /= %=

    隐含了强制类型转换:a+=b

    a+=b ==> a = (a的类型)(a+b) 用来收红包

  • 关系运算符:> >= < <= == !=

    成立返回true,不成立返回false

  • 三元运算符:

    条件表达式?值1 :值2

  • 逻辑运算符:

    & 逻辑与:多个条件必须都是true结果才是true

    | 逻辑或:过个条件中只要一个true结果是true

    ! 逻辑非:就是取反

    ^ 逻辑异或:前后相同则是false,相反是ture

    && 短路与:左边为false,右边不执行 ->false(短路特性)

    || 短路或:左边为true,右边不执行-> true(短路特性)

9.其他

  • 8421码(BCD码):是一种将十进制数字编码为四位二进制数的方法

    二进制以0B或者0b开头,八进制以0开头,十六进制以0x开头

  • API(application Programming Interface):应用程序编程接口

    Java为自己写好的程序提供了相应的程序使用说明书(API文档)

  • 设置自动导包:file -> settings -> editor -> general ->auto improt ->

    add unambiguous imports on the fly

    optimize improts on the fly

    两个勾上,然后点击apply

Java02-基础语法的更多相关文章

  1. Swift与C#的基础语法比较

    背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...

  2. iOS-----正则表达式的基础语法

    正则表达式简单语法总结 一.什么是正则表达式 从概念上来说,正则表达式也是一门小巧而精炼的语言,它可以用来简化检索特定的字符串,替换特定字符等功能,有许多开发语言工具,都内嵌支持正则表达式.那么一个正 ...

  3. python之最强王者(2)——python基础语法

    背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...

  4. emmet 系列(1)基础语法

    emmet 系列(1)基础语法 emmet 是一个能显著提升开发html和css开发效率的web开发者工具 emmet基本上目前已知的编辑器都有相应的插件,各个编辑器的emmet插件的下载地址:点我下 ...

  5. Scala基础语法 (一)

    如果你之前是一名 Java 程序员,并了解 Java 语言的基础知识,那么你能很快学会 Scala 的基础语法. Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的. 我 ...

  6. Java基础语法

    java基础学习总结——基础语法1 一.标识符

  7. javascript中正则表达式的基础语法

    × 目录 [1]定义 [2]特点 [3]元字符[4]转义字符[5]字符组[6]量词[7]括号[8]选择[9]断言[10]模式[11]优先级[12]局限性 前面的话 正则表达式在人们的印象中可能是一堆无 ...

  8. Swift基础语法学习总结(转)

    Swift基础语法学习总结 1.基础  1.1) swift还是使用// 和/* */ 来注释,并且/* */允许多行注释. 1.2) swift使用print和println打印,它的传参是一个泛型 ...

  9. 黑马程序员——OC语言基础语法 面向对象的思想

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结)(一)基础语法 1)关键字 @interface.@implementati ...

  10. 【OC基础语法考试】

    OC基础语法已经全部学完,但是这些知识只是最基础的,还有很多高级知识,这个可能需要后面慢慢的去学习才能体会到.接下来我会总结前面的OC基础语法,如果大家发现有什么不正确的地方,请指正,小弟是新生,多请 ...

随机推荐

  1. P4119 Ynoi2018 未来日记

    P4119 Ynoi2018 未来日记 lxl 出的题好 duliu 啊. 感谢来自 fr200110217102 的博客 题解 P4119 [Ynoi2018未来日记]. 下标分块+值域分块+并查集 ...

  2. git cherry-pick 同事代码commit后 如何修改为自己的author

    如果有个功能是同事在做,但是做到一半,需要接手帮忙修改或者完成后续,可以切入他的分支 git checkout 分支名称 直接开发,也可以 git checkout -b 新分支名称 这样就完全拥有他 ...

  3. Java通用分页

    一. 要分页我们必须要有数据库,所以我们先准备下数据库,其数据库脚步如下: --以下是创建数据库和数据库表以及向数据库插入数据  use master   Go   if exists(select ...

  4. 常用js 函数

    过滤对象空值   removeEmptyValues(obj) {                         for (const key in obj) {                   ...

  5. 从Delphi到Lazarus——Delphi转换器

    0.前言 在Lazarus中使用Delphi编写的文件是一件很简单的事情,这是因为Lazarus可以直接打开Delphi的任何文件,甚至有些文件可以不做任何修改就可以直接使用到你的Lazarus程序中 ...

  6. cv2, pil.image, plt.image 读图的差异

    人是习惯性动物,当我们第一次用opencv时,肯定会觉得opencv的imread()方式很奇怪,做图像出来天天说图像是RGB图RGB图,可opencv读出来的图,却是BGR的顺序.是不是很奇怪,还不 ...

  7. 用word发博客

    测试 标题一 第一段文字 测试图片 标题二 Test test

  8. 百度地图基本事件: marker、polygon等覆盖物添加以及删除

    marker拖拽获取坐标 https://www.cnblogs.com/niunan/p/6822124.html   如果添加大量聚合点的时候,请参考如下几篇文章 https://www.zhih ...

  9. mysql:sql create database新建utf8mb4 数据库

    create database sina default character set utf8mb4 collate utf8mb4_unicode_ci;或者是create database con ...

  10. Qt开发经验小技巧121-130

    QLineEdit除了单纯的文本框以外,还可以做很多特殊的处理用途. 限制输入只能输入IP地址. 限制输入范围,强烈推荐使用 QRegExpValidator 正则表达式来处理. //正在表达式限制输 ...