Java笔记整理(2)Java语言基础

来源:互联网 发布:武威西安交大网络教育 编辑:程序博客网 时间:2024/06/06 09:22

Java笔记整理(2)Java语言基础

一.数据类型
1.标识符
    Java语言中,标识符是以字母、下划线、美元符号开始的一个字符序列,后面可以跟字母、下划线、美元符号、数字。

2.保留字
    Java语言中的保留字均用小写字母表示。

3.数据类型划分
  ·简单类型
     ·整数类型(Integer): byte,short,int,long
     ·浮点类型(Floating): float,double
     ·字符类型(Textual): char
     ·布尔类型(Logical): boolean(值ture,false)
  ·复合类型
     ·class
     ·interface
     ·数组

4.常量和变量
    常量: 用保留字final来实现.
    final typespecifier varname = value[,varnam[=value]...];
    如: final int NUM = 100;

    变量:
    typespecifier varname = value[,varnam[=value]...];
    如: int count; char c = 'a';
   
    变量的作用域:
    局部变量、类变量、方法参数和例外处理参数.

二.运算符和表达式
    一元运算符: ++  --  +  -
    二元运算符: +  -  >
    三元运算符: ?:

1.算术运算符: +  -  *  /  %  ++  --
2.关系运算符: >  <  >=  <=  ==  !=
3.布尔逻辑运算符: !  &&  ||
4.位运算符: >>  <<  >>>  &  |  ^  ~
    a = 10011101
    a<<3 = 11101000
5.赋值运算符: =  扩展赋值运算符: +=  -=  *=  /=
6.条件运算符: ?:
    例: result=(sum==0?1:num/sum);
7.其它:
    分量运算符: "
    下标运算符: []
    实例运算符: instanceof
    内存分配运算符: new
    强制类型转换运算符: (类型)
    方法调用运算符: ()
8.表达式类型: 由运算以及参与运算的操作数的类型决定
    布尔表达式: x&&y||z;
    整型表达式: num1 + num2
9.运算符的优先次序:
   
三.控制结构
1.控制语句
  ·条件语句: if else
    if (boolean_expression)
       statement1;
    [else statement2;]

  ·多分支语句: switch
    switch (expression) {
      case value1: statement1;
    break;
      case value2: statement2;
    break;
    ......
      case valuen: statementn;
    break;
      [default: defaultstatement;]
    }

2.循环语句
  ·while语句
    [initialization]
    while (termination) {
       body;
    [iteration;]
    }

  ·do while语句
    [initialization]
    do {
       body;
    [iteration;]
    } while (termination)

  ·for语句
    for(initialization; termination; iteration) {
       body;
    }

3.跳转语句
  ·barak语句
    BlockLabel: {codeBlock}
    break BlockLabel;

  ·continue语句
    continue语句用来约束本次循环,跳过循环体中下面尚未执行的语句,接着进行终止条件的判断,以决定是否继续循环.

  ·返回语句: return
    return语句从当前方法中退出,返回到调用该方法的语句处,并从紧跟该语句的下一条语句继续程序的执行,返回语句有两种格式:
    return expression;
    return;

  ·例外处理语句
    包括try, catch, finally, throw语句,与C/C++相比,是Java特有的语句.

四.数组
一维数组
1.一维数组的定义
  type arrayname[];
2.一维数组的初始化
  ·静态初始化
    int intArray[]={1,2,3,4};
    string stringArray[]={"abc",'How","you"};
  ·动态初始化
    ·简单类型的数组
      int intArray[];
      intArray = new int[5];
    ·复合类型的数组
      string stringArray[];
      string stringArray = new string[3];
      stringArray[0] = new string("How");
      stringArray[1] = new string("are");
      stringArray[2] = new string("you");
3.一维数组的引用
  arrayName[index]  //index为数组下标,从0开始.
  每个数组都有一个属性length指明它的长度. intArray.lenngth

二维数组
1.二维数组的定义
  type arrayName[][];
  type [][]arrayName;
2.二维数组的初始化
  ·静态初始化
    int intArray[][]={{1,2},{2,3},{3,4,5}};
    Java语言中,由于把二维数组看作是数组的数组,数组空间不是连续分配的,所以不要求二维数组每一维的大小相同.
  ·动态初始化
    直接为每一维分配空间,格式如下:
    arrayName = new type[arraylength1][arraylength2];
    int a[][] = new int[2][3];
    从最高维开始,分别为每一维分配空间,格式如下:
    arrayName = new type[arraylength1][];
    arrayName[0] = new type[arraylength20];
    arrayName[1] = new type[arraylength21];
    ...
    例:
    二维简单数据类型数组的动态初始化如下:
    int a[][] = new int[2][];
    a[0] = new int[3];
    a[1] = new int[5];
    对二维复合数据类型的数组,必须首先为最高维分配引用空间,然后再顺次为低维分配空间,而且,必须为每个数组元素单独分配空间,例:
    String s[][] = new String[2][];
    s[0] = new String[2];  //为最高维分配引用空间
    s[1] = new String[2];  //为最高维分配引用空间
    s[0][0] = new String("Good");
    s[0][1] = new String("Luck");
    s[1][0] = new String("to");
    s[1][1] = new String("you");
3.二维数组的引用
   arrayName[index1][index2]   例: num[1][0]

五.字符串
字符串的表示
    Java语言中,把字符串作为对象来处理,类String和StringBuffer都可以用来表示一个字符串(类名都是大写字母打头).
1.字符串常量: 用双引号括住的一串字符.
2.String表示字符串常量
  ·用String表示字符串
    String(char chars[]);
    String(char chars[],int startindex,int numchars);
  ·String使用示例:
    String s = new String();
  ·下面用不同方法生成字符串"abc";
    Char chars1[]={'a','b','c'};
    String s1 = new String(chars1);
    String s2 = new String(chars2,0,3);
    byte ascii1[]={97,98,99};
3.用StrinBuffer表示字符串
  StringBuffer();
  StringBuffer(int len);
  StringBuffer(String s);

访问字符串
1.类String: 提供了length(), charAt(), indexOf(), lastIndexOf(), getChars(), getBytes(), toCharArray()等方法.
2.类StringBuffer: 提供了length(), charAt(), getChars(), capaeity()等方法

修改字符串
1.String类提供的方法
   concat()
   replace()
   substring()
   toLowerCase()
   toUpperCase()
2.StringBuffer类提供的方法:
   append()
   insert()
   setCharAt()
   注意: String中对字符串的操作不是对源操作串对象本身进行的,而是对新生成的一个源操作串对象的拷贝进行的,其操作的结果不影响源串.
   相反,StringBuffer中对字符串的连接操作是对源串本身进行的,操作之后源串的值发生了变化,变成连接后的串.

其它操作
1.字符串的比较
  ·String中提供的方法:
    equals()和equalsIgnoreCase()
    它们与运算符"=="实现的比较是不同的,运算符"=="比较两个对象是否引用同一个实例,而equals()和equalsIgnoreCase()则比较两个字符串中对应的每个字符值

是否相同.
2.字符串的转化
   java.lang.Object中提供了方法toString()把对象转化为字符串.
3.字符串"+"操作
   除了对运算符"+"进行重载外,java不支持其它运算符的重载.

原创粉丝点击