02java语言基础数组向量字符串.ppt

上传人:sccc 文档编号:5083646 上传时间:2023-06-02 格式:PPT 页数:103 大小:844.01KB
返回 下载 相关 举报
02java语言基础数组向量字符串.ppt_第1页
第1页 / 共103页
02java语言基础数组向量字符串.ppt_第2页
第2页 / 共103页
02java语言基础数组向量字符串.ppt_第3页
第3页 / 共103页
02java语言基础数组向量字符串.ppt_第4页
第4页 / 共103页
02java语言基础数组向量字符串.ppt_第5页
第5页 / 共103页
点击查看更多>>
资源描述

《02java语言基础数组向量字符串.ppt》由会员分享,可在线阅读,更多相关《02java语言基础数组向量字符串.ppt(103页珍藏版)》请在三一办公上搜索。

1、第二章Java 语言基础,NCEPU,Contents,1.数组,复合数据类型,NCEPU,复合数据类型,早期的程序设计语言把变量看作是孤立的东西,例如我们往往用三个整数变量day,month和year来表示日期 int day,month,year;虽然这种方法容易理解,但是有两个明显的缺点:,NCEPU,复合数据类型,程序若要处理多个日期,则需要更多的说明,例如要保存两个生日,则需要:birthday1,birthmonth1,birthyear1 birthday2,birthmonth2,birthyear2该程序因使用了多个变量而变得混乱,并且占用了过多的命名空间。每个变量都是独立的

2、,而其实它们应当是某一个日期的组成部分,这样定义无法体现整体的联系。,NCEPU,复合数据类型,复合数据类型由程序员在源程序中定义,把描述整个对象各个不同方面的变量放到一个定义中,建立该模型。一旦有了定义,就可以使用该类型名来创建变量。Java是面向对象的程序设计语言,它为用户提供的复合数据类型即类 和 接口。,NCEPU,复合数据类型,引用类型(reference type即复合类型),引用型变量的值与基本类型(简单类型)变量不同,变量值是指向内存空间的引用(地址)。所指向的内存中保存着变量所表示的一个值或一组值。,引用在其他语言中称为指针或内存地址。Java不支持显式使用内存地址,而必须通

3、过变量名对某个内存空间地址进行访问。,NCEPU,两种类型变量的不同处理,int a;a=12;,MyDate today;today.day=14;,引用型变量在声明后必须通过实例化开辟数据空间,才能对变量所指向的对象进行访问.,MyDate today;today=new MyDate();today.day=14;,NCEPU,关于对象和对象的“引用”,String s=new String(“a String”);An object of String is createdThe object is initialized w/”a String”A variable as handl

4、e to String is createdThe value of the handle variable is assign to the object,String s;,s,a String,数组和字符串,NCEPU,第一节 数组,数组概述 一维数组 二维数组,NCEPU,数组概述,数组,是由数目固定的、相同类型的元素组成的有序集合,每个元素相当于一个变量。在Java中,数组是最简单的复合数据类型,NCEPU,数组概述,数组元素可以是任意类型,可以是简单类型,也可以是引用类型。访问数组中的某个元素,可以通过数组名加下标的形式,例如:a4。数组下标的个数就是数组的维数:有一个下标就是一维

5、数组,有两个下标就是二维数组,依次类推。,NCEPU,一维数组,一个一维数组实际上是一列相同类型的变量 一维数组的声明 一维数组的创建 一维数组初始化 数组边界,NCEPU,一维数组的声明,声明一维数组的格式是:;或;,例如:int a 或:Date d,例如:int a 或:Date d,int a 5 是不正确的,要声明成:int a 或:int a,此时的数组a中的元素个数没有确定,系统没有创建具体的数组对象,而是声明了一个指向数组的引用,NCEPU,所有的引用类型都需要用new来初始化,一维数组的创建,创建一维数组的格式为:=new;Java中没有静态定义的数组,数组的内存都是通过ne

6、w动态分配的。,例如:a=new int 5;,此时系统创建了具体的数组对象,为每个数组元素分配了具体的内存单元,并进行了默认的初始化,a=new int 5;,NCEPU,一维数组的创建,数组的声明和创建可以同时进行:=new;或=new;,例如:int a=new int 5;或:int a=new int 5;,NCEPU,public class Test public static void main(String args)int s;s=new int 5;for(int i=0;i5;i+)si=2*i+1,一维数组,NCEPU,一维数组,public class Test p

