Java基础语法(上篇)

时间:2022-03-08 14:44:26


                 

  Java基础语法(上篇)

知识概要:

(1)关键字的表示与规范

        (2)标示符

             (3)注释  

             (4)变量

             (5)常量和变量

(6)运算符

(7)循环结构

(1)关键字的表示和规范

Java基础语法(上篇)

Java基础语法(上篇)

(2)标识符

在程序中自定义的一些名称。由26个英文字母大小写,数字:0-9 符号:_ $ 组成

     定义合法标识符规则: 

        1,数字不可以开头。  2,不可以使用关键字。

    Java中严格区分大小写。

    注意:在起名字的时,为了提高阅读性,要尽量有意义。

 Java中的名称规范:

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

      •  xxxyyyzzz

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

      •  XxxYyyZzz

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

      •  xxxYyyZzz

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

      •  XXX_YYY_ZZZ

(3) 注释

 对于单行和多行注释,被注释的文字,不会被JVM(java虚拟机)解释执行。

 

对于文档注释,是java特有的注释,其中注释内容可 以被JDK提供的工具javadoc 所 解析,生成一套以网格式的

文件体现该程序的说明文档。

 注释是一个程序员必须要具有的良好编程习惯。

 初学者编写程序可以养成习惯:先写注释再写代码。

 将自己的思想通过注释先整理出来,在用代码去体现。

 因为代码仅仅是思想的一种体现形式而已。 

  

      /**

这是我的Hello World程序。

@author 小强

      */

   class Demo

   {

     /*

     这是主函数,是程序的入口

     它的出现可以保证程序的独立运行, 

    */

     public static void main(String[] args)

     {

            //这是输出语句用于将括号内的数据打印到控制台。

            System.out.println("Hello World");

     }

  }

(4)常量

常量表示不能改变的数值。

  Java中常量的分类:

1.整数常量。所有整数

     2.小数常量。所有小数

     3.布尔型常量。较为特有,只有两个数值。true false。

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

     5.字符串常量。将一个或者多个字符用双引号标识。

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

对于整数:java有三种表现形式。

      •  十进制:0-9 ,满10进1.

      •  八进制:0-7 ,满8进1. 用0开头表示。

      •  十六进制:0-9,A-F,满16进1. 用0x开头表示。

(常量与变量)

(5)常量与变量

 变量的概念:

•  内存中的一个存储区域

      •  该区域有自己的名称(变量名)和类型(数据类型)

      •  该区域的数据可以在同一类型范围内不断变化

 为什么要定义变量:

      •  用来不断的存放同一类型的常量,并可以重复使用

  使用变量注意:

      •  变量的作用范围(一对{}之间有效)

      •  初始化值

 定义变量的格式:

      •  数据类型 变量名 =  初始化值;

      •  注:格式是固定的,记住格式,以不变应万变。

 

理解:变量就如同数学中的未知数。

数据类型结构图

Java基础语法(上篇)

进制的基本转换

      • 十进制 二进制互转

      • 十进制转成二进制 除以2取余数

      • 二进制转成十进制 乘以2的幂数

      • 十进制八进制互转

      • 十进制十六进制互转 

      • 负数的二进制表现形式   • 对应的正数二进制取反加1

常量与变量

 自动类型转换(也叫隐式类型转换)

  强制类型转换(也叫显式类型转换)

 

类型转换的原理

  什么时候要用强制类型转换?

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

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

      • 如果一个操作数是long型,计算结果就是long型;

      • 如果一个操作数是float型,计算结果就是float型;

      • 如果一个操作数是double型,计算结果就是double型。 



(6)运算符

算术运算符  赋值运算符  比较运算符  逻辑运算符  位运算符   三元运算符

重点介绍:

     逻辑运算符

 逻辑运算符用于连接布尔型表达式,在Java中不可以 

     写成3<x<6,应该写成x>3 & x<6 。 

     “&”和“&&”的区别:

     • 单&时,左边无论真假,右边都进行运算;

     • 双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。

     “|”和“||”的区别同理,双或时,左边为真,右边不参与运算。

      异或( ^ )与或( | )的不同之处是:当左右都为true时,结果为false

