目录
简单Java代码
public class Test {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
Java中严格区分大小写
注释
在Java中有以下注释
- // 单行注释
- /*
多行注释
*/- /**
可以自动生成的文档注释
*/
数据类型
四整型、两浮点、一字符、一布尔
整型
byte
1-个字节short
2个字节int
4个字节long
8个字节
浮点型
float
4个字节double
8个字节
float a = 3.0;//如果不在后面加上f或者F,那么默认为double
float b = 3.0F; // 这是float类型
//double类型后也可加添加d或者D
char类型
- 表示
Unicode
编码的字符单元的类型
char a = 'a'; //与String类型不同,char类型是单引号
boolean类型
- 只有
false
和true
两个值,用来逻辑判断
boolean a = true;
boolean b = false;
变量
命名规范
- 只能以字母和下划线开头,不能用数字开头
- 不可使用
Java
的关键字和保留字命名 - 建议使用大驼峰和小驼峰来命名类、方法、变量的名字
// 声明变量
int a;
a = 0;
int b = 0;//以上两种方式均可
常量
- 可以使用
final
关键字来修饰,且命名时应均为大写 final
关键字修饰之后,在程序使用常量时不可更改值static
可以和final
一起使用
类型之间的转换
可以看到下图所示
![](/i/l/?n=23&i=blog/3117978/202303/3117978-20230301181916524-2076228654.png)
强制类型转换
- 代码示例
double a = 1.20;
int b = (int) a;
主要是用于大的类型转换小类型,但是会有可能缺失精准度
运算符
- 常用的有加
+
、减-
、乘*
、除/
- 还有取余
%
- 也可以使用数学函数
结合赋值
- 代码示例
int a = 0;
a += 4;//等价于 a = a + 4;
a *= 4;
a %= 4;
a /= 4;
自增和自减
- 代码示例
int a = 0;
//第一种写法
a++;
a--;//或者可以
//第二种写法
--a;
++a;
- 如果是第一种写法意思是下次使用变量之后增加或者减少1。
- 如果是第二种写法意思是下次使用变量之前增加或者减少1。
boolean运算符
==
和!=
检测相等性,不等返回false,相等返回true。<
、>
、<=
、>=
,小于等于和大于等于符号位置不可改变!
逻辑非&&
短路与- 代码示例
if(a == 1 && b == 2){ return true; }
a == 1
成立,那么就不会执行b == 2
- 代码示例
||
短路或,和短路与一样的含义- 三目运算符
x < y ? x : y
1. 如果x
大于y
那么将x返回,否则返回y - 位运算符
&
、|
、^
、~
,与、或、异或、非<<
、>>
,左移右移
注意运算符的优先级,优先级的不同会影响结果的准确性
其他类型
枚举类型
- 代码示例
enum Size{SMALL, NEDIUM, MAX};
Size s = Size.SMALL;
- 需要使用
enum
关键字来声明为枚举类型
String类型
- String类型从概念上就是Unicode字符序列。
- String类型也称为不可变字符串,但是可以修改字符串变量,引用另外一个字符串
- 不可变字符串的优点:编译器可以让字符串共享
- 更改字符型变量的值时,Java会自动进行垃圾回收掉旧的值
- 如果想判断字符串是否相等,可以使用
equals
方法 - 不可使用
==
来判断,==
只能判断两个字符串是否放在同一个位置 - 如果虚拟机始终将相同的字符串共享,则可以使用
==
来判断 - 但是经过
+
或者substring
方法操作过的并不是共享的 - String类型可以为空串,也可以赋值为
null
输入输出
读取输入
- 代码示例
Scanner in = newScanner(System.in);
- 需要先构造一个
Scanner
对象,并且与"标准输入流"System.in
关联起来 - API
String nextLine()
, 读取输入的一行内容String next()
,读取下一个输入的内容,以空格作为分隔符int nextInt()
double nextDouble()
,读取下一个整数或者浮点型数字boolean hasNext()
,检测输入中是否还有其他字符boolean hasNextInt()
boolean hansNextDouble()
,检测输入中是否还有其他整数或浮点数字
格式化输出
- 可以使用
printf
来进行格式化输出
控制流程
块域
- 代码示例
{
//父级块
//这里面所有代码都属于一个块区
//可以嵌套块
{
//子级块
}
}
- 但是父级块声明的变量名,不可再出现在子级块中
- 父级定义的变量可以在子级块中进行访问,但是子级块的变量父子块访问不到,即作用域
条件语句
- 代码示例
//条件语句写方法一
if(条件语句){
}
//条件语句写法二
if(条件语句){
}else{
}
//条件语句写法四
if(条件语句){
}else if(条件语句){
}else{
}
- 以上写法均可,按需挑选
- 当然也可以嵌套,但是不建议嵌套多层
循环
while
- 代码示例
while(条件语句){
//循环体
}
- 首先会检查条件语句是否成立,如果成立进行循环体中的代码执行,否则不执行
do while
- 代码示例
do{
// 循环体
}while(条件语句)
- 与
while
循环有一点不同,不管条件语句是否成立都会先执行一次循环体的代码
for
- 代码示例
for(int i = 0; i < num; i++){
//循环体
}
- 是循环语句中一种支持迭代的结构
- 执行顺序
- 先找到
int i = 0;
- 在判断
i < num;
是否成立 - 如果成立进行循环体代码,否则直接跳出循环
- 最后在进行
i++
为下一次循环做准备
- 先找到
注意:for语句内部定义的变量无法再循环体外部使用。
以上循环语句均可嵌套使用,但建议避免达到3层及以上的嵌套,会导致程序的时间复杂度增加
switch
- 代码示例
// 条件可以是char、byte、short、int的常量表达式
// 也可以是枚举常量
//从Java SE7开始可以是字符串字面量
switch(条件){
case 1 :
//代码
break;
case 2 :
//代码
break;
default:
break;
}
- 将条件于下面
case
进行匹配,然后执行相应代码 - 应当保持每一个
case
最后都有break
中断控制流程语句
break
- 会终止进行的控制流程语句,让程序执行与最外层控制流程语句同级的后续语句
continue
- 会终止最内层控制流程语句,然后最内侧控制流程语句继续进行
大数值
BigInteger
- 该类实现了任意精度的整数运算
BigDecimal
- 该类实现了任意精度的浮点数值运算
数组
- 用来存储同一类型值的集合
- 代码示例
int[] a = new int[10]; // 创建一个长度为10的int类型数组
int[] b = {1,2,3,4,5}; // 创建一个长度为5的int类型数组
- 第二种方式是将赋值和定长一起
- 数组一旦创建成功不可修改长度
- 如果只是创建数组不进行赋值,则会初始化为默认值,数字数组初始化为0,boolean数组初始化为false,对象数组初始化为null
for each
- 代码示例
for(类型 名称 : 数组名称){
//代码
}
标签:语句,Java,示例,int,代码,基础,学习,类型
From: https://www.cnblogs.com/zmhomecomputer1104/p/17169295.html