Java 基础特征
程序的一些基本特征
- Java 中的主要代码都会位于一个类中,类是通过
class
关键字来定义的 - Java 是一种 大小写敏感 的语言,例如:
- 关键字区分大小写,class 不能写成 Class
- 命名为 HelloWorld 的类和命名为 Helloworld 的类是不一样的
- 程序的文件名称必须和类的名称完全相同,Java 代码的文件都以类名加.java 后缀进行命名
- 比如 HelloWorld 类的代码保存在 HelloWorld.java 文件中
public static void main(String[] args)
是一个方法,这是 Java 程序的入口- 任何 Java 程序的代码都是从这个方法开始执行的
- 关于 Java 标识符
- 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_) 开始
- 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线(_) 和数字的组合
- Java 语言自带的关键字不能用作标识符,比如你不能定义一个类或者方法命名为 class
- 标识符是大小写敏感的
- 比如 blog、$user、_title 和__1_content 都是合法的标识符;而 123blog 和-user 都是非法标识符
- 代码注释
- 单行注释: 在注释内容前加两个斜线
//
,则 Java 编译器会忽略掉//
的信息 - 多行注释: 在要注释的内容前面添加
/*
,在注释的内容后添加*/
- 文档注释 : 在要注释的内容前面添加
/**
,在注释的内容后添加**/
,这是一种特殊的多行注释,注释中的内容可以用以生成程序的文档,具体用法我们以后讲解.
- 单行注释: 在注释内容前加两个斜线
- JAVA 中的包: 在开发过程中,类的数量会越来越多,我们可以通过包 ( Package ) 来组织类.包的命名一般以一个组织的域名的反写开头.如
com.apache
变量
变量 (Variable) 是在内存中动态存储值的地方.简单地理解,程序的作用就是对变量进行各种运算. java 中的类型分为 基本数据类型 以及 引用数据类型 .声明变量的时候要确定变量的数据类型,使用变量之前要对变量进行初始化.
- 对大数的记录
结尾的 E+数字 表示 E 之前的数字要乘以 10 的 数字 次幂.比如 3.14E3 就是 3.14×1000=3140
一个类可以包含以下类型的变量
- 局部变量: 在方法、构造方法或者语句块中定义的变量被称为局部变量.变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁.
- 成员变量: 成员变量是定义在类中,方法体之外的变量.这种变量在创建对象的时候实例化.成员变量可以被类中方法、构造方法和特定类的语句块访问.
- 类变量: 类变量也声明在类中,方法体之外,但必须声明为 static 类型.
转义字符
符号 | 字符含义 |
---|---|
\n | 换行 (0x0a) |
\r | 回车 (0x0d) |
\f | 换页符(0x0c) |
\b | 退格 (0x08) |
\s | 空格 (0x20) |
\t | 制表符 |
\" | 双引号 |
\' | 单引号 |
\ | 反斜杠 |
\ddd | 八进制字符 (ddd) |
\uxxxx | 16 进制 Unicode 字符 (xxxx) |
运算符
// 对 a 减 1
a++;
a += 1;
a = a + 1;
// 对 a 加 1
a--;
a -= 1;
a = a - 1;
- 三目运算符:
表达式 1?表达式 2:表达式 3;
当表达式 1 为真的时候执行表达式 2,否则执行表达式 3 - 相除向下取整:
/
将商向下取整int a = 11, b = 3; int c = a / b;
- 取余运算:
%
获得两个数相除的余数 - 比较关系运算符是否相等
- '=='和'!='作为关系运算符只用来比较对象的引用
- 如果想比较两个对象实际内容是否相同,需要调用对象的 equals() 方法.比如判断一个字符串 str 的内容是否为"abcd",应该这样比较
if (str.equals("abcd")) { } if (str == "abcd") { }
- 逻辑运算符
逻辑运算符 | 逻辑关系 |
---|---|
&& | 与 |
|| | 或 |
! | 非 |
- 逻辑短路
java 支持逻辑短路 &&
前面如果为 false 整个值都是 false, ||
的前面如果为 true 整个表达式的值都是 true
- 位运算符
位运算符 | 计算逻辑 |
---|---|
& | 与运算: 对于某一位,只要两个操作数都为 1,则该位的结果为 1,否则为 0 |
| | 或运算: 对于某一位,只要两个操作数有一个为 1,则该位的结果为 1,否则为 0 |
^ | 异或运算: 对于某一位,如果两个操作数不相同,则该位的结果为 1,否则为 0 |
~ | 非运算: 按位补运算符翻转操作数的每一位 |
<< | 二进制左移运算符: 左操作数按位左移右操作数指定的位数 |
>> | 二进制右移运算符: 左操作数按位右移右操作数指定的位数 |
>>> | 二进制右移补零操作符: 左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充 |
x = 0011 1100
y = 0000 1101
-----------------
x & y = 0000 1100
x | y = 0011 1101
x ^ y = 0011 0001
~x = 1100 0011
x << 2 = 1111 0000
x >> 2 = 0000 1111
x >>> 2 = 0000 1111
- 三元运算符
booleanExpression ? valueWhenTrue : valueWhenFalse
if (x >= 0) {
y = x;
} else {
y = -x;
}
// 可以转换成
y = x >= 0 ? x : -x;
打印数组元素
Arrays.toString(array);
: 直接使用system.out.print(array)
会出现类似[I@610455d6
这样的情况
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论