位运算符  位运算符的细节 

      << 

     空位补0,被移除的高位丢弃,空缺位补0。 被移位的二进制最高位是0,      >> 

     最高位是1,空缺位补1。 

     >>>    

    被移位二进制最高位无论是0或者是1,空缺位都用0补。

     & 

    二进制位进行&运算,只有1&1时结果是1,否则是0; 

     |      

    二进制位进行| 运算,只有0 | 0时结果是0,否则是1; 

    ^ 

   任何相同二进制位进行^ 运算,结果是0;1^1=0 , 0^0=0

   不相同二进制位^ 运算结果是1。1^0=1 , 0^1=1

练习:可以作为面试题目 

      1.最有效率的方式算出2乘以8等于几?2<<3;

      2.对两个整数变量的值进行互换(不需要第三方变量)

        采用:^异或的手法

        练习:对两个变量的数据进行互换。不需要第三方变量。

        int a  = 3,b = 5;-->b = 3,a = 5;

        a = a + b; a = 8;

        b = a - b; b = 3;

        a = a - b; a = 5;

        a = a ^ b;

        b = a ^ b;//b = a ^ b ^ b = a

        a = a ^ b;//a = a ^ b ^ a = b;

       练习:高效的算出 2*8 = 2<<3;

  

三元运算符

格式

      • (条件表达式)?表达式1:表达式2;

      • 如果条件为true,运算后的结果是表达式1;

      • 如果条件为false,运算后的结果是表达式2;

  示例:

      • 获取两个数中大数。

      • int x=3,y=4,z;

      • z = (x>y)?x:y;//z变量存储的就是两个数的大数

程序流程控制

 判断结构      选择结构    循环结构

判断结构

if语句

    三种格式:略

判断结构

if语句特点:

a,每一种格式都是单条语句。

b,第二种格式与三元运算符的区别:三元运算符运算完要有值出现。好处是:可以写在其他表达式中。

c,条件表达式无论写成什么样子,只看最终的结构是否是true 或者false;

  

  

  

选择结构

  

         switch语句

         格式:

        switch(表达式)

        {

            case 取值1:

            执行语句;

            break;

            case 取值2:

            执行语句;

            break;

          …...

            default:

            执行语句;

            break;

        }

工作原理:

用小括号中的变量的值依次和case后面的值进行对比,和哪个case后面的值相同了就执行哪个case后面的语句,如果没有相同的则执行default后面的语句;

细节:

1):break是可以省略的,如果省略了就一直执行到遇到break为止;

        2):switch 后面小括号中的变量应该是byte,char,short,int四种类型中的一种;

   3):default可以写在switch结构中的任意位置;如果将default语句放在了第一行,则不管expression与case

中的value是否匹配,程序会从default开始执行   直到第一个break出现。

循环结构

for While do while

    do while特点是条件无论是否满足,  循环体至少被执行一次。

    格式:

    for(初始化表达式;循环条件表达式;循环后的操作表达式) 

   {

      执行语句;

   }

   注:

a,for里面的表达式运行的顺序,初始化表达式只读一次,判断循环条件,为真就执行循环体,然后再执行循环后的

操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止。 

    b,while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放。而while循环使用的变

量在循环结束后还可以继续使用。 

    c,最简单无限循环格式:while(true) , for(;;),无限循环存在的原因是并不知道循 环多少次,而是根据某些条件,来

控制循环

