zoukankan      html  css  js  c++  java
  • java基础2

    二,java简介

    (1)位操作

    &(按位与),|(按位或),^(按位异或)

    &,两者为1则为1|,两者中有一个是1则为1^,两者不同则为1

    原码:正数的原码是二进制数;负数的原码是二进制的最高为设为1

    反码:正数的反码是原码本身;负数的反码是符号位不变,其他位取反。

    补码:正数的补码是原码本身;负数的补码是负数的反码加1

    左移(<<):在二进制数的右边加0

    带符号右移(>>):在二进制左边,正数加1,负数加0

    不带符号右移(>>>):在二进制左边加0

    (2)数组

    数组属于引用数据类型,先在栈中声明数组名称,然后使用时需要在堆中开辟内存空间

    数组的动态初始化,开辟数组的时候并不知道数组中的数值,而是用默认值:

    数据类型  数组名称[]=new 数据类型[长度]

    数据类型[]  数组名称=new 数据类型[长度]

    关键字new表示引用数据类型,要进行堆空间的开辟,数组中的默认数值为0,默认字符串为null

    例如:int scorce[ ]=null,在栈中开辟空间,但未指明具体的空间

    数组的静态声明,开辟数组的时候设定初始值:

    数据类型  数组名称[]={若干数值……}

    (3)二维数组

    数据类型  数组名称[][],用行列表示,多个一维数组的集合

    动态初始化:

    数据类型  数组名称[][]=new  数据类型[长度][长度]

    静态初始化:

    数据类型  数组名称[][]={{数值1,数值2},{数值3,数值4}}

    (4)方法

    方法就是一段可以重复调用的代码段

    [权限][静态] 返回值类型  方法名(参数列表)

    {

     方法体

     [return][返回内容]

    }

    如果要定义有返回值的方法,直接在返回值类型上写上数据类型即可。

    (5)方法的重载

    方法名称相同,参数的类型或个数不同,根据传入的参数个数或类型的不同,来调用相应的方法。

    但是注意如下情况:

     public class MethodDemo05{

           public static void main(String args[]){

                 

           }

           public static int add(int x ,int y){

                  int temp = x + y ;

                  return temp ;   // 将计算结果返回

           }

           public static float add(int x ,int y){

                  float temp = x + y ;

                  return temp ;   // 将计算结果返回

           }

     

    };

    重载看的不是返回值的类型,而是参数的个数和类型。

    在方法的使用中使用return后,会返回到方法调用的位置继续执行。

    在递归的调用中,必须有递归的结束点。

    (6)方法和数组

    一个方法可以接收或者返回一个数组,但是在接收数组的时候,注意数组时引用数据类型,所以方法中对数组所作的一切修改,最终会被保留下来。

    例如:int a[10],b[10];a=b;///那么ab都指向同一片堆空间

    public class MethodArrayDemo01{

           public static void main(String args[]){

                 int temp[] = {1,3,5,7,9} ;      // 声明数组

                  fun(temp) ;

                  print(temp) ;

           }

           public static void fun(int []x){////temp传递给了x,则两者指向了同一片空间

                  x[0] = 6 ;       // 修改第一个元素

           }

           public static void print(int[] x){

                  for(int i=0;i<x.length;i++){

                         System.out.print(x[i] + "") ;

                  }

           }

    };

    方法不管是接收还是返回数组,实际上最终都是要以数组的形式接收和返回:int[]  x

    (7)数组操作相关方法

    Java.util.Arrays.sort(数组名称)///进行排序操作

    System.arraycopy(源数组名称,源数组开始下标,目的数组名称,目的数组开始下标,拷贝数组长度)///数组的拷贝

    (8)java新特性对数组的支持

    foreach输出:

    for(数据类型  变量:数组名称){}

    例如:

    int[] a={1,2,23}

    for( int  xa)

    {System.out.println(x+"");}

    可变参数:

    正常情况下,一个方法在调用时必须明确的指定传入的参数,而且参数的个数必须统一,但是可变参数表示传入的参数可以不限定个数:

    [权限][静态] 返回值类型  数组名称(数据类型 …参数名称){}

    这样就可以在传入参数的时候传递任意多个参数,而且全部的参数是以数组的形式接收。

    例如:

    public class MethodArrayDemo06{

           public static void main(String args[]){

                  int temp[] = {2,4,6,8} ;

                 fun() ;            // 没有参数

                 fun(1) ;   // 一个参数

                 fun(1,3,5,7,9) ;      // 一个参数

                  fun(temp) ;

           }

           public static void fun(int ... arg){

                  for(int x:arg){

                         System.out.print(x + "") ;

                  }

                  System.out.println() ;

           }

    };

  • 相关阅读:
    PHP数字补零的两种方法
    php 防跨站表单提交
    PHP字符串压缩
    原生JS实现表单序列化serialize()
    java并发实现原子操作
    Effective java -- 9 并发/序列化
    Effective java -- 8 异常
    Effective java -- 7 通用程序设计
    Effective java -- 6 方法
    Effective java -- 5 枚举和注解
  • 原文地址:https://www.cnblogs.com/jinzhengquan/p/1941525.html
Copyright © 2011-2022 走看看