7、ublic static void main(String args)int s;s=new int 5;for(int i=0;i5;i+)si=2*i+1,NCEPU,一维数组,public class Test public static void main(String args)int s;s=new int 5;for(int i=0;i5;i+)si=2*i+1,NCEPU,一维数组,public class Test public static void main(String args)int s;s=new int 5;for(int i=0;i5;i+)si=2*i+1,

8、NCEPU,一维数组的创建,一旦为数组分配了存储空间,程序中就不能改变数组的长度,但是可以再次使用new生成新的数组对象,分配新的存储空间。例如:int a=new int5;a=new int 6;,数组创建后就不能改变其大小,但是可以使用相同的引用变量指向一个全新的数组。本例中,第一个数组实际上丢失了,除非还有其他引用指向它,NCEPU,注意:元素为引用类型的数组中的每一个元素都需要实例化。,设已定义了Date类包括三个成员变量:year,month,day,一维数组的创建,当创建的数组元素是一个类的对象的时候,这些对象必须要单独创建。,Date d;/Date是一个类,d=new Dat

9、e 5;/初始化,用new为数组分配空间,d 1=new Date();,NCEPU,一维数组的初始化,当创建一个数组对象时,每个数组元素都会被自动初始化。,int a=new int 5;,char c=new char 5;,Date d=new Date 5;,NCEPU,一维数组的初始化,可以在声明数组的同时,为数组元素赋初值。,int a=1,2,3,4,5;,静态初始化,相当于:int a=new int 5;a 0=1;a 1=2;a 2=3;a 3=4;a 4=5;,注意:静态初始化必须在声明数组时进行,而不能写成如下形式:int a;a=1,2,3,4,5或 int a=ne

10、w int 5;a=1,2,3,4,5,NCEPU,一维数组的初始化,可以在声明数组的同时,为数组元素赋初值。,Date days=new Date(17,3,2010),new Date(17,3,2010),new Date(17,3,2010);,静态初始化,NCEPU,当用new创建了一个对象时,系统为对象中的变量进行了初始化,即不但为变量分配了相应的存储单元,还设置了变量所属类型的相应初值,这样就避免发生变异错误。,复合数据类型(引用类型):声明时并未创建具体对象,而是声明了一个指向复合数据类型的引用,引用类型都需要用new来初始化,一维数组的初始化,NCEPU,一维数组的初始化,p

11、ublic class Test public static void main(String args)int a=new int5;Date days=new Date3;System.out.println(a3);System.out.println(days2);class Date int year,month,day;Date(int y,int m,int d)year=y;month=m;day=d;,0null,NCEPU,一维数组,NCEPU,一维数组,NCEPU,一维数组,NCEPU,数组边界,数组类中有唯一的一个成员变量:length,用来表示数组的长度,即数组元素的

12、个数。在Java中,数组的下标从0开始,到length-1结束,即数组a的第一个元素是a0,最后一个元素是alength-1。另外,与C、C+中不同,Java对数组元素要进行越界检查以保证安全性。,NCEPU,数组边界,使用new创建数组对象时,自动给length赋值,数组一旦创建完毕,length就确定下来,除非重新使用new创建新的数组对象。程序在运行过程中会对length进行检查,若发生越界访问,则会抛出一个异常。,NCEPU,数组边界,例 求一组数中的最大值和最小值。在本例中,使用一维数组来存放Math.random()方法产生的一组099之间的随机数。Math.random()方法:

13、public static double random(),想得到一个099之间的数,可以使用:int num=(int)(100*Math.random();,NCEPU,class ArrayMax public static void main(String args)final int SIZE=10;int num=new int SIZE;int i,max,min;System.out.print(nums:);for(i=0;i num.length;i+)num i=(int)(100*Math.random();System.out.print(+num i);System

14、.out.println();,可能的输出为:nums:15 68 19 78 22 85 32 59 75 91,NCEPU,class ArrayMax public static void main(String args)max=num 0;min=num 0;for(i=1;i max)max=num i;if(num i min)min=num i;System.out.println(Max is:+max);System.out.println(Min is:+min);,输出为:Max is:91 Min is:15,之前的输出为:nums:15 68 19 78 22 85

15、 32 59 75 91,NCEPU,二维数组,Java中并没有真正的多维数组,而是通过建立数组的数组来得到多维数组,即数组的元素还是数组。最常用的是二维数组,例如:int mat=new int 2 3;,NCEPU,二维数组,int mat=new int 2 3;,int mat;,mat=new int 2;,mat 0=new int 3;,mat 1=new int 3;,NCEPU,二维数组,创建二维数组的一般格式为:type arrayN=new type arrleng1 arrayN0=new type arrleng2;arrayN1=new type arrleng2;

16、arrayNarrayleng1-1=new type arrleng2;,第二维大小一致的二维数组叫作矩阵数组,NCEPU,二维数组,也可以定义非矩阵数组。,int mat=new int 3;,mat 0=new int 5;,mat 1=new int 3;,mat 2=new int 2;,NCEPU,二维数组,可以在创建二维数组时进行初始化。,int mat1=1,2,3,4,5,6,int mat2=1,2,3,4,5,6,mat1:1 2 3 4 5 6,mat2:1 2 3 4 5 6,NCEPU,二维数组,书写二维数组是要注意合法化:,int a=new int 2 3;,i

17、nt b 2 3;,int c=new int 2 3;,int d=new int 2;,int e=new int 3;,NCEPU,第二节 字符串,声明字符串变量字符串运算String类的常用方法,NCEPU,字符串概述,字符串是内存中连续排列的一个或多个字符,在Java中,字符串是一个对象。在Java中提供了String和StringBuffer类型,它们都是标准包java.lang中封装的类,分别用于处理不变字符串和可变字符串。,NCEPU,字符串概述,String类不变字符串类是指字符串一旦建立,其内容就不能改变,若要改变字符串的内容,则将生成新的实例 StringBuffer类可

18、变字符串类是指字符串中的内容是可以改变的,NCEPU,字符串概述,Java的字符串用关键字String标记。这里的 String不是一个简单类型,而是Java定义的一个类(class),属于引用类型。在此,我们先将String当作一个数据类型使用。,NCEPU,1、声明字符串变量,格式:String 变量名;存储方式:字符串是引用类型,其存储方式与简单类型变量不同。,String str;String str=“abc”;,7,7,0 x01234567,0 x01234567,Hello,x,y,s,t,int x=7;int y=7;String s=“Hello”;String t=s;

19、,String s=“Hello”;String t=“World”;String r=s+t;,0 x1234567,0 x1234568,0 x1234569,Hello,World,HelloWorld,s,t,r,NCEPU,String类-1字符串的创建,对于字符串变量,在使用之前要显式说明,并进行初始化:String s1=new String(This is a String);或直接用字符串常量来初始化一个字符串:String s2=This is a String;,NCEPU,String类-1字符串的创建,String s1=Hello;,String s2=Hello;

20、,s2=World;,s2=Hello;,String s3=new String(Hello);,NCEPU,String类-1字符串的创建,String s=Hello;,String t=s;,s=World;,t=World;,NCEPU,小结,1)String s1=“abc”;2)String s2=new String(“abc”);区别:第1种方法是定义了一个字符串常量,存放地点是常量池 第2种方法是创建了一个字符串对象,是在执行期创建的,NCEPU,字符串运算,程序中可以用赋值运算为字符串变量赋值。,str=“abc”+”xyz”,除此之外,Java定义“+”可用于两个字符串

21、 的连接运算。,如果字符串与其他类型变量进行“+”运算,系统自动将其他类型转换为字符串。,NCEPU,例,用if语句,将三个整数按从小到大的顺序输出(三个整数已知,为34,21,27)。,NCEPU,class Order public static void main(String args)int a=34,b=21,c=27,t;if(ab)t=a;a=b;b=t;if(bc)t=b;b=c;c=t;if(ab)t=a;a=b;b=t;System.out.println(The order is+a+,+b+,+c);,The order is 21,27,34,NCEPU,class

22、 Order public static void main(String args)int a=34,b=21,c=27,t;if(ab)t=a;a=b;b=t;if(bc)t=b;b=c;c=t;if(ab)t=a;a=b;b=t;System.out.println(a+b+c);,The order is 82,NCEPU,class Order public static void main(String args)int a=34,b=21,c=27,t;if(ab)t=a;a=b;b=t;if(bc)t=b;b=c;c=t;if(ab)t=a;a=b;b=t;System.out

