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 带参有返回值方法 本文知识点:带参有返回值方法 说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进 ...
随机推荐
- 响应式---web设计之CSS3 Media Queries
一:设置视口 (view [vju:] 看; ==看待 port [pɔ:t] 接口)==视口 <meta name="viewport" content="w ...
- [Solution] JZOJ-5806 简单的操作
[Solution] JZOJ-5806 简单的操作 题面 Description 从前有个包含n个点,m条边,无自环和重边的无向图. 对于两个没有直接连边的点u;v,你可以将它们合并.具体来说,你可 ...
- POJ2516K次费用流建图
Description: N个订单(每个订单订K种商品),M个供应商(每个供应商供应K种商品),K种商品,后N行,表示每一个订单的详细信息,后M行表示每个供应商供应的详细信息,后K 个N * M的矩阵 ...
- jenkins+donet core持续集成环境搭建
一.Jenins+GitHub 参考 另外需要配置Global Tool Configuration 如果没有安装git,需下载安装,下载地址 二.jenkins发布donet core应用 1.配置 ...
- WPF触发器(Trigger) - DataTrigger
官方文档中对DataTrigger的介绍 Represents a trigger that applies property values or performs actions when the ...
- sql-向已有数据的表添加约束
语法: alter table 表名 with nocheck add constraint 约束名 约束类型 具体的约束说明 对表中现有的数据不做检查, 只对添加约束后再录入的数据进行检查. 例子: ...
- 怎样提供一个好的移动API接口服务/从零到一[开发篇]
引语:现在互联网那么热,你手里没几个APP都不好意思跟别人打招呼!但是,难道APP就是全能的神吗?答案是否定的,除了优雅的APP前端展示,其实核心还是服务器端.数据的保存.查询.消息的推送,无不是在服 ...
- Error: [ng:areq] Argument ‘AppCtrl’ is not a function, got undefined
今天把用ionic做一个案例,和ionic示例项目差不多,只是用requirejs分离了controller,但是一直报错 Error: [ng:areq] Argument ‘AppCtrl’ is ...
- MySQL 字符集utf8和utf-8的关系
目录 什么是字符集(character set) 校对规则(collation) ASCII码 Unicode国际化支持 UTF-8 utf8 utf8与utf8mb4的关系 超集 字符集设置 什么是 ...
- python中使用queue实现约瑟夫环(约瑟夫问题)求解
约瑟夫问题:是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围. 从编号为k的人开始报数,数到m的那个人出列:他的下一个人又从1开始报数,数到m的那个人又出列: 依 ...