首页 > 编程语言 >javaSE基础-语法基础

javaSE基础-语法基础

时间:2022-11-28 21:25:49浏览次数:34  
标签:语句 case Java int 基础 语法 switch javaSE public

基础语法

Java语言出现于1991年,JDK1.0版本正式发布于1995年

Java之父:James Gosling(詹姆斯•高斯林)

Java是一种面向对象的编程语言

Java语言是一种编译解释型语言

Java语言是基于Java虚拟机运行,因此Java语言可以实现跨平台

Java的GC垃圾回收器

注释

注释就是说明解释程序的文字,提高代码的阅读性。

注释格式:

  • 单行注释://注释文字
  • 多行注释: /* 注释文字 */
  • 文档注释: /** 注释文字 */

标识符

java所有的组成部分都需要名字,类名、变量名、以及方法名都被称为标识符

java标识符注意事项:

  • 所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线()开始
  • 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下划线()或数字的任何字符组合
  • 关键字不能用作标识符
  • 标识符是大小写敏感的
  • 合法标识符举例:age、$salary、_value、__1_value
  • 非法标识符举例:123abc、-salary

关键字

关键字:被Java语言赋予了特殊含义的单词

关键字中所有字母都小写

基础语法

数据类型

Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间

Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。

数据类型分类

数据类型

数值类型大小

数据类型-2

注意:

long num = 12345254245L
float f = 23242.56F

常量与变量

常量

常量就是一个固定值,不能改变的量。在java中用 final 标记,声明方式和变量类似

final double PI = 3.1415927;

通常常量名都是使用大写字母表示。

常量分类

1、整数常量。所有整数

2、小数常量。所有小数

3、布尔(boolean)型常量。较为特有,只有两个数值。true false。

4、字符常量。将一个数字字母或者符号用单引号( ' ' )标识。

5、字符串常量。将一个或者多个字符用双引号(“ ”)标识。

6、null常量。只有一个数值就是:null.

对于整数:有四种表现形式
二进制:0,1 ,满2进1.
八进制:0-7 ,满8进1. 用0开头表示。
十进制:0-9 ,满10进1.
十六进制:0-9,A-F,满16进1. 用0x开头表示。如下

int decimal = 100;
int octal = 0144;
int hexa = 0x64;

变量

变量类型:

  • 局部变量:类的方法中的变量
  • 实例变量:独立于方法之外的变量,没有使用static修饰
  • 类变量:独立于方法之外的变量,用static修饰
public class VariableTest{
    static int num=0;  //类变量
    String str = "Hello";  // 实例变量
    
    public void method(){
        int a=0;  // 局部变量
    }
}

命名规范

类名
a)类的作用英文单词组成(见名知意)
b)类名首字母要大写,如果有多个单词构成则每个单词的首字母都大写(大小写混排)
c)类名可以由“字母”、“数字”、“_”和“$”组成,但是不能够以数字开头
d)类名允许使用中文,但是不提倡使用

包名:多单词组成时所有字母都小写。

xxxyyyzzz

类名接口名:多单词组成时,所有单词的首字母大写。

XxxYyyZzz

变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。

xxxYyyZzz

常量名:所有字母都大写。多单词时每个单词用下划线连接。

XXX_YYY_ZZZ

运算符

运算符

特殊符号说明

&&:
和&运算结果是一样的,但是运算过程有点小区别。
&:无论左边的运算结果是什么,右边都参与运算
&&:当左边为false时,右边不参与运算
||:
和|运算结果是一样的,但是运算过程有点小区别。
|:无论左边的运算结果是什么,右边都参与运算
||:当左边为true时,右边不参与运算

位运算符

按位运算符

>>>:无符号右移位运算符

3<<1=6  //相当于 3*2^1=6
24>>3=3 //相当于 24/(2^3)=3
k >>>3  //右移n位(二进制右面去掉n位,左边补上个0)
a=a^b^b //异或两次同一个值等于原来的数

// -9 : 11111111 11111111 11111111 11110111.
// 9 : 00000000 00000000 00000000 00001001.
// 有符号右移
// -9>>3: [111]11111111 11111111 11111111 11110.
// 9>>3: [000]00000000 00000000 00000000 00001
// 无符号右移
// -9>>>3:[000]11111111 11111111 11111111 11110.
// 9>>>3: [000]00000000 00000000 00000000 00001

类型转换

  • 自动类型转换(也叫隐式类型转换,低转高)
  • 强制类型转换(也叫显式类型转换,高转低)

表达式的数据类型自动提升

所有的byte型、short型和char的值将被提升到int型。如下

//自动类型转换
byte b = 3;
int x = 4;
x = x + b;//b会自动提升为int类型进行运算。

//强制类型转换
byte b = 3;
b = (byte)(b+4);//强制类型转换,强制将b+4的结果转换为byte类型,再赋值给b。

System.out.println(‘a’)   //结果 a
System.out.println(’a’+1) //结果 98      

short s=3;
s+=4;  		//赋值运算,底层自动做了强转动作,自动完成
// s=s+4;   //算术运算,会丢失精度,需强转,否则编译出错

转义序列

前面有反斜杠(\)的字符代表转义字符,它对编译器来说是有特殊含义的。

转义序列 描述
\t 在文中该处插入一个tab键
\b 在文中该处插入一个后退键
\n 在文中该处换行
\r 在文中该处插入回车
\f 在文中该处插入换页符
' 在文中该处插入单引号
" 在文中该处插入双引号
\ 在文中该处插入反斜杠

流程控制

流程控制语句用来控制程序的执行流程。

基本结构分类

  • 顺序结构
  • 选择结构
  • 循环结构

顺序结构

程序默认的结构,自上而下的执行代码

选择结构

if 单选择结构

一个if语句包含一个布尔表达式和一条或多条语句

if(x<20){
    System.out.print("这是 if 语句");
}

if - else 双选择结构

if 语句后面可以跟 else 语句,当if语句的布尔表达式值为 false 时,else 语句块会被执行。

int x=20;
if(x<20){
    System.out.print("这是 if 语句");
}else{
    System.out.print("这是 else 语句");
}

if...else if...else 多选择结构

