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 带参有返回值方法 本文知识点:带参有返回值方法 说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进 ...
随机推荐
- shell脚本学习- 传递参数
跟着RUNOOB网站的教程学习的笔记 我们可以在执行shell脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n代表一个数字,1为执行脚本的第一参数,2为执行脚本的第二个参数,以此类推... 实 ...
- django.template.exceptions.TemplateDoesNotExist: login.html 错误处理
登陆Login界面时候报错 Internal Server Error: /login/ Traceback (most recent call last): File , in inner resp ...
- elasticsearch之hello(spring data整合)
1.书写pom.xml文件 <dependencies> <dependency> <groupId>org.springframework.data</gr ...
- 学习WPF——使用Font-Awesome图标字体(一)
一.运行效果图 二.图标字体文件下载 http://fontawesome.dashgame.com/(这个网址可以下载图标字体文件) http://www.fontawesome.com.cn/(这 ...
- 实现一个简单的C++协程库
之前看协程相关的东西时,曾一念而过想着怎么自己来实现一个给 C++ 用,但在保存现场恢复现场之类的细节上被自己的想法吓住,也没有深入去研究,后面一丢开就忘了.近来微博上看人在讨论怎么实现一个 user ...
- Redis 学习笔记(十二)Redis 复制功能详解 ----- (error) READONLY You can't write against a read only slave
Redis 复制(Replication)1. 复制介绍分布式数据库为了获取更大的存储容量和更高的并发访问量,会将原来集中式数据库中的数据分散存储到多个通过网络连接的数据存储节点上.Redis为了解决 ...
- Testing - 软件测试知识梳理 - 软件性能测试
软件性能测试的基本概念 软件的性能是软件的一种非功能特性,它关注的不是软件是否能够完成特定的功能,而是软件在完成该功能时展示出来的及时性. 软件性能的指标 响应时间:是指系统对请求作出响应的时间,并且 ...
- Java获取URL中的顶级域名domain的工具类
方式一: import java.net.MalformedURLException; import java.net.URL; import java.util.Arrays; import jav ...
- mysql 开发进阶篇系列 36 工具篇mysqlshow(数据库对象查看工具)
一.概述 mysqlshow客户端查找工具,能很快地查找存在哪些数据库,数据库中的表,表中的列或索引,和mysql客户端工具很类似,不过有些特性是mysql客户端工具所不具备的. mysqlshow的 ...
- Android生成二维码--拍照或从相册选取图片
拍照或从相册选择图片是我们日常开发中经常使用到的,可以说是必须掌握的东西.上一篇我介绍了如何生成自定义二维码<Android生成自定义二维码>,其中logo和代替黑色色块的图片都是写死的, ...