关闭

Java语言的基础组成

标签: java基础技术语言
235人阅读 评论(0) 收藏 举报
分类:

Java语言的基础组成

 

  关键字 ②标识符 ③注释 ④常量和变量 ⑤运算符 ⑥语句 ⑦函数 ⑧数组

1.       关键字

定义:被java语言赋予了特殊含义的单词

特点:关键字中所有字母都为小写

用于定义数组类型的关键字:

classinterfacebyteshortintlongfloatdoublecharbooleanvoid

用于定义数据类型值的关键字:

truefalsenull

用于定义流程控制的关键字:

ifelseswitchcasedefaultwhiledoforbreakcontinuereturn

用于定义访问权限修饰符的关键字:

privateprotectedpublic

用于定义类、函数、变量修饰符的关键字:

abstractfinalstaticsynchronized

用于定义类与类之间关系的关键字:

extendsimplements

用于定义建立实例及引用实例,判断实例的关键字:

newthissuperinstanceof

用于异常处理的关键字:

trycatchfinallythrowthrows

用于包的关键字:

packageimport

其它修饰关键字:

nativestrictfptransientvolatileassert

注:main不是关键字但mainJVM的入口。

2.       标识符

在程序中自定义的一些名称。

26个英文字母大小写,数字:0-9,符号:_  $组成

定义合法标识符规则:

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

Java中严格区分大小写

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

Java中的名称规范:

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

         xxxyyyzzz

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

         XxxYyyZzz

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

         XXX_YYY_ZZZ

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

         xxxYyyZzz

3.       注释

用于注解说明解释程序的文字就是注释。

提高了代码的阅读性。

Java中的注释格式:

单行注释:

                     格式: //注释文字

多行注释:

                     格式: /*注释文字*/

文档注释:

                     格式: /**注释文字*/

注:文档注释为java特有的注释,其中注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序的说明文件。

eg:

            /**

                     作者:张三

                     版本:V1.0

                     这个类是用于演示Hello World

            */

//写代码先写注释思想

            /*

                     需求:定义一个Hello World小程序

                     思路:

                               1.……

                               2.……

                     步骤:

1.       通过class关键字定义一个类,将代码都编写到该类中。

2.       为了保证该类的独立运行,在类中定义个主函数,格式:

public static void main(Stirng[] args){ }

3.       保存成一个扩展名为java的文件。

4.       dos控制台中通过javac工具对java文件进行编译。

5.       再通过java命令对生成的class文件进行执行。

*/

此处写程序……

4.       常量与变量

常量表示不能改变的数值

Java中敞亮的分类:

1.       整数常量。所有整数

2.       小数常量。所有小数

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

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

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

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

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

                           十进制:0-9,满101.       eg1,2,3,4,5,6

                           八进制:0-7,满81.                  eg00,01,02,03,04,05

                           十六进制:0-9 A-F,满161,用0x开头表示。   eg0xA1,0x13,0xFF

1>     计算机只认识二进制,二进制和十进制之间的转换,即“除2运算”。

“十进制→二进制”:十进制6转二进制2

把余数倒着输出就好。即结果是:110

 

“二进制→十进制”原理:二进制乘以2的过程。

110二进制转成十进制。0*2^0+1*2^1+1*2^1=6

2>     其它进制的转换(先转成二进制)

四个二进制位对应16进制一个位,eg010151010A

三个二进制位对应8进制一个位,eg001101130102

3>     负数的二进制表示:

6=110 【占四个字节:0000 0000 0000 0000 0000 0000 0000 0110

-6,其实就是6的二进制取反+11111 1111 1111 1111 1111 1111 1111 1010

负数的最高位都是1.

                  变量的概念

                            1>内存中的一个存储区域

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

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

                           为什么要定义变量?

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

                           使用变量的注意:

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

                            2>初始化值

                           定义变量的格式:

                           数据类型变量名 =初始化值;   //格式固定

                           理解:

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

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

整数默认:int                           小数默认:double

