注释

  单行注释:       //  注释内容

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

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

数据类型

  整型

    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. xml to xsd ; xsd to xml

    xml to xsd 工具网站 https://www.freeformatter.com/xsd-generator.html 示例xml <?xml version="1.0&qu ...

  2. div辅助线【完整版】

    ## <html> <head> <link rel="stylesheet" type="https://cdn.bootcss.com/ ...

  3. day11_雷神_udp、多进程等

    day11 1.网络编程 1.1 udp协议 client端 import json import socket server_addr = ('127.0.0.1',9090) sk = socke ...

  4. Java RMI 使用例子

    1.创建协议接口(UserService) /** * */ package com.junge.demo.rmi.protocol.service; import java.io.Serializa ...

  5. Batch Normalization--介绍

    思考 YJango的前馈神经网络--代码LV3的数据预处理中提到过:在数据预处理阶段,数据会被标准化(减掉平均值.除以标准差),以降低不同样本间的差异性,使建模变得相对简单. 我们又知道神经网络中的每 ...

  6. 记录使用 Cake 进行构建并制作 nuget 包

    书接上一回(https://www.cnblogs.com/h82258652/p/4898983.html)?[手动狗头] 前段时间折腾了一下,总算是把我自己的图片缓存控件(https://gith ...

  7. GET请求Referer限制绕过总结

    作者:Vulkey_Chen 原文来自:GET请求Referer限制绕过总结 前言 在做测试的时候会遇见这样几个漏洞场景: JSONP跨域劫持 反射XSS GET请求类型攻击 但是,在相对安全的情况下 ...

  8. MySQL 数据类型说明解释

    在 MySQL 中,有三种主要的类型:Text(文本).Number(数字)和 Date/Time(日期/时间)类型. Text 类型: 数据类型 描述 CHAR(size) 保存固定长度的字符串(可 ...

  9. 小程序基础知识点讲解-WXML + WXSS + JS,生命周期

    小程序基础 小程序官方地址,小程序开发者工具,点击此处下载.在微信小程序中有一个配置文件project.config.json,此文件可以让开发者在不同设备中进行开发. 微信小程序共支持5种文件,wx ...

  10. HashMap的源码分析

    hashMap的底层实现是 数组+链表 的数据结构,数组是一个Entry<K,V>[] 的键值对对象数组,在数组的每个索引上存储的是包含Entry的节点对象,每个Entry对象是一个单链表 ...