注释

  单行注释:       //  注释内容

  多行注释:    /* 注释内容 */

  文档注释:  /**   注释内容   */

数据类型

  整型

    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基本语法的更多相关文章

  1. 075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现

    075 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 07 综合案例-数组移位-主方法功能4的实现 本文知识点:综合案例-数组移位-主方法功能4的实现 说明:因为 ...

  2. 074 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 06 综合案例-数组移位-主方法功能3的实现

    074 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 06 综合案例-数组移位-主方法功能3的实现 本文知识点:综合案例-数组移位-主方法功能3的实现 说明:因为 ...

  3. 073 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 05 综合案例-数组移位-主方法功能1和2的实现

    073 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 05 综合案例-数组移位-主方法功能1和2的实现 本文知识点:综合案例-数组移位-主方法功能1和2的实现 说 ...

  4. 072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法

    072 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 04 综合案例-数组移位-在指定位置处插入数据方法 本文知识点:综合案例-数组移位-在指定位置处插入数据方法 ...

  5. 071 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 03 综合案例-数组移位-显示数组当中所有元素的的方法

    071 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 03 综合案例-数组移位-显示数组当中所有元素的的方法 本文知识点:综合案例-数组移位-显示数组当中所有元素 ...

  6. 070 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 02 综合案例-数组移位-从键盘接收数据

    070 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 02 综合案例-数组移位-从键盘接收数据 本文知识点:综合案例-数组移位-从键盘接收数据 说明:因为时间紧张 ...

  7. 069 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 01 综合案例-数组移位-案例需求

    069 01 Android 零基础入门 01 Java基础语法 09 综合案例-数组移位 01 综合案例-数组移位-案例需求 本文知识点:综合案例-数组移位-案例需求 说明:因为时间紧张,本人写博客 ...

  8. 068 01 Android 零基础入门 01 Java基础语法 08 Java方法 06 参数传递问题——基本数据类型传值

    068 01 Android 零基础入门 01 Java基础语法 08 Java方法 06 参数传递问题--基本数据类型传值 本文知识点:参数传递问题--基本数据类型传值 说明:因为时间紧张,本人写博 ...

  9. 067 01 Android 零基础入门 01 Java基础语法 08 Java方法 05 数组作为方法参数

    067 01 Android 零基础入门 01 Java基础语法 08 Java方法 05 数组作为方法参数 本文知识点:数组作为方法参数 说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进 ...

  10. 066 01 Android 零基础入门 01 Java基础语法 08 Java方法 02 带参有返回值方法

    066 01 Android 零基础入门 01 Java基础语法 08 Java方法 04 带参有返回值方法 本文知识点:带参有返回值方法 说明:因为时间紧张,本人写博客过程中只是对知识点的关键步骤进 ...

随机推荐

  1. PMP:7.项目成本管理

    内容中包含 base64string 图片造成字符过多,拒绝显示

  2. day_2安装Python解释器和pycharm

    首先我们复习一下昨天的内容 ···重点 1:进制转换:二进制 与 十六进制 1111  0101 1010 转换为 f5a 2:内存分布:堆区 和 栈区 计算机的原理: 控制器 运算器 存储器 inp ...

  3. nginx反向代理mysql及负载

    下载地址: http://nginx.org/packages/mainline/centos/7/x86_64/RPMS/nginx-1.15.9-1.el7_4.ngx.x86_64.rpm 安装 ...

  4. Android退出所有Activity最优雅的方式

    关于退出所有Activity,目前网上比较流行的方式大概有以下几种: ① 使用ActivityManager的方式: ② 自定义一个Activity集合类的方式: ③ 通过发送广播的方式: ④ 通过杀 ...

  5. kill 结束进程

    kill 支持的信号 kill -1 重启进程 kill -9 终止进程 pkill 和 killall 的区别在于pkill 可以踢终端用户 pkill  -9  -t tty1

  6. OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 8.仪表盘 Dashboard(horizon)安装配置

    仪表盘Dashboard(horizon)是一个web接口,使得云平台管理员以及用户可以管理不同的Openstack资源以及服务.这个部署示例使用的是 Apache Web 服务器. 节点配置信息说明 ...

  7. C#基础-gc算法

    众所周知,c++是需要程序员手动管理内存的,然而手动释放内存很容易被程序员遗漏,从而导致资源浪费或内存泄露.为解决这个问题,垃圾回收器诞生了,代替程序员自动管理内存的释放.至于gc算法则是垃圾回收器清 ...

  8. linux中Java项目占用cpu、内存过高时的排查经历

    一.使用top命令查看占用高资源的java项目的进程ID(pid): top 二.查看该进程中的线程所占用资源的情况:top -Hp pid 三.查看该线程对应的16进制:printf %x 1112 ...

  9. 排序算法系列:插入排序算法JAVA版(靠谱、清晰、真实、可用、不罗嗦版)

    在网上搜索算法的博客,发现一个比较悲剧的现象非常普遍: 原理讲不清,混乱 啰嗦 图和文对不上 不可用,甚至代码还出错 我总结一个清晰不罗嗦版: 原理: 和选择排序类似的是也分成“已排序”部分,和“未排 ...

  10. 通过清华大学镜像下载Android源码并编译源码

    之前看源码都是在Windows下用SourceInsight看,虽然达到了研究源码的效果,但终究还是有遗憾...趁着周末,准备在Ubuntu虚拟机上下载编译源码. 之前下源码时,有了解一些Androi ...