• Java基础——Java基础语法和使用


    小策:再长的路,一步步也能走完,再短的路,不迈开双脚也无法到达。

    安装好Eclipse,之后便是漫长的Java语言学习之路,坚持住。
    首先让我们了解一下Java语言的基础语法

    标识符

    自我们出生,父母便会给我们取名字
    同样的,编写Java语言也是一种创造
    所以Java中也有取名字这一行为,即命名

    命名,简单来说就是给Java类、对象、方法等取名
    Java标识符,也就是Java语言中的变量、常量、函数、语句块的名字,

    标识符组成

    • 由数字、字母、下划线、美元符号组成
    • 必须以字母、下划线、美元符号开头
    • 区分大小写、不规定长度
    • 不能是Java关键字保留字

    标识符约定

    • 类和接口

      • 每个单词首字母大写
    • 方法名

      • 开头首字母小写,其余单词首字母大写
    • 常量名

      • 全部大写,单词之间下划线隔开
    • 变量名

      • 首字符小写,大小混写。不用下划线、美元符号。

      判断

      标识符 判断 原因
      int 不能是关键字
      userName
      996ICU 不可以数字开头
      String 不能是关键字
      StudentOrder
      IP_HOST
      const 不能是保留字
      #123 ‘#’不属于标识符的组成

    数据类型

    我们出生后,便有性别、性格之分
    同样的,Java语言也有数据类型之分

    数据类型 是程序设计语言描述事物、对象的方法。

    Java数据类型:

    • 基本类型

      • 整数类型
        • byte
        • short
        • int
        • long
      • 浮点类型
        • double
        • float
      • 字符类型
        • char
      • 布尔类型
        • boolean
    • 引用类型

    整数类型

    用于表示没有小数部分的数值,可以为负数

    类型 存储需求 取值范围
    byte 1字节 -128~127
    short 2字节 -215 ~ 215-1
    int 4字节 -231 ~ 231-1
    long 8字节 -263 ~ 263-1

    浮点类型

    表示有小数部分的数值。

    类型 存储需求 取值范围
    float 4字节
    double 8字节

    字符类型

    表示单个字符

    • 2字节
    • 采用unicode编码,字符储存范围在 u0000 ~ uFFFF
    • 编码中的第一个字节与ASCII兼容

    布尔类型

    用来判定逻辑条件

    判定
    true
    false

    变量

    变量是在程序运行过程中其值可以被改变的量

    变量的声明

    数据类型 变量名[变量a,变量b,变量c...];

    //声明三个数据类型为int整形的变量
    //年龄age,长度len、尺寸size
    int age,len,size;
    

    变量的初始化

    声明一个变量时,通过赋值语句=对变量进行初始化

    //声明变量
    double price;
    //赋值
    price = 100.0;
    
    //声明并初始化
    double salary = 100.0;
    

    常量

    在程序运行过程中,值始终不变的量

    常量的定义

    使用关键字 final 定义常量
    final 数据类型 常量名称 = 值;

    //定义一个数据类型为int,值为9的常量
    final int TIME = 9;
    

    注意:常量被赋值后,不可改变

    final int a = 1;
    a = 3;

    运算符

    运算符 使用
    算数运算符 + - * / %
    自增运算符 ++
    自减运算符 --
    关系运算符 > >= == <= < !=
    逻辑运算符 && || !
    三元运算符 ?:
    赋值运算符 = += -= *= %=
    位运算符 & | ^
    字符串连接运算符 +
    instanceof比较 instanceof

    表达式

    符合一定语法规则的运算符操作数的序列

    • a
    • a+10
    • a+b*c/3
    • 10>3?"LEFT":"RIGHT";

    表达式的值

    操作数进行运算得到的结果

    表达式的类型

    表达式值的数据类型

    类型转换

    基本数据类型之间可以进行相互转换。

    隐式转换

    进行类型加宽转换时可以自动实现

    int n = 5;//4字节
    double f = n;//8字节
    

    强制转换

    进行类型收缩转换时转换必须进行显式转换

    double d = 3.14;//8字节
    int i = (int)d;  //4字节
    
    其他
    • byte,short, char之间不会相互转换,他们三者在计算时首先转换为 int 类型
    • 更多内容测试可以参考demo[1]

    三大流程

    顺序流程

    让程序按照我写的代码顺序一步步执行
    让代码变成我的乖宝宝

    最基本的控制流程
    按照语句顺序依次执行

    int a = 1;
    int b = 2;
    int c;
    c = a + b;
    System.out.print("a+b="c);
    

    a+b=3

    分支流程

    当我想在阴天吃火锅,晴天吃雪糕的时候,我得进行判断
    于是有了分支流程

    部分程序可根据表达式的值,有选择的执行

    if else

    if else 会进行表达式值的判断

    • true 执行true包裹的{代码},执行if外的语句
    • false 执行之后的if判断 || 执行if外的语句
    if(true){
          //执行的代码
    }else if(false){
          //不执行的代码
    }else{
          //如果判断到这,执行
          //判断不到,不执行
    }
    

    switch case

    多分支条件语句,可以和嵌套的if语句相互转换
    但是switch语句更直观

    switch语句比较特殊,分俩种情况

    • 加break;
      switch(表达式/变量标识符){
             case 常量1:
                   //代码块1
                   break;
             case 常量2:
                   //代码块2
                   break;
             default:
                   //代码块3
                   break;
      }
      
      • 当switch内容和常量1相同时,只执行代码块1
      • 当switch内容和常量1不相同,但和常量2相同时,只执行代码块2
      • 当switch内容和常量1、2都不相同时,执行代码块3
    • 不加break;
      switch(表达式/变量标识符){
             case 常量1:
                   //代码块1
             case 常量2:
                   //代码块2
             default:
                   //代码块3
      }
      
      • 当switch内容和常量1相同时,执行代码块1、2、3
      • 当switch内容和常量1不相同,但和常量2相同时,执行代码块2、3
      • 当switch内容和常量1、2都不相同时,执行代码块3

    循环流程

    当我想重复做某件事情,但是次数有我自己的要求时
    我可以用循环语句来做

    根据条件,反复执行语句、操作。

    完整的循环语句包括四部分

    • 初始化部分:设置循环初始条件
    • 迭代部分:更新循环控制条件
    • 终止部分:退出循环的条件判断
    • 循环体部分:循环执行的代码块

    同时可以添加break进行循环的强行终止。V

    for循环

    非常普通的一个完整的循环语句
    迭代部分可以根据自己的需求进行设计,会产生别样的用处

    //for(初始化部分;终止部分;迭代部分){
    //循环体部分;
    //}
    for(int i = 0;i < 10;i++){
          System.out.print(i);
    }
    

    0123456789

    while循环

    while循环将初始化部分放在循环体外
    先判断后执行

    //while(循环条件表达式){
    //循环体
    //}
    int a = 10;
    while(a>0){
          System.out.print(a+" ");
          a--;
    }
    

    10 9 8 7 6 5 4 3 2 1

    do while循环

    和while有着异曲同工之妙
    先执行后判断

    //do{
    //循环体
    //}while(循环条件表达式);
    int i = 0;
    do{
          System.out.print(i++);
    }while(i<10);
    

    0123456789

    增强型for循环

    增强型for循环适用于比较复杂的数据类型组合
    可以遍历指定数组集合的值

    //for(类型 变量名:数组/集合){
    //循环体
    //}
    int[] a = new int[]{1,2,3};
    for(int indexA:a){
          System.out.println(indexA);
    }
    
    1
    2
    3
    

    输入与输出

    Java的输入、输出和C语言都是通过流来实现的。

    输入设备System.in

    Java中的输入需要使用Scanner的对象读取来自System.in的输入
    使用时须在源文件的第一行导入:import java.util.Scanner

    Scanner s = new Scanner(System.in);
    int i = s.nextInt();
    System.out.print(i);
    

    //您输入的数

    Scanner的方法总结:

    返回值 方法
    String nextLine()
    boolean nextBoolean()
    short nextShort()
    int nextInt()
    long nextLong()
    double nextDouble()

    输出设备System.out

    java的输出不用借助其他类或对象
    可以直接通过System.out进行输出。

    总结:

    输出 控制台显示
    System.out.print(); 输出内容,不换行
    System.out.println(); 输出内容,换行
    System.out.printf(); 输出内容,不换行,必须得写明输出类型

    博客相关java项目:查看Github项目
    对应github项目:Demo2
    导入项目的方法: Java基础——Java如何导入本地项目


    1. https://i.cnblogs.com/posts/edit;postId=13310610 ↩︎

  • 相关阅读:
    使用Apache搭建个人用户主页
    Linux搭建ftp服务器,并建立本地用户与虚拟用户
    Linux搭建FTP服务器,并建立匿名用户登录
    用虚拟机安装RHEL7
    基于OpenStack构建企业私有云(5)Neutron
    基于OpenStack构建企业私有云(3)Glance
    基于OpenStack构建企业私有云(1)实验环境准备
    基于OpenStack构建企业私有云(2)KeyStone
    python--003--百分号字符串拼接、format
    python--002--数据类型(set)
  • 原文地址:https://www.cnblogs.com/occlive/p/13310610.html
Copyright © 2020-2023  润新知