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. ABC240Ex Sequence of Substrings

    ABC240Ex Sequence of Substrings LIS 的好题改编. 约定 \(S(l,r)\) 为字符串 \(s\) 中第 \(l\) 位到底 \(r\)​ 位. \(S(l,r)& ...

  2. Blazor 组件库 BootstrapBlazor 中Row组件介绍

    组件介绍 在Bootstrap中,我们经常使用row和col通过栅格化来控制显示位置. 如 <div class="row"> <div class=" ...

  3. uniapp 使用pinpa 持续化更新

    安装依赖 npm i pinia npm i pinia-plugin-persistedstate 新建 index.ts import { createPinia } from 'pinia' i ...

  4. Nuxt.js 应用中的 afterResponse 事件钩子

    title: Nuxt.js 应用中的 afterResponse 事件钩子 date: 2024/12/6 updated: 2024/12/6 author: cmdragon excerpt: ...

  5. .Net知识技能大全

    .Net知识技能大全 更多请见https://www.dotnetshare.com C#常见运算符 一元运算符(+.-.!.~.++.--) 算术运算符(*./.%.+. – ) 移位运算符(< ...

  6. VLC web(http)控制 (4) 服务器文件获取

    通过链接 http://127.0.0.1:8080/requests/browse.xml?uri=file%3A%2F%2F~ 可以获取服务器默认目录所有文件. 其中file%3A%2F%2F~是 ...

  7. GraphRAG+文档结构:打造高性能实体溯源方案

    作者:陈梓康 众所周知,GraphRAG将文档内容抽取为知识图谱三元组后,实际上仅保留了关联性知识信息,因此不可避免地会丢失原文的一些内容细节.在对数据完整度要求严格的业务场景,如金融.医疗.保险等行 ...

  8. vscode实现Markdown实时预览

    vscode - 插件搜索: Markdown Preview Enhanced 安装 然后打开vscode预览框,即可. That's ALL

  9. idea中terminal的配置

    idea中terminal的配置流程: File->settings->Tools->terminal 然后根据需要进行配置: 显示git操作界面 Shell path ==> ...

  10. Vue中this.$store.dispatch() 与 this.$store.commit()的区别

    两者的区别 (1)this.$store.commit() commit: 同步操作 this.$store.commit('方法名',值)[存储] this.$store.state.方法名[取值] ...