`
ccn1010
  • 浏览: 14996 次
  • 性别: Icon_minigender_1
  • 来自: 邢台
最近访客 更多访客>>
社区版块
存档分类
最新评论

java基础2_Lesson4

阅读更多

1.包装类(Wrapper Class).针对于原生数据类型的包装.所有的包装类(8个)都位于java.lang包下.Java中的8个包装类分别 是:Byte,Short,Integer,Long,Float,Double,Character,Boolean.他们的使用方式都是一样的,可以 实现原生数据类型与包装数据类型的双向转换.


2.数据(Array):相同类型数据的集合叫做数组.


3.如何定义一个数组:

type[] 变量名 = new type[数组中元素的个数];可以按照下列方式定义长度为10的数组.

int[] a = new int[10];或者 int a [] = new int [12];或者Java推荐第一种方式,原因是:int[]表示 a是int类型的数组.


4.数组中的元素索引时从0开始的.对于数组来说,最大的索引==数组的长度-1.


5.定义数组的第三种方式:type[] 变量名 = {new type[]} {元素列表};红色部分可以省略

int[] a = new {1,2,2,3,4,5};

int[] b = new int[]{1,2,3,4,5};以上两种方式叫做数组的第三种定义方式

int[] b= new int[5]{1,2,3};这种做法是错误的


6.Java中的每一个数组都有一个length属性,表示数组的长度.length属性是public,final,int的,数组长度一旦确定,就不能改变大小.


7.定义数组后可以不赋初值,赋不赋初值根据程序的逻辑决定.

     int[] = new int[10],其中a是一个引用.它指向了生成的数组对象的首地址,数组中每个元素都是int类型,其中仅存放数据值本身.

Person[] p=new Person[3];//生成了0个对象


8.二维数组:二维数组是一种平面的二维结构,本质上是数组的数组.二维数组的定义方式:type[] 变量名 = new type[];

int[][] i = new int[2][3];

i[0]本身也是数组.

定义不规则二维数组":

int[][] a = new int[3][];

a[0] = new int[2];

a[1] = new int[3];

a[2] = new int[4];

下列的方式是禁止的:
int [][] a = new int[][3];

int[][] a = new int[][]{{1,2,3},{4},{5}};


9.不使用中间变量实现两个数的互换:

int  a = 3;

int b = 4;

a = a + b;

b = a - b;

a = a - b;

System.out.println(a);

System.out.ptintln(b);


10.使用方法交换两个数的值:

public class Swap3
{
        public static void swap(int[] i)
        {
                int temp = i[0]
                i[0] = i[1];
                i[1] = temp;
        }
        public static void main(String[] args)
        {
                int[] i = {1,2};
                swap(i);
                System.out.println(i[0]);
                System.out.println(i[1]);
        }
}

Java 中无指针的概念,可以通过数组的方式实现两个数的交换.


11.

public class ArrayTest6
{
        public static void main(String[] args)
        {
                I[] i = new I[2];//生成了I类型的引用
        }
}
interface I
{

}

上面的程序是可以编译通过的.

public class ArrayTest6
{
    public static void main(String[] args)
    {
        I[] i = new I[2];
        i[0] = new C();
        i[1] = new C();

I[] b = new I[2]{new C(),new C()};
    }
}
interface I
{

}
class C implements I
{

}


12.java.util.Arrays类:

这个类包含了各种用于操纵数组的方法.

Array类的equals()方法,可以用来判断两个数组是否相等.相等的概念是数组的长度相等,数组相同位置上的元素也相当,当两个数组的引用为null时,也认为是相等的.


13.java.lang.System类:System.arraycopy()方法详解:


14.三维数组:type[][][] = new type [2][3][4];


15.课后作业,交换排序,快速排序的原理和实现.


16.二分查找(Binary search):待查找的数组要有序.


17.随机生成五十个数字,每个数字的范围是[10,50],统计每个数字出现的次数以及出现次数最多的数字与它的个数,最后将每个数字即其出现次数打印出来,如果某个数字出现次数为0,则不要打印它,打印时按照数字的升序排列.

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics