Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Java的基本语法。

Java的基本语法。

作者头像
7537367
修改于 2020-07-28 06:22:52
修改于 2020-07-28 06:22:52
5450
举报
文章被收录于专栏:linux基础linux基础

一、标识符和关键字

标识符

在java语言中,用来标志类名、对象名、变量名、方法名、类型名、数组名、包名的有效字符序列,称为“标识符”;

标识符由字母、数字、下划线、美元符号组成,且第一个字符不能是数字;

java语言区分大小写;

标志符命名规则:类名首字母大写,变量名和方法名采用驼峰标志法,常量全大写,多个单词之间用“_”隔开,包名全小写;

关键字

在java语言中,有一些专门的词汇已经被赋予了特殊的含义,不能再使用这些词汇来命名标识符,这些专有词汇,称为“关键字”;

java有50个关键字和3个保留字,均不能用来命名标识符;

abstract  boolean   break  byte  case    catch   char

class    const   continue   default   do   double     elseenum

extends   final   finally    float   for    goto     if      implements

import    instanceof   int    interface   long   native  new   package

private   protected   public   return   short    static   strictfp      super

switch    synchronized    this     throw   throw    stransient   try    void

volatile       while      

true、false、null不是关键字,是保留字,但是仍不能用来命名标识符,保留字是java预留的关键字,在以后的升级版本中可能会作为关键字;想了解更多加QQ群764261140

二、基本数据类型

  1. 整数类型(int为默认类型)

  2. 浮点类型(double为默认类型)

在给float类型的变量赋值时,如果赋的值有小数部分则一定要在末尾加上“F”或“f”;

  3. 字符类型(2字节)

char ch = 'a';

有些字符不能通过键盘输入到程序当中,这时就需要使用到转义字符;

4. 布尔类型(1字节)

boolean flag = true;

5. 默认值

数值变量:0;

字符变量:‘\0’;

布尔变量:false;

引用数据类型:null;

6. 不同数据类型之间的转换

自动类型转换(低 到 高)

强制类型转换(高 到 低)

publicclass Test003 {

    publicstaticvoid main(String[] args) {

        byteb = 100;

        inti = 22;

        floatf = 78.98f;

        intres = b + i + (int)f;//此处对f使用了强制类型转换(int)f,转换后的值为78System.out.println("res: "+res);//res: 200    }

}

三、运算符与表达式想了解更多加QQ群764261140

  1. 算术运算符

publicclass Test003 {

    publicstaticvoid main(String[] args) {

        inti = 5;

        System.out.println(0/i);//0System.out.println(0%i);//0System.out.println(i/0);//除数不能为零,报异常java.lang.ArithmeticExceptionSystem.out.println(i%0);//除数不能为零,报异常java.lang.ArithmeticException    }

}

  2. 赋值运算符

  3. 自增自减运算符(++,--)

publicclass Test003 {

    publicstaticvoid main(String[] args) {

        inti = 5;

        System.out.println(i++);//5System.out.println(++i);//7System.out.println(i);//7System.out.println(--i);//6System.out.println(i--);//6System.out.println(i);//5    }

}

  4. 关系运算符

  5. 逻辑运算符

publicclass Test003 {

    publicstaticvoid main(String[] args) {

        booleant =true;

        booleanf =false;

        System.out.println(t && f);//false,短路与运算符,若运算符左侧为false则不计算右侧的表达式System.out.println(t || f);//true,短路或运算符,若运算符左侧为true则不计算右侧的表达式System.out.println(t & f);//false,与运算符,不管左侧是否为false都要计算右侧的表达式System.out.println(t | f);//true,或运算符,不管左侧是否为true都要计算右侧的表达式System.out.println(t ^ f);//true,异或运算符,只要左右两侧不相同则为true,反之为falseSystem.out.println(!f);//true,取反运算符    }

}

  6. 位运算符

publicclass Test003 {

    publicstaticvoid main(String[] args) {

        //在位运算符中1相当于true,0相当于falseintb1 = 6;//二进制为00000000 00000000 00000000 00000110intb2 = 11;//二进制为00000000 00000000 00000000 00001011System.out.println(b1 & b2);//按位与运算符,二进制为00000000 00000000 00000000 00000010,结果为2System.out.println(b1 | b2);//按位或运算符,二进制为00000000 00000000 00000000 00001111,结果为15System.out.println(b1 ^ b2);//按位异或运算符,二进制为00000000 00000000 00000000 00001101,结果为13System.out.println(~b1);//按位取反运算符,二进制为11111111 11111111 11111111 11111001,结果为-7System.out.println(b1 << 2);//左移位运算符,二进制为00000000 00000000 00000000 00011000,结果为24intb3 = -14;//二进制为11111111 11111111 11111111 11110010System.out.println(b3 >> 2);//带符号右移位运算符,二进制为11111111 11111111 11111111 11111100,结果为-4System.out.println(b3 >>> 2);//无符号右移位运算符,二进制为00111111 11111111 11111111 11111100,结果为1073741820    }

}

  7. 三元运算符

publicclass Test003 {

    publicstaticvoid main(String[] args) {

        inta = 1;

        intb = 2;

        intc = 4;

        intres = c==a+b?++a:c>a+b?++b:++c;//三元运算符 (表达式)?(值1):(值2),若表达式为true则取值1,反之取值2System.out.println(res);//++b,结果为3    }

}

8. 运算符优先级

四、数组

  1. 一维数组

publicclass Test003 {

    publicstaticvoid main(String[] args) {

        int[] i;//声明一个整型的一维数组变量intii[];//声明一个整型的一维数组变量i =newint[5];//创建一个长度为5的一维数组对象,并将变量i指向该对象float[] f =newfloat[5];//直接创建一个长度为5的单精度浮点型一维数组对象,并将变量f指向该对象double[] d = {1, 2, 3.4, 4.5};//直接初始化一个一维数组元素       

        System.out.println(d[3]);//通过数组下标来获取数组内的元素,数组下标从0开始,结果为4.5System.out.println(f[0]);//当创建出一个数组对象时,该对象内的数组元素为该数据类型的默认值,所以此处结果为0.0

        //System.out.println(i[5]);    //当通过数组下标来获取数组内元素时,[]内的值>=数组长度则报异常java.lang.ArrayIndexOutOfBoundsException(数组下标越界)

        //System.out.println(ii[0]);    //若一个数组变量只声明而未指向某一个具体的数组对象时,编译出错System.out.println(d.length);//得到该数组的长度,结果为4    }

}

  2. 二维数组

publicclass Test003 {

    publicstaticvoid main(String[] args) {

        int[][] i;//声明一个整型的二维数组变量intii[][];//声明一个整型的二维数组变量int[] iii[];//声明一个整型的二维数组变量i =newint[5][2];//创建一个长度为5的二维数组对象,并将变量i指向该对象float[][] f =newfloat[5][2];//直接创建一个长度为5的单精度浮点型二维数组对象,并将变量f指向该对象double[][] d = {{1}, {2,3}, {4,5,6}, {7,8,9,10}};//直接初始化一个二维数组元素       

        System.out.println(d[3][1]);//通过数组下标来获取数组内的元素,数组下标从0开始,结果为8System.out.println(f[0][0]);//当创建出二个数组对象时,该对象内的数组元素为该数据类型的默认值,所以此处结果为0.0

        //System.out.println(i[5][0]);    //当通过数组下标来获取数组内元素时,[]内的值>=数组长度则报异常java.lang.ArrayIndexOutOfBoundsException(数组下标越界)

        //System.out.println(ii[0][0]);    //若一个数组变量只声明而未指向某一个具体的数组对象时,编译出错System.out.println(d.length);//得到该数组的长度,结果为4System.out.println(d[2].length);//得到二位数组内的下标为2的那个一维数组的长度    }

}

五、流程控制语句(if,switch,for,while,do...while)

  1. 条件分支语句

publicclass Test003 {

    publicstaticvoid main(String[] args) {

        int[] score =newint[5];

        score[0] = -7;

        score[1] = 65;

        score[2] = 80;

        score[3] = 90;

        score[4] = 59;

        for(inti=0; i

            if(score[i]>=0 && score[i]<60) {

                System.out.println("不及格");

            }elseif(score[i]>=60 && score[i]<80) {

                System.out.println("及格");

            }elseif(score[i]>=80 && score[i]<90) {

                System.out.println("良");

            }elseif(score[i]>=90 && score[i]<100) {

                System.out.println("优");

            }else {

                System.out.println("成绩异常");

            }

        }

        charch = 'a';

        switch(ch) {//switch括号内只支持 byte,short,int,char,enum五种数据类型,但是JDK1.7版本增加了String类型,所以相对于JDK1.7而言就是六种了case'A'://case为switch语句的入口,break为出口,从入口开始执行,直到遇到出口或代码执行完毕才结束case'a':

                System.out.println("优");

                break;

            case'B':

            case'b':

                System.out.println("良");

                break;

            case'C':

            case'c':

                System.out.println("及格");

                break;

            default://若上述条件均不匹配,则进default开始执行语句System.out.println("不及格");

        }

    }

}

  2. 循环语句

publicclass Test003 {

    publicstaticvoid main(String[] args) {

        intres = 0;

        out:    //out是一个标号,告诉java从哪里开始执行程序for(inti=1; i<=10; i++) {

            if(i==3)continueout;//continue终止本次循环,执行下次循环if(i==5)breakout;//break跳出循环res = res + i;

        }

        System.out.println(res);    //结果为1+2+4=7intres2 = 0;

        inti = 1;

        in:

        do{

            if(i==3)continuein;//continue终止本次循环,执行下次循环if(i==5)breakin;//break跳出循环res2 = res2 + i;

            i++;

        }while(i<=10);

        System.out.println(res2);

    }

}

想了解更多加QQ群764261140

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Java IDEA Debug&进制&二维数组
是供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于追踪程序执行过程来调试程序。
Lansonli
2021/10/09
7640
Java基础知识及细节之进制
​ 公式:除基取余使用源数据,不断的除以基数(几进制,基数就是几)得到余数,直到商为0,再将余数倒着拼起来即可。
小炜同学
2022/08/20
4040
Java基础知识及细节之进制
Java基础 (上卷)-数组
需求:现在需要统计某公司员工的工资情况,例如计算平均工资、找到最高工资等。假设该公司有80名员工,用前面所学的知识,程序首先需要声明80个变量来分别记住每位员工的工资,然后在进行操作,这样做会显得很麻烦。为了解决这种问题,Java就提供了数组供我们使用。
软件小生活
2021/08/16
3270
Java基础篇Java基础语法
注释:就是对代码的解释和说明。其目的是让人们能够更加轻松地了解代码。为代码添加注释,是十分必须要的,它不影响程序的编译和运行。
程序员Leo
2023/08/07
7120
Java基础篇Java基础语法
Java基础全面解析——Java语言基础
高级编程语言的组成:关键字、标识符、注释、常量与变量、语句、函数、数组,下面一一介绍各个组成元素。 a)  关键字 i.  定义:关键字是一些英文单词,但在java中有特殊含义,自定义的变量不能和关键字重名。 ii.注:关键字一般都小写。 b)  标识符 i.  定义:标识符就是自定义的变量名 ii.规则:26个字母大小写、0-9、_、$组成 iii.注1:不能以数字开头 iv.注2:不能含有关键字 c)  注释 i.  注释在编译时全被删除。 ii.作用:注解程序和调试程序。 iii.    注释能用JD
大闲人柴毛毛
2018/03/09
1.1K0
Java基础入门教程-基础语法
Java基础知识、web开发用到的前端知识以及常用的各种框架和中间件,涵盖计算机基础、数据库、部署工具以及代码风格和规范的全栈知识体系
哈德森
2023/04/07
9190
Java基础入门教程-基础语法
Java程序设计(基础)- 基本语法
标识符:给接口(interface)、变量(variables)、类(class)和方法(method)命名。
全栈程序员站长
2022/06/30
3290
Java程序设计(基础)- 基本语法
Java 基础语法知识 - 万丈高楼平地起
为满足移动端和PC端的双重阅读体验,以及文章质量的保证,开始重构的以及新写的文章都会基于 “语雀” 平台编写,公众号会同步刚发布的文章,但随后的修改或者更新只会在语雀中维护。👉 点击底部左下角 “阅读原文” 即可跳转到文章最新页面!理想二旬不止@BWH_Steven 文章过长,很可能有一些排版问题,后面会把每一篇的篇幅缩短哈,这样更加适合阅读,微信这边推送后无法修改,所以会在语雀同步更新~ 表格等有一些多,PC端、 Pad 端阅读更佳。 基础非常重要哈!!! 0. 引言 package cn.idea
BWH_Steven
2021/09/22
8640
Java 基础语法知识 - 万丈高楼平地起
Java基础语法总结
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Noneplus
2019/09/24
5370
Java基础语法总结
Java基础
关键字:Java中的关键字是对编译器有特殊意义的词。比如class是用来定义类的关键字,编译器遇到class就知道这是定义了一个类
Breeze.
2022/09/16
1.1K0
Java基础
未禾的C语言总结
**************************************************************************************************************************************************************************************************************** 操作符解释:     1,算术操作符:         ‘+’、‘-’、‘*’、‘/’、‘%’         %取模操作符只能用于整数,         /除法操作符,两个操作数均是整数时为整数除法,有一个是浮点数则执行浮点数除法。         如:int a = 6/5;//->a==1             double b = 6/5;//->b==1.000000             double c = 6.0/5//->c==1.200000,即实际运算与定义的储存类型无关     2,移位操作符         左移‘<<’、右移‘>>’         左移操作符:             如:   int a=2;                 int b = a << 1;//a向左移动一位,结果存入变量b中,结果b为4             正整数2在内存中存放的补码为:                                00000000000000000000000000000010             向左移动一位,左边的首位0去掉,右边的缺一位补0:00000000000000000000000000000100 ->4(十进制)         右移操作符:             右移时分为算数右移和逻辑右移。             算数右移:右边丢弃,左边补符号位。             逻辑右移:右边丢弃,左边补0。             如:int a = -10;                    int b = a >> 1;//a向右移动一位,结果存入变量b中             正整数10在内存中的补码为11111111111111111111111111110110//若为负数则原码与补码不同。             算术右移:             11111111111111111111111111111011 ->-5             逻辑右移:             01111111111111111111111111111011 ->2,147,483,643         对移位操作符移动负数位,这时C语言未定义的,不要使用。     3,位操作符         按位与‘&’、按位或‘|’、按位异或‘^’         位解释为二进制的一位。         &按位与,全为1时结果才为1,其他情况结果均为0             如:int a = 3;//        00000000000000000000000000000011                    int b = 5;//        00000000000000000000000000000101                    int c = a & b;//    00000000000000000000000000000001->1(十进制)             eg:找出一个整数的二进制的1的个数。                 #include <stdio.h>                 int main(){                 int a=1;                 int cnt=0;                 for(int i=0; i<31; i++){                     if((a&1) == 1){//整数的二进制数的1的个数                          cnt++;                     }                     a=a >> 1;                 }                 printf("%d\n",cnt);                 return 0;             }          |按位或,全为0时结果才为0,其他情况结果均为1             如:int a = 3;//    000
怠惰的未禾
2023/04/27
5270
Java基础知识串讲之运算符
在Java中存在着这样一类操作符,是针对二进制进行操作的。它们各自是&、|、^、~、>>、<<、>>>几个位操作符。不管是初始值是依照何种进制,都会换算成二进制进行位操作。
南风
2019/04/22
4980
JavaSE 基础知识(常识概念 + 基础语法)问答总结/面试题 —— 讲给应届生的 Java 开源知识项目
这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解。所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项目,专注 Java 后端面试题 + 解析 + 重点知识详解 + 精选文章的开源项目,希望它能伴随你我一直进步!
BWH_Steven
2021/01/27
7300
JavaSE 基础知识(常识概念 + 基础语法)问答总结/面试题 —— 讲给应届生的 Java 开源知识项目
Java的位运算符详解实例。
位运算符主要针对二进制,它包括了:“与”、“非”、“或”、“异或”。从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。下面详细介绍每个位运算符。
7537367
2020/08/14
6460
重要通知!小编出新的Java练习题已经公布答案了!!!
一、选择题和问答题 1、在一个java原文件中,import, class, package语句的顺序是(D)。 A. import classpackage B. class importpackage C. package classimport D. import packageclass E. class packageimport F. package importclass 2、执行下面程序段后,b, x, y的值分别是( D ). int x=6,y=8; boolean
Java学习
2018/04/13
1.5K0
熬夜整理的万字C/C++总结(三),值得收藏
可以使用 C 对变量中的个别位进行操作。您可能对人们想这样做的原因感到奇怪。这种能力有时确实是必须的,或者至少是有用的。C 提供位的逻辑运算符和移位运算符。在以下例子中,我们将使用二进制计数法写出值,以便您可以了解对位发生的操作。在一个实际程序中,您可以使用一般的形式的整数变量或常量。例如不适用 00011001 的形式,而写为 25 或者 031 或者 0x19.在我们的例子中,我们将使用8位数字,从左到右,每位的编号是 7 到 0。
C语言与CPP编程
2021/08/03
6660
Java基础入门篇(六)——Java运算符
前面几篇文章用Java带大家一起了解了几个游戏小项目,感兴趣的小伙伴可以点击文章观摩下,手把手教你用Java打造一款简单故事书(上篇)、手把手教你用Java打造一款简单故事书(下篇)、手把手教你用Java打造一款简单考试系统(上篇)、手把手教你用Java打造一款简单考试系统(下篇)接下来的几篇文章是关于Java基础的,希望对大家的学习有帮助,欢迎大家在讨论区留言。
Java进阶者
2021/01/22
3020
C语言——操作符
在前面,我们见到了 +, -, * ,/ , < , > , =这些符号,其实它们的名字叫做操作符。按照功能的不同我们可以对它进行一个简单的分类
用户11352420
2024/11/07
870
C语言——操作符
一、Java 基本语法简介
2.Java具有跨平台性,可以运行在任何带有Java Virtual Machine(Java虚拟机) 的环境下运行。
徐建国
2021/08/03
3910
Java初级面试题(详细)
基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io的语法,虚拟机方面的语法。
用户7886150
2020/12/04
5760
相关推荐
Java IDEA Debug&进制&二维数组
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档