第二章 Java基础知识(上)
2.1、注释
单行注释 // 注释内容
多行注释 /* 注释内容 */
文档注释 /**注释内容 */
2.2、关键字
定义:在Java语言中被赋予特殊含义的小写单词
分类:
2.3、标识符
定义:标识符就是给常量、变量、类、方法起名字
注意:
- 标识符由字母、数字、下划线"_"、美元符号"$"组成
- 标识符不能以数字开头
- 标识符不能是关键字
- 标识符严格区分大小写
格式:
常量的命名法:常量
规则:每个单词都大写,单词与单词之间用下划线分隔
举例:STUDENT_NUMBER
小驼峰命名法:变量名、方法名
规则:首字母小写,从第二个单词开始每个单词的首字母大写
举例:studentName
大驼峰命名法:类名
规则:每个单词的首字母都大写
举例:StudentInfo
2.4、常量
定义:在程序运行期间,其值不会发生改变的量,被称为常量
分类:
2.5、数据类型
分类:
范围:
注意:
int a = 0b11111111;// 二进制
int b = 0377;// 八进制
int c = 255;// 十进制
int d = 0xff;// 十六进制
2.6、变量
定义:在程序运行期间,其值可以发生改变的量,被称为变量
格式:
变量类型 变量名 = 初始化值;
变量类型 变量名;
变量名 = 初始化值;
注意:
- 同一对大括号内,变量名称不能重复
- 在变量使用之前,必须要进行初始化
- long数据后边需要加L、float数据后边需要加F
- 整数默认是int类型、浮点默认是double类型
2.7、类型转换
自动类型转换:把小范围数据类型赋值给大范围数据类型,由于精度并不会丢失,因此这种转换是自动的
如图:
强制类型转换:把大范围数据类型赋值给小范围数据类型,由于精度可能会丢失,因此需要进行强制转换
格式:目标数据类型 变量名 = (目标数据类型)(表达式或变量);
2.8、运算符和表达式
运算符:对常量或者变量进行操作的符号
表达式:用运算符把常量或者变量连接起来符合Java语法的式子被称为表达式
2.8.1、算术运算符
符号 | 作用 | 举例 | 说明 |
---|---|---|---|
+ | 加 | 7+3 | 7+3=10 |
- | 减 | 7-3 | 7-3=4 |
* | 乘 | 7*3 | 7-3=21 |
/ | 除 | 7/3 | 7/3=2 |
% | 取余 | 7%3 | 7%3=1 |
2.8.2、自增和自减
符号 | 作用 | 举例 | 说明 |
---|---|---|---|
++ | 自增 | int i = 10; i++; |
i=11 |
-- | 自减 | int i = 10; i--; |
i=9 |
注意:
- 参与操作的时候,如果放在变量的前边,先加在运算
- 参与操作的时候,如果放在变量的后边,先运算在加
2.8.3、赋值运算符
符号 | 作用 | 举例 | 说明 |
---|---|---|---|
= | 赋值 | a=10 | 将10赋值给变量a |
+= | 加后赋值 | a+=b | 将a+b的值给变量a |
-= | 减后赋值 | a-=b | 将a-b的值给变量a |
*= | 乘后赋值 | a*=b | 将a*b的值给变量a |
/= | 除后赋值 | a/=b | 将a/b的值给变量a |
%= | 取余后赋值 | a%=b | 将a%b的值给变量a |
注意:
short s = 10;
s = s + 10; //此行代码报错,因为运算中s提升为int类型,运算结果int赋值给short可能损失精度
short s = 10;
s += 10; //此行代码正确,隐含了强制类型转换,相当于 s = (short)(s + 10);
2.8.4、关系运算符
符号 | 作用 | 举例 | 说明 |
---|---|---|---|
== | 判断是否相等 | a==b | 判断a和b的值是否相等,成立为true,不成立为false |
!= | 判断是否不等 | a!=b | 判断a和b的值是否不等,成立为true,不成立为false |
> | 判断是否大于 | a>b | 判断a是否大于b,成立为true,不成立为false |
>= | 判断是否大于等于 | a>=b | 判断a是否大于等于b,成立为true,不成立为false |
< | 判断是否小于 | a<b | 判断a是否小于b,成立为true,不成立为false |
<= | 判断是否小于等于 | a<=b | 判断a是否小于等于b,成立为true,不成立为false |
2.8.5、逻辑运算符
符号 | 作用 | 说明 |
---|---|---|
& | 逻辑与 | “与”,并且的关系,只要表达式中有一个值为false,结果即为false |
| | 逻辑或 | “或”,或者的关系,只要表达式中有一个值为true,结果即为true |
! | 逻辑非 | true变false、false变true |
^ | 逻辑异或 | 相同为false,不同为true |
&& | 短路与 | 作用和&相同,但是有短路效果,如果左边为false,右边就不执行了 |
|| | 短路或 | 作用和|相同,但是有短路效果,如果左边为true,右边就不执行了 |
2.8.6、三元运算符
格式:关系表达式 ? 表达式1 : 表达式2;
int a = 10;
int b = 20;
int max = a > b ? a : b;
2.9、数据输出和输入
数据输出:
输出后换行:System.out.println(常量/变量/方法返回值/对象/表达式);
输出不换行:System.out.print(常量/变量/方法返回值/对象/表达式);
换行:System.out.println();
数据输入:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
System.out.println(i);
}
}
第二章 Java基础知识(上)的更多相关文章
- 第二章 Java基础知识(下)
2.1.分支结构(if.switch) 2.1.1.if语句 格式一: if (关系表达式) { 语句体; } 流程一: ①首先计算关系表达式的值 ②如果关系表达式的值为true就执行语句体 ③如果关 ...
- java面向对象编程——第二章 java基础语法
第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...
- RxJava2实战--第二章 RxJava基础知识
第二章 RxJava基础知识 1. Observable 1.1 RxJava的使用三步骤 创建Observable 创建Observer 使用subscribe()进行订阅 Observable.j ...
- (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识
开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...
- 第二章Java基础之标识符
- JAVA基础第二章-java三大特性:封装、继承、多态
业内经常说的一句话是不要重复造轮子,但是有时候,只有自己造一个轮子了,才会深刻明白什么样的轮子适合山路,什么样的轮子适合平地! 我将会持续更新java基础知识,欢迎关注. 往期章节: JAVA基础第一 ...
- 第二十九节:Java基础知识-类,多态,Object,数组和字符串
前言 Java基础知识-类,多态,Object,数组和字符串,回顾,继承,类的多态性,多态,向上转型和向下转型,Object,数组,多维数组,字符串,字符串比较. 回顾 类的定义格式: [类的修饰符] ...
- Java基础知识了解
第一章 开发前言 一.java语言概述 Java是当下最流行的一种编程语言,至今有20年历史了.Java语言之父是James Gosling. Java是Sun公司(Stanford Universi ...
- 学习android学习必备的java基础知识--四大内部类
学习android必备的java基础知识--四大内部类 今天学习android课程,因为我的主专业是JAVA,但是兴趣班却有这其他专业的同学,学习android 需要具备一些java的基础知识,因此就 ...
随机推荐
- (私人收藏)java实例、知识点、面试题、SHH、Spring、算法、图书管理系统、综合参考
https://pan.baidu.com/s/1hkmgJU6pf2sBjNV1NlOaNgr6l2 Java趣味编程100例java经典选择题100例及答案java面试题大全java排序算法大全j ...
- MySQL实验 子查询优化双参数limit
MySQL实验 子查询优化双参数limit 没想到双参数limit还有优化的余地,为了亲眼见到,今天来亲自实验一下. 实验准备 使用MySQL官方的大数据库employees进行实验,导入该示例库 ...
- YAML & JSON &XML如何选择
前言 本文翻译https://www.csestack.org/yaml-vs-json-vs-xml-difference/,下文会针对当前现有的数据序列化语言做下梳理.重点突出YAML是什么,优缺 ...
- POI2014 FAR-FarmCraft
[Farm Craft] [题目描述] mhy住在一棵有n个点的树的1号结点上,每个结点上都有一个妹子. mhy从自己家出发,去给每一个妹子都送一台电脑,每个妹子拿到电脑后就会开始安装zhx牌杀毒软件 ...
- OutOfMemory相关问题(内存溢出异常OOM)
OutOfMemory(内存溢出异常OOM) java.lang.OutOfMemoryError :Thrown when the Java Virtual Machine cannot alloc ...
- Layui数据表格动态加载操作按钮
效果: 方法一:绑定模版选择器 <div class="layui-card"> <div class="layui-card-body layui-r ...
- Jmeter系列(43)- 详解 Jmeter 图形化 HTML 压测报告之 Charts 模块
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html Charts 介绍 包含了各种详细信息 ...
- scala 数据结构(十):折叠、扫描、拉链(合并)、迭代器
1 折叠 fold函数将上一步返回的值作为函数的第一个参数继续传递参与运算,直到list中的所有元素被遍历. 1)可以把reduceLeft看做简化版的foldLeft. 如何理解: def redu ...
- Mysql and ORM
本节内容 数据库介绍 mysql 数据库安装使用 mysql管理 mysql 数据类型 常用mysql命令 创建数据库 外键 增删改查表 权限 事务 索引 python 操作mysql ORM sql ...
- 3dTiles 数据规范详解[4.1] b3dm瓦片二进制数据文件结构
B3dm,Batched 3D Model,成批量的三维模型的意思. 倾斜摄影数据(例如osgb).BIM数据(如rvt).传统三维模型(如obj.dae.3dMax制作的模型等),均可创建此类瓦片. ...