Java基础语法(上篇)的更多相关文章

  1. JavaSE入门学习6:Java基础语法之运算符和语句&lpar;上&rpar;

    继续接着上篇:JavaSE入门学习5:Java基础语法(一)来看Java的基础语法. 五运算符 运算符是一种"功能"符号,用以通知Java进行相关的运算.比方.我们须要将变量age ...

  2. &lbrack;Java 教程 04&rsqb; Java基础语法

    在上一篇文章中我们已经运行了个简单的java程序,但是没有给大家讲解代码部分的内容与含义.学习,我们要做到知其然而知其所以然,所以本篇文章我们就来讲解java程序的基本语法,学完这篇文章你再回头看上篇 ...

  3. 046 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 08 for循环的注意事项

    046 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 08 for循环的注意事项 本文知识点:for循环的注意事项 for循环的注意事项 for循环有3个 ...

  4. java面向对象编程——第二章 java基础语法

    第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...

  5. Java基础语法(下篇)

     Java基础语法(下篇) 内容概要:        (1)函数的定义        (2)函数的特点        (3)函数的应用        (4)函数的重载               ...

  6. java——基础语法

    java基础语法 1.关键字:java赋予特殊含义的单词. 2.标识符:程序中开发人员自定义的名词,例如:类名,函数名,变量名(注意事项:①不能以阿拉伯数字开头②不能采用关键字). 3.常量:固定的数 ...

  7. java基础语法(二)--单列模式

    java基础语法(二)--单列模式 /** * 功能:单列模式 * @author Administrator * */ public class SingletonTest { public sta ...

  8. java基础语法(一)

    java基础语法(一) 1.类是一种抽象的概念,对象是类的一种具体表示形式,是具体的概念.先有类,然后由类来生成 对象(Object).对象又叫做实例(Instance). 2.类由两大部分构成:属性 ...

  9. Java基础语法入门01

    Java基础语法入门01 学习java你要先进行去了解JDK,JRE,JVM JDK Java开发工具包 JRE Java语言开发的运行环境 JVM Java虚拟机,用于Java语言的跨平台所用. 当 ...

随机推荐

  1. POJ2186

    poj2186 popular cows   Every cow's dream is to become the most popular cow in the herd. In a herd of ...

  2. 【OpenStack】OpenStack系列6之Sheepdog环境搭建

    准备 repo配置 yum clean all yum makecache yum install -y make automake autoconf gcc nss-devel wget git g ...

  3. RAID磁盘阵列学习笔记

    RAID是“Redundant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列.简单地解释,就是将N台硬盘通过RAID Controller(分Hardware ...

  4. 转--object-C 与lua使用wax交互

    [51CTO独家译文]2011年6月的编程语言排行榜Lua语言一军突起,一举进入前十名.这与一年前苹果决定在iOS系统上使用Lua语言密不可分.但是,你了解如何用Lua语言在iOS上开发应用吗?51C ...

  5. android使用BlueStacks作为模拟器

    android原生的模拟器启动比较慢,偶尔还会出现一些莫名的问题,我们除了可以使用我们的android手机来进行调试外,还可以使用第三方的android模拟器,例如BlueStacks模拟器: 相对原 ...

  6. Android开发&lpar;30&rpar;--AutoCompleteTextView和MultiAutoCompleteTextView自动提示输入内容

    首先大家都见过类似这种效果, AutoCompleteTextView是实现动态匹配输入的内容 下面就通过一个实例来说明AutoCompleteTextView,同样,AutoCompleteText ...

  7. Java集合中的HashMap类

    jdk1.8.0_144 HashMap作为最常用集合之一,继承自AbstractMap.JDK8的HashMap实现与JDK7不同,新增了红黑树作为底层数据结构,结构变得复杂,效率变得更高.为满足自 ...

  8. MISCONF Redis is configured to save RDB snapshots&comma; but it is currently not able to persist on disk&period; Commands that may modify the data set are disabled&comma; because this instance is configured to report e

    早上来到公司,线上的项目报错: Error in execution; nested exception is io.lettuce.core.RedisCommandExecutionExcepti ...

  9. Visibility from other objects

    php.net <?php class Test { private $foo; public function __construct($foo) { $this->foo=$foo; ...

  10. 怎样知道 CPU 是否支持虚拟化技术(VT) &vert; Linux 中国

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/F8qG7f9YD02Pe/article/details/79832475 wx_fmt=png&a ...