23、.println(The order is+a+b+c);,The order is 212734,NCEPU,String类-2String类的常用方法,Java为String类定义了许多方法,可以通过下述格式调用Java定义的方法:.;,NCEPU,String类-2String类的常用方法,int length()返回字符串的长度 System.out.println(s1.length();,例如:String s1=Hello;,5,char charAt(int index)返回字符串中index位置的字符System.out.println(s1.charAt(1);,e,NCE

24、PU,String类-2String类的常用方法,String toLowerCase()将当前字符串中所有字符转换成小写形式 System.out.println(s1.toLowerCase();,例如:String s1=Hello;,hello,String toUpperCase()将当前字符串中所有字符转换成大写形式 System.out.println(s1.toUpperCase();,HELLO,NCEPU,String类-2String类的常用方法,String substring(int beginIndex)返回从beginIndex开始的子串 System.out.p

25、rintln(s1.substring(2);,例如:String s1=Hello;,llo,String substring(int beginIndex,int endIndex)返回从beginIndex开始到endIndex之前的子串 System.out.println(s1.substring(2,4);,ll,NCEPU,String类-2String类的常用方法,String replace(char oldChar,char newChar)将字符串中所有的oldChar转换为newChar System.out.println(s1.replace(l,t);,例如:St

26、ring s1=Hello;,Hetto,int indexOf(String str)返回str在字符串中第一次出现的位置 System.out.println(s1.indexOf(ell);,1,NCEPU,String类-2String类的常用方法,String concat(String str)将str连接在当前字符串的尾部 System.out.println(s1.concat(World!);,例如:String s1=Hello;,Hello World!,NCEPU,String类-2String类的常用方法,boolean equals(String str)比较str

27、与当前字符的内容是否相同 System.out.println(s1.equals(hello);,例如:String s1=Hello;,false,boolean equalsIgnoreCase(String str)比较str与当前字符的内容是否相同,并且忽略字符大小写 System.out.println(s1.equalsIgnoreCase(hello);,true,NCEPU,0,若str和当前字符串仅长度不同,则返回两者长度的差值 System.out.println(pareTo(Hello World);,String类-2String类的常用方法,int compare

28、To(String str)比较str和当前字符串的内容,返回差值,例如:String s1=Hello;,若str和当前字符串相等,则返回0 System.out.println(pareTo(s1);,6,若str和当前字符串不相等,则返回第一个不同字符的差值 System.out.println(pareTo(Hillo);,4,NCEPU,String类-3=与 equals()方法,equals()是判断两个String对象内容是否相同=是判断两个String对象是否为同一实例,即在内存中的存储空间是否一致。,NCEPU,class StringTest2 public static

29、 void main(String args)String s1=This is the second string.;String s2=This is the second string.;String s3=new String(This is the second string.);String s4=new String(s1);String s5=s1;,Boolean result21=s1.equals(s2);,result21=true,Boolean result22=s1=s2;,result22=true,Boolean result31=s1.equals(s3);

30、,result31=true,Boolean result32=s1=s3;,result32=false,result41=true,Boolean result41=s1.equals(s4);,result42=false,Boolean result42=s1=s4;,result51=true,Boolean result51=s1.equals(s5);,result52=true,Boolean result52=s1=s5;,NCEPU,StringBuffer类,StringBuffer类处理可变字符串,当修改一个StringBuffer类的字符串对象时,不会再产生新的实例,

31、而是直接操作原字符串。系统为StringBuffer类对象分配内存时,除去字符所占空间外,再另加16个字符大小的缓冲区。,NCEPU,StringBuffer类 创建,StringBuffer s1=new StringBuffer();/创建一个大小为16个字符的空StringBuffer对象 StringBuffer s2=new StringBuffer(40);/创建一个大小为40个字符的空StringBuffer对象StringBuffer s3=new StringBuffer(Hello);/创建一个大小为21个字符的StringBuffer对象,NCEPU,StringBuff

32、er类-常用的方法,int length()返回StringBuffer对象中字符的长度System.out.println(s1.length();,例如:StringBuffer s1=new StringBuffer(Hello),5,int capacity()返回StringBuffer对象缓冲区的容量System.out.println(s1.capacity();,21,NCEPU,StringBuffer类-常用的方法,void ensureCapacity(int size)设置StringBuffer对象的缓冲区容量 s1.ensureCapacity(50);System

33、.out.println(s1.capacity();,例如:StringBuffer s1=new StringBuffer(Hello),50,NCEPU,StringBuffer类-常用的方法,void setLength(int len)设置StringBuffer对象字符长度 s1.setLength(2);System.out.println(s1);,例如:StringBuffer s1=new StringBuffer(Hello),He,NCEPU,StringBuffer类-常用的方法,StringBuffer append(Object obj)连接StringBuffe

34、r对象 System.out.println(s1.append(World);System.out.println(s1);,例如:StringBuffer s1=new StringBuffer(Hello),Hello World,Hello World,NCEPU,向量(Vector)是java.util类包提供的一个工具类。它对应于类似数组的顺序存储的数据结构,但是具有比数组更强大的功能。它是允许不同类型元素共存的变长数组。每个Vector类的对象可以表达一个完整的数据序列。,第三节 向量,NCEPU,Vector类的对象不但可以保存顺序的一列数据,而且还提供了许多有用的方法来操作和

35、处理这些数据。Vector类对象所表达的序列中元素的个数是可变的,即Vector实现了变长数组。,Vector类,NCEPU,Java中的数组只能保存固定数目的元素,且必须把所有需要的内存单元一次性的申请出来,而不能先创建数组再追加数组元素数量。为了解决这个问题Java中引入了向量类Vector。Vector也是一组对象的集合,但相对于数组,Vector可以追加对象元素数量,可以方便的修改和维护序列中的对象。,Vector类,NCEPU,向量比较适合在如下情况下使用:1.需要处理的对象数目不定,序列中的元素都是对象或可以表示为对象 2.需要将不同类的对象组合成一个数据序列 3.需要做频繁的对象

36、序列中元素的插入和删除,Vector类,NCEPU,向量比较适合在如下情况下使用:4.经常需要定位序列中的对象和其他查找操作 5.在不同的类之间传递大量的数据 Vector类的方法相对于数组要多一些,但是使用这个类也有一定的局限性,例如其中的对象不能是简单数据类型等。,Vector类,NCEPU,(1)创建向量类的对象 Vector类有三个构造方法:Vector():构造一个空的向量。Vector(int capacity):以指定的存储容量构造一个空的向量。Vector(int capacity,int capacityIncrement):以指定的存储容量和容量增量构造一个空的Vector

37、。,Vector类,Vector MyVector=new Vector(100,50);,在创建Vector序列时,不需要指明序列中元素的类型,可以在使用时确定。,这样创建的MyVector向量序列初始有100个元素的空间,以后一旦使用殆尽则以50为单位递增,使序列中元素的个数变化成150,200,。,NCEPU,(2)向向量序列中添加元素:addElement(Object obj)将新元素添加到序列尾部。add(Object obj)将新元素添加到序列尾部。insertElementAt(Object obj,int index)将新元素插入到指定位置。,Vector类,NCEPU,Ve

38、ctor类,import java.util.*;class Test public static void main(String arg)Vector MyVector=new Vector();for(int i=1;i=10;i+)MyVector.addElement(new Integer(i);MyVector.insertElementAt(middle,5);for(int i=0;i=10;i+)System.out.println(MyVector.elementAt(i);,运行结果:12345middle678910,NCEPU,(3)修改或删除向量序列中的元素 1.

39、setElementAt(Object obj,int index)将向量序列index位置处的对象元素设置成为obj,如果这个位置原来有元素,则被覆盖。2.removeElement(Object obj)删除向量序列中第一个与指定的obj对象相同的元素,同时将后面的元素前提,补上空位。这个方法返回的是布尔值。3.removeElementAt(int index)删除index指定位置处的元素,同时将后面的元素前提。,Vector类,Vector MyVector=new Vector(100);for(int i=0;i10;i+)MyVector.addElement(“welcome

40、”);MyVector.addElement(“to”);MyVector.addElement(“beijing”);while(MyVector.removeElement(“to”);,NCEPU,4.removeAllElements()清除向量序列中的所有元素。,Vector类,NCEPU,(4)查找向量序列中的元素1.Object elementAt(int index)返回指定位置处的元素。一个要注意的问题:由于返回的是Object类型的对象,在使用之前通常需要进行强制类型转换,将返回的对象引用转换成Object类的某个具体子类的对象。例如:String str=(String)

41、MyVector.elementAt(0);2.boolean contains(Object obj)检查向量序列中是否包含指定的对象元素obj。,Vector类,NCEPU,3.int indexOf(Object obj,int start_index)从指定的start_index位置开始向后搜索,返回所找到的第一个与指定对象obj相同的元素的下标位置。若指定的对象不存在,则返回1。4.int lastIndexOf(Object obj,int start_index)从指定的start_index位置开始向前搜索,返回所找到的第一个与指定对象obj相同的元素的下标位置。若指定的对象

42、不存在,则返回1。,int i=0;While(i=MyVector.indexOf(“welcome”,i)!=-1)System.out.println(i);i+;,Vector类,NCEPU,(5)Vector中的其他方法capacity():返回Vector的容量 clone():建立Vector的备份copyInto(Object):把Vector中的元素拷贝到一个数组中firstElement():返回第一个元素lastElement():返回最后一个元素isEmpty():判断是否为空setSize(int size):设置Vector的大小size():返回Vector中元素

43、的数量trimToSize():将Vector的容量下调至最小值,Vector类,NCEPU,使用Vector时,一个需要特别注意的问题就是要先创建后使用。如果不先使用new运算符利用构造方法创建Vector类的对象,而直接使用Vector的方法,如:add()等方法,则可能造成堆栈溢出或使用null指针等异常,妨碍程序的正常运行。,Vector类,NCEPU,例题:用向量实现,创建3个学生对象(学号、姓名、年龄)和4个教师对象(教工号、姓名、系别),并且输出。,Vector类,NCEPU,Vector类,import java.util.*;class Stu String xh;Strin

44、g xm;int nl;Stu(String xh1,String xm1,int nl1)xh=xh1;xm=xm1;nl=nl1;void disp()System.out.println(学生:+xh+xm+nl);,NCEPU,Vector类,class TechString zh;String xm;String xb;Tech(String zh1,String xm1,String xb1)zh=zh1;xm=xm1;xb=xb1;void disp()System.out.println(教师:+zh+xm+xb);,NCEPU,Vector类,public class Stu

45、Terpublic static void main(String s)Vector st=new Vector();st.add(new Stu(101,李明,18);st.add(new Stu(102,王大力,20);st.add(new Stu(103,刘萍,19);st.add(new Tech(10100,林小利,计算机);st.add(new Tech(10101,熊平,计算机);st.add(new Tech(10102,戴红兵,电力);st.add(new Tech(10103,曲小军,电力);,NCEPU,for(int i=0;ist.size();i+)if(st.el

46、ementAt(i)instanceof Stu)(Stu)(st.elementAt(i).disp();else(Tech)(st.elementAt(i).disp();,Vector类,NCEPU,NCEPU,1.用数组实现,创建3个学生对象(学号、姓名、年龄)和4个教师对象(教工号、姓名、系别),并且输出。2.编程实现判断字符串1是否在字符串2中出现,如果出现,则用字符串3替换。如:串1:563ty23tyio 串2:ty 串3:abc 结果:563abc23abcio3.用二维数组实现,5个学生7门课程的总分和平均分的统计工作。(要求用两个类实现),作业,NCEPU,课堂练习,cl

47、ass erweishuzu/分析运行结果 public static void main(String arg)int a=new int3;int i,j;a0=new int2;a1=new int3;a2=new int4;for(i=0;ia.length;i+)for(j=0;jai.length;j+)aij=i+j;System.out.print(aij+”);System.out.println();,NCEPU,如何从键盘上读取数据,import java.util.*;class InputKeyBoard public void inputInt()/用空格做分隔符如

48、:1 2 3#回车 Scanner s=new Scanner(System.in);/用逗号做分隔符,如:1,2,3,#,回车/Scanner s=new Scanner(System.in).useDelimiter(s*,s*);while(s.hasNextInt()int a=s.nextInt();System.out.println(a);s.close();,NCEPU,例:,NCEPU,运行结果:0,11,2,3,2,3,4,5,,0 1,1 2 3,2 3 4 5,a,a0,a1,a2,NCEPU,class AnDianpublic static void main(St

49、ring arg)int a=2,4,3,8,9,1,3,5,4,17,2,6,1,4,10;int max,min,i,j,k,m;,求二维数组的鞍点(行中最大,列中最小),NCEPU,for(i=0;imax)max=aij;m=j;,求二维数组的鞍点(行中最大,列中最小),NCEPU,min=aim;for(k=0;k3;k+)/找列中的最小值 if(akmmin)min=akm;if(max=min)/判断最大和最小是否相等 System.out.println(第+(i+1)+行有鞍点,是+aim);else System.out.println(“第”+(i+1)+“行没有鞍点。”

50、);,求二维数组的鞍点(行中最大,列中最小),NCEPU,运行结果:第1行有鞍点,是9。第2行没有鞍点。第3行没有鞍点。,2,4,3,8,91,3,5,4,172,6,1,4,10,求二维数组的鞍点(行中最大,列中最小),NCEPU,class zcfpublic static void main(String arg)String str1=12abc56rg;String str2=sfabc16;int i,j,k;,找两个字符串出现的相同子串,NCEPU,for(i=1;i=str1.length();i+)/子串的长度 for(j=0;j=str1.length();j+)for(k

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号