if 语句后面可以跟 else if…else 语句,这种语句可以检测到多种可能的情况。public class Test{

public class Test{
    
    public static void main(String []args){
        int x=20;
        
        if(x==10){
            System.out.print("value of X is 10");
        }else if(x==20){
            System.out.print("value of X is 20");
        }else if(x==30){
            System.out.print("value of X is 30");
        }else{
            System.out.print("这是 else 语句");
        }
    }
}

switch结构

switch 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。

switch(expression){
    case value :
       //语句
       break; //可选
    case value :
       //语句
       break; //可选
    //你可以有任意数量的case语句
    default : //可选
       //语句
}

switch 语句有如下规则:

  • switch 语句中的变量类型只能为 byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。
  • switch 语句可以拥有多个 case 语句。每个 case 后面跟一个要比较的值和冒号。
  • case 语句中的值的数据类型必须与变量的数据类型相同,而且只能是常量或者字面常量。
  • 当变量的值与 case 语句的值相等时,那么 case 语句之后的语句开始执行,直到break语句出现才会跳出 switch 语句。
  • 当遇到 break 语句时,switch 语句终止。程序跳转到 switch 语句后面的语句执行。case 语句不必须要包含break 语句。如果没有 break 语句出现,程序会继续执行下一条 case 语句,直到出现 break 语句。
  • switch 语句可以包含一个 default 分支,该分支必须是 switch 语句的最后一个分支。default 在没有 case 语句的值和变量值相等的时候执行。default 分支不需要 break 语句。

循环结构

Java中有三种主要的循环结构:

  • while循环
  • do…while循环
  • for循环

while循环

public class Test{
    public static void main(String []args){
        int i=0;
        while(i<10){
            System.out.println("Value of i:" + i);
            i++;
        }
    }
}

do…while循环

public class Test{
    
    public static void main(String []args){
        int i=0;
        do{
            System.out.println("value of i:" + i);
            i++;
        }while(i<10);
    }
}

注:do…while循环至少会执行一次

for循环

for循环执行的次数是在执行前就确定的。

public class Test{
    
    public static void main(String[] args){
        for(int i=0; i<10; i++){
            System.out.println("value of i:" + i);
        }
    }
}

增强for循环

主要用于数组的增强型for循环。

public class Test{
    
    public static void main(String []args){
        int [] numbers = {1,2,3,4,5};
        
        for(int i:numbers){
            System.out.print(i + "\t");
        }
    }
}

break关键字

break主要用在循环语句或者switch语句中,用来跳出整个语句块

public class Test{
    
    public static void main(String[] args){
        int[] numbers = {1,2,3,4,5};
        for(int i: numbers){
            if(i == 3){
                break;
            }
            System.out.println(x);
        }
    }
}
//结果
1
2

continue关键字

continue适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。

public class Test{
    
    public static void main(String[] args){
        int[] numbers = {1,2,3,4,5};
        for(int i: numbers){
            if(i == 3){
                continue;
            }
            System.out.println(i);
        }
    }
}
//结果
1
2
4
5

标签:语句,case,Java,int,基础,语法,switch,javaSE,public
From: https://www.cnblogs.com/bione/p/16864587.html

相关文章

  • javaSE基础-目录导航
    目录导航+语法基础+数组+面向对象(OOP)-接口-抽象-内部类+异常+集合-泛型+其他常用类-时期时间-比较器-字符串+IO流+多线程+网络编程+......
  • java泛型机制(基础知识总结篇)
    泛型概述泛型使用的必要性泛型类泛型接口泛型对象引用传递的解决方案泛型方法泛型的简单应用---本文中将介绍泛型的基础知识以及简单应用,后面还计划......
  • SRS4.0(环境搭建及基础使用演示)
     srs安装​​官网地址​​,下载srs4.0并上传到服务器中1根目录下创建srs文件夹,并将下载的文件上传至该目录下mkdirsrs编辑2.解压文件unzip srs-4.0release编辑3.按照官方......
  • 想体验ES6语法?那用gulp+Babel来搭建ES6环境吧~
    参考:​​ES6初体验——gulp+Babel搭建ES6环境​​​​gulp-load-plugins模块化管理插件​​那至于怎么使用gulp构建工具这一问题这里就略过咯(可以参考我之前发过的......
  • TCP/IP协议——计算机网络基础
    TCP/IP协议核心主旨计算机之间是如何有效地进行连接和沟通,就是由于网络协议来定义和发送的。网络基本模型A机器协议B机器应用层HTTP/FTP应用层传输层T......
  • js基础笔记学习226练习2之1
    全选和反选 checked控制选中......
  • 语法糖
          在方法的参数和返回值上,可利用反射获取泛型信息                               ......
  • Mysql 基础概念
      一、数据库的基本概念1、数据库的组成2、数据库的管理系统(DBMS)3、数据库系统(DBS) 二、主流数据库 三、关系数据库 四、非关系数据库 五、关系数据库和非关......
  • mysql基础语句
       一、mysql中6中常见的的约束/规则主键约束(primarykey)外键约束(foreignkey):如果同一个属性字段x在表一中数主键,而在表二中不是主主键,则字段称为表二的外键。非......
  • Linux基础第三章:Linux软件安装及yum本地库创建
    一、Linux软件安装1、Rpm包安装2、yum仓库安装  二、yum本地库建立 一、Linux软件安装软件安装共2种安装方式,通过rpm包安装或通过yum仓库库安装。1、Rpm包安装......