注:不同数据类型,不可运算。  egbyte b = 3 b = b+2:;【因为此时2int类型,b被自动提升成了int,低的向高的提升。】  如果非要这样计算,则:b = byte)(b+2;【强制转换】。用处:在不要小数位时,如:doubleint转换,去小数位。

System.out.println(‘a’);                               //a

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

System.out.println((char)(‘a’+1));            //b

 

5.       运算符

算术运算符

赋值运算符

比较运算符

逻辑运算符

位运算符

三元运算符

 

5.1

int x =4270;

x = x/1000*1000;

System.out.println(x);   //4000

% 取模运算(余数)

左小于右,=左。右边为1时,结果为0-1%5 = -15%-1 = 01%-5 =1 即出现负数,只看左边。

++(同理有--

   int a = 3,b;

   b=++a;

   System.out.println(b);  //4

   System.out.println(a);  //4

   如果是:

   int a = 3,b;

   b=a++;

   System.out.println(b);  //3

   System.out.println(a);  //4

+”字符串+

   字符串数据和任何数据使用+都是相连接,最终都会变成字符串。

   System.out.print(”5+5=”+(5+5));   //5+5=10

   System.out.print(”5+5=”+5+5);   //5+5=55

   System.out.print(”a=”+a+”,b=”+b);

转义字符

   通过\来转变后面字母或者符号的意义。

   \n:换行。

   egSystem.out.println”Hello \nWorld”;    //结果为:Hello

                                                                                                                     World

   \b:退格。相当于backspace

 \r:按下回车键,windows系统中,回车符是由两个字符来表示\r\n

   \t:制表位。相当于tab键。

   eg//想打印:”Hello”

            System.out.println”\”Hello\””;

            //想打印:\Hello\

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

char c=’’; 【中文占两个字节,char类型2字节】

 

5.2    赋值运算符

符号

=+=-=*=/=%=

int a=1;

a+=3;            //a=a+3

eg

short s=4;

s = s+5;        //这里报错,因为s已经自动提升为int,且是两步运算,先+后赋值

s +=5;           //正确,因为“+=”为一步运算,只做赋值。

 

5.3    比较运算符

运算符                运算                                    范例                                             结果

==                          相等于                                 4==3                                              false

!=                          不等于                                 4!=3                                               true

<                            小于                                     4<3                                                 false

>                            大于                                     4>3                                                 true

<=                          小于等于                            4<=3                                               false

>=                          大于等于                            4>=3                                               false

instanceof           检查是否是类对象         ‘Hello’ instanceof String           true

注:比较运算符都是boolean类型

 

5.4    逻辑运算符

&                   And(与)                false & true               false                  同真才真

|           or(或)                   false | true                true          同假才假(两边都运算)

^           XOR(异或)           true ^ false                true          一真一假才真

!           Not()                       !true                            false

&&      AND()                     false && true            false                  左假右不运算,否则运算

||         OR(短路)             false || true              ture          左为真,右边不运算

 

5.5    位运算符

<<        左移                   3<<2 = 12        3*2*2=12  其实就是:*2^(移动位数)

>>        右移                   3>>1 = 1            3/2=1                正数的话:/2^(移动位数)

>>>      无符号右移     3>>>1=1            3/2=1

&                  与运算              6&3 = 2            

|           或运算              6|3=7

^           异或运算         6^3=5       一个数异或同一个数两次,结果还是那个数(加密)

~           反码                   ~6=-7       

位运算是直接对二进制进行运算

eg

3<<2=12;

00|00 0000 0000 0000 0000 0000 0000 0011

00 0000 0000 0000 0000 0000 0000 0011|00

 

  class OperateDemo
{
	public static void main(String args[])
	{
		System.out.println("-6>>2 ="+(-6>>2));
		System.out.println("-6/4 ="+(-6/4));
		System.out.println("-6>>1 ="+(-6>>1));
		System.out.println("-3/2 ="+(-3/2));
		System.out.println("6>>2 ="+(6>>2));
		System.out.println("-16>>2 ="+(-16>>2));
		System.out.println("16>>2 ="+(16>>2));
		System.out.println("-6>>>2 ="+(-6>>>2));
	}
}


&

6&3 = 2

110

                    &  011

                        010

                     |

                            6|5 = 7

            110

          | 101

            111

                     ^

                            6^5=3

                             110

                    ^  101

                             011

                     ~

                            ~6=-1

                            0000 0000 0000 0000 0000 0110

                            1111 1111 1111 1111 1111 1001 =-7

                  题一:n=3 m=8【交换nm的值】

                  方法一:

                  用第三个变量

                   z=nn=mm=z

                  方法二:

                  用和【不借助第三方,有局限性,如果想加超出int范围,就不准确了】

                   n=n+m

                   m=n-m

                   n=n=m

                  方法三:

                  用异或^【不借助第三方】

                   n=n^m

                   m=n^m

                   n=n^m

                  题二:获取60的最低四位

                   int num = 60

                   num & 15 = 12

                  题三:获取下一组四位,将60右移4位。

                   int temp = 60>>>4;

                   temp&15=3;

1.2    三元运算符

格式:(条件表达式)?表达式1:表达式2

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

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

eg

获取两个数中大数。

int x=3, y=4, z;

z=(x>y)?x:y;

 

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:5177次
    • 积分:208
    • 等级:
    • 排名:千里之外
    • 原创:15篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1条
    文章分类
    文章存档
    最新评论