01-Java基本语法
注释
单行注释: // 注释内容
多行注释: /* 注释内容 */
文档注释: /** 注释内容 */
数据类型
整型
byte short int long
浮点型
float double
字符类型
char
布尔类型
boolean
变量
1.未初始化的变量不能使用
2.常量使用final来指定
3.命名规范:
1)必须是数字,字母,下划线和美元符号组成,注意不可以数字开头
2)首字母小写,驼峰原则
3)见名知意,不要乱起名字
4)常量的命名应该全部大写
运算符
算术运算符
+ - * / %
注意:整数除0报异常,浮点数除0,结果为NAN
赋值运算符
+= -= *= /= %= =
注意:左边操作数和右边操作数不同时,结合赋值运算符会自动将右边的操作数类型强转为左边操作数的类型
自增和自减运算符
++ --
注意:前缀是先自增(自减)再运算,后缀是先运算后自增(自减)
逻辑运算符
&& || !
注意:&&和||是短路的
位运算符
>> >>> <<
注意:使用>>>时符号位有0填充
字符串:String
1.拼接符号: +
2.字符串相等使用equals方法检查
3.空串:2个引号之间没有任何字符,长度为0
4.null串:不是字符串,不可以调用方法,否则报错
注意:要先检查字符串是不是null串再检查是不是空串
常用api
boolean equals(Object other)
boolean startsWith(String prefix)
boolean endsWith(String suffix)
int length()
String substring(int begin)
String substring(int begin , int end)
String toUpperCase()
String toLowerCase()
String trim()
字符串构建器:StringBuilder
常用api
StringBuilder append(String str)
void setCharAt(char ch)
StringBuilder insert(int index , String str)
String toString()
输入输出
输入:java.util.Scanner
Scanner sc = new Scanner(System.in); String str = sc.nextLine(); int num = sc.nextInt(); float f = sc.nextFloat(); double d = sc.nextDouble();
输入语句示例
输出:System.out
System.out.println("要输出的内容")
格式化输出:System.out.printf("%8.2f",546.165) => 546.16
控制流程
条件语句:if
if(a>b){
System.out.println("a>b") ;
}else if(a=b){
System.out.println("a=b") ;
}else{
System.out.println("a<b") ;
}
条件语句示例
循环语句: for , while , do-while
for(int i =0;i<100;i++){
System.out.println(i);
}
int j = 0;
while(j<100){
System.out.println(j);
j++;
}
int k = 0;
do{
System.out.println(k);
k++;
}while(k<100);
循环语句示例
开关语句:switch
int num = 2;
switch(num){
case 1:
System.out.println("1");
break;
case 2:
System.out.println("2");
break;
default:
System.out.println("没有找到");
break;
}
开关语句示例
中断控制流程语句:break continue
大数值:java.math.BigInteger , java.math.BigDecimal
获取对象:BigInteger.valueOf(long x) BigDecimal.valueOf(long x) BigDecimal.valueOf(long x,int scale)
使用方法来进行大数值的精确运算
+ add(BigInteger other) add(BigDecimal other)
- subtract(BigInteger other) subtract(BigDecimal other)
* multiply(BigInteger other) multiply(BigDecimal other)
/ divide(BigInteger other) divide(BigDecimal other)
比较:compareTo(BigInteger other) compareTo(BigDecimal other)
数组
数组的声明:
int[] a = {1,2,3,4}
int[] b = new int[4];
数组的赋值:
index从0开始的自然数
a[1] = 2; 给下标为1的数组元素赋值为2
for each循环遍历数组:
for(variable:collection){
statement;
}
数组的初始化和匿名数组
1. 创建数组的同时赋值
int smallPrimes = {2 , 3 , 5 , 7 }
2. 初始化一个匿名数组
new int[]{ 2 , 3 , 5 ,7}
数组的固定属性:length
数组一点建立,数组的长度不可变,使用数组名.length来取出数组长度
数组的拷贝:
1. 使用Arrays类中的copy方法
Arrays.copy(原数组,新数组长度)
如果新数组的长度大于原数组的长度,原数组中的所有内容赋值到新数组中,且新数组中的比原数组中多余的部分初始化为null,或者0
如果新数组的长度小于原数组的长度,则舍去缺失的部分
2.使用System中的arraycopy方法
System.arraycopy(src, srcPos, dest, destPos, length);
src :原数组
srcPos: 原数组开始复制位置
dest:新数组
destPos:新数组开始接受位置
length: 复制的长度
数组的排序:
Arrays.sort(数组名),将数组按照升序排列
数组元素的查找:
Arrays.binarySearch(数组,开始位置,结束位置,查找元素)
返回查找元素的下标
多维数组
int[][] a = { { 1 , 2 , 3 } , { 3 , 4 } , { 5 , 6 , 7 , 8} }
int[][] b = new int[3][]
多维数组就是一个数组的数组,是不规则的。
01-Java基本语法的更多相关文章
- 075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现
075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现 本文知识点:综合案例-数组移位-主方法功能4的实现 说明:因为 ...
- 074 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 06 综合案例-数组移位-主方法功能3的实现
074 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 06 综合案例-数组移位-主方法功能3的实现 本文知识点:综合案例-数组移位-主方法功能3的实现 说明:因为 ...
- 073 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 05 综合案例-数组移位-主方法功能1和2的实现
073 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 05 综合案例-数组移位-主方法功能1和2的实现 本文知识点:综合案例-数组移位-主方法功能1和2的实现 说 ...
- 072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法
072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法 本文知识点:综合案例-数组移位-在指定位置处插入数据方法 ...
- 071 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 03 综合案例-数组移位-显示数组当中所有元素的的方法
071 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 03 综合案例-数组移位-显示数组当中所有元素的的方法 本文知识点:综合案例-数组移位-显示数组当中所有元素 ...
- 070 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 02 综合案例-数组移位-从键盘接收数据
070 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 02 综合案例-数组移位-从键盘接收数据 本文知识点:综合案例-数组移位-从键盘接收数据 说明:因为时间紧张 ...
- 069 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 01 综合案例-数组移位-案例需求
069 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 01 综合案例-数组移位-案例需求 本文知识点:综合案例-数组移位-案例需求 说明:因为时间紧张,本人写博客 ...
- 068 01 Android 零基础入门 01 Java基础语法 08 Java方法 06 参数传递问题——基本数据类型传值
068 01 Android 零基础入门 01 Java基础语法 08 Java方法 06 参数传递问题--基本数据类型传值 本文知识点:参数传递问题--基本数据类型传值 说明:因为时间紧张,本人写博 ...
- 067 01 Android 零基础入门 01 Java基础语法 08 Java方法 05 数组作为方法参数
067 01 Android 零基础入门 01 Java基础语法 08 Java方法 05 数组作为方法参数 本文知识点:数组作为方法参数 说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进 ...
- 066 01 Android 零基础入门 01 Java基础语法 08 Java方法 02 带参有返回值方法
066 01 Android 零基础入门 01 Java基础语法 08 Java方法 04 带参有返回值方法 本文知识点:带参有返回值方法 说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进 ...
随机推荐
- tk.mybatis通用工具采坑记
tk.mybatis通用工具pom <!--mybatis依赖--> <dependency> <groupId>org.mybatis.spring.boot&l ...
- Windows系统CMD常用命令大全
命令简介 cmd是command的缩写.即命令行 . 虽然随着计算机产业的发展,Windows 操作系统的应用越来越广泛,DOS 面临着被淘汰的命运,但是因为它运行安全.稳定,有的用户还在使用,所以一 ...
- Redis主从和集群
主从概念 一个master可以拥有多个slave,一个slave又可以拥有多个slave.如此下去,形成了强大的多级服务器集群架构. master用写数据,经统计:网站的读写比率是10:1 通过主从分 ...
- FF笔试题
一.单选题 1.下列关于继承的描述错误的是( ) A. 在Java中允许定义一个父类的引用,指向子类对象 B. 在Java中继承是通过extends关键字来描述的,而且只允许继承自一个直接父类 ...
- c++为什么要面向对象?
前言 c和c++的区别是什么?不可置否,最重要的就是c++的编程思想是面向对象,而c的编程思想是面向过程,这是它们的本质区别,如果你在使用c++编程时使用的还是面向过程的编程思想,那么还不如使用c,因 ...
- 使用docker-compose快速构建集群示例(一)
一.zookeeper集群 docker-compose文件: version: '3.1' services: zoo1: image: zookeeper hostname: zoo1 conta ...
- NoSuchFieldError
最近用Fresco框架加载GIF动态图片,遇到一个bug,记录下来,以供后来者少走弯路: 各种百度,最后参照Fresco官方文档,将原有的 fresco:1.3.0替换成0.12.0即: 在APP b ...
- Emgucv学习系列之环境搭建
Emgucv功能介绍 Emgucv是跨平台的,是Opencv的.net版本.可以对图片.视频等多媒体资源进行加工处理的SDK库. Emgucv下载和安装SDK 下载地址:https://sourcef ...
- js实现深拷贝的一些方法
在ECMAScript变量中包含两种不同类型的值:基本类型值和引用类型值. 基本类型值:Undefined.Null.Boolean.Number.String 引用类型值:Object.Array. ...
- 从零开始学 Web 之 Ajax(二)PHP基础语法
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...