欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    JAVA第7章数组与字符串.ppt

    • 资源ID:6510069       资源大小:1.33MB        全文页数:36页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    JAVA第7章数组与字符串.ppt

    第7章 数组与字符串,7.1 数组7.2 字符串,7.1.1 一维数组的定义,声明一维数组的语法:数据类型 数组名;或 数据类型 数组名;,7.1 数组,数组名就是数组的引用变量名,在使用数组时,要先指定数组的元素个数,再为各数组元素分配内存空间并进行赋值,然后通过数组的下标来使用数组中的每一个元素。,指定一维数组元素个数,7.1 数组,为数组分配空间(指定数组元素个数):数组名=new 数据类型元素个数;例定义一个保存全班5个同学成绩的数组:int score;/声明数组scorescore=new int5;/指定数组score的例定义一个保存全班26个字母的数组:char ch;ch=new int26;,上面的数组定义和指定数组元素的两个语句可以合并为一条:数据类型 数组名=new 数据类型元素个数;或者数据类型 数组名=new 数据类型元素个数;int score=new int5;或者char ch=new char26;,7.1 数组,一旦声明了数组的元素个数,数组的大小就不能再改变了,此时java将数组的引用变量名作为一个对象处理,并提供了属性length,可以直接获取数组元素的个数。例如:获取数组的元素个数(score.length);,7.1 数组,一维数组的长度,数组中每个元素都有一个唯一的下标与之对应,下标编号总是从0开始。可以利用数组名和下标来对该元素进行访问。访问数组元素的格式:数组名 下标,7.1 数组,一维数组元素的访问,7.1 数组,例:数组定义为int score=new int5;为数组的元素赋值:score0=98;score1=86;score2=75;score3=55;score4=65;,一维数组元素的赋值,Java中还提供了另外一种直接创建数组的方式,它将声明数组、分配空间和赋值合并完成。,7.1 数组,数据类型 数组名=值1,值2,值3,值n;或 数据类型 数组名=值1,值2,值3,值n;或 数据类型 数组名=new 数据类型 值1,值2,值3,值n,例:int score=60,70,80,90,55;char score=new char A,B,C;,一维数组元素的赋值,为数组中每个元素赋值可以使用循环结构。,7.1 数组,例:使用循环依次录入5个学生的成绩System.out.println(依次录入5个同学的成绩:);Scanner sc=new Scanner(System.in);int score=new int5;for(int i=0;i5;i+)scorei=sc.nextInt();,一维数组元素的赋值,数组元素可以是简单数据类型的数据,也可以是类对象,如果数组元素为类对象则该数组被称为对象数组。,7.1 数组,例:定义包含10个同学的对象数组Student stu=new Student10;for(int i=0;i10;i+)stui=new Student();,【例】输入5个同学的Java考试成绩,并输出总成绩,最高分,并把5个同学的Java考试成绩按照升序排列,并输出排序后的结果。,7.1 数组,import java.util.Arrays;import java.util.Scanner;public class Score public static void main(String args)int score=new int5;int max,sum=0;Scanner input=new Scanner(System.in);System.out.println(请输入5位学员的成绩:);for(int i=0;i max)max=scorej;System.out.println(最高分是:+max);,7.1 数组,Arrays.sort(score);System.out.println(成绩按升序排序:);for(int index=0;index score.length;index+)System.out.print(scoreindex+);,给定一个数组3,78,56,43,21,65,34,78,97,先输出排序前的数组,要求自己编写排序算法,按照升序排序输出;,7.1.2 二维数组,7.1 数组,二维数组的声明格式:数据类型 二维数组名;或 数据类型 二维数组名;,二维数组在声明时进行初始化:数据类型 二维数组名=序列0,序列1,序列n;或 数据类型 二维数组名=new数据类型行数;或 数据类型 二维数组名=new数据类型行数列数;,7.1 数组,例:char str;/声明一个字符型二维数组int intArray=1,2,2,3,3,4,5;/初始化double doubleArr=new double30;long longArr=new long1020;,7.1 数组,二维数组在定义时若没有初始化,则必须在使用前对每一维进行初始化doubleArr0=new double3;doubleArr1=new double5;doubleArr29=new double4;,例:可以通过嵌套的for语句为列数相等的二维数组赋值:long longArr=new long1020;System.out.println(依次录入long1020的每个元素值:);Scanner sc=new Scanner(System.in);for(int i=0;i10;i+)for(int j=0;j20;j+)longArrij=sc.nextLong();例:可以通过嵌套的for语句为列数相等的二维数组输出元素之:int intArray=1,2,5,2,3,8,3,4,7;for(int i=0;i3;i+)for(int j=0;j3;j+)System.out.print(intArrayij+);System.out.println();,7.1 数组,例:计算二维数组1,2,5,2,3,8,3,4,7所有元素之和:int intArray=1,2,5,2,3,8,3,4,7;int sum=0;for(int i=0;i3;i+)for(int j=0;j3;j+)sum=sum+intArrayij;System.out.println(sum);运行结果是:35,7.1 数组,【例7-4】实现两个矩阵相乘。实现时使用三个二维数组存储参与运算的两个矩阵数据和一个结果矩阵数据。,7.1 数组,public class MatricMultiply static void Print(int a,int row,int col)/输出矩阵a数据 int i,j;System.out.println(矩阵:);for(i=0;irow;i+)for(j=0;jcol;j+)System.out.print(aij+);System.out.println();,public static void main(String args)int i,j,k;int a=new int 23;/定义并初始化一个二维数组a int b=1,5,2,8,5,9,10,-3,2,7,-5,-18;/定义并初始化/一个二维数组b int c=new int24;/定义并初始化一个二维数组c for(i=0;i2;i+)/为矩阵a中各元素赋初值 for(j=0;j3;j+)aij=(i+1)*(j+2);Print(a,2,3);/输出矩阵a System.out.println(乘以);,7.1 数组,Print(b,3,4);/输出矩阵b for(i=0;i2;i+)for(j=0;j4;j+)cij=0;for(k=0;k3;k+)cij+=aik*bkj;System.out.println(等于);Print(c,2,4);/输出结果矩阵c,7.1 数组,回目录,7.2 字符串,7.2.1 字符串的表示,字符串直接使用双引号(“)将字符序列括在其中,例:“Hello World!”字符串常量都是String类的常量对象,因此可以用字符串常量直接初始化一个String对象。String s=“hello java;,String类的构造方法:String()创建空String对象String(String str)用str创建一个新的String对象String(char chars)String(byte ascii)String(StringBuffer strB),7.2 字符串,例:String s1;s1=new String(“abc”);String s2=new String(“abc”);String s3=new String();创建String对象后,字符串的长度和内容都是不可以改变的,7.2 字符串,【例7-5】用String类的length()方法的获取字符串的长度,代码如下:import java.util.Scanner;public class Len public static void main(String args)System.out.print(请随机输入你想到的名字:);Scanner input=new Scanner(System.in);String name=input.next();System.out.println(这个名字的长度是:+name.length()+);,7.2 字符串,动态字符串StringBuffer可以动态的修改字符串变量构造方法:StringBuffer()StringBuffer(int length)StringBuffer(String str);,7.2 字符串,例:StringBuffer String s2=new StringBuffer(“abc”);,7.2.2 字符串的操作,7.2 字符串,类String中常用的方法:length()/获取字符串的长度charAt(int i)/返回指定索引处的 char 值。indexOf(char c)/返回指定字符在此字符串中第一次出现处的索引。getBytes(String charsetName)/使用指定的字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。,类String和类StringBuffer提供的部分修改字符串方法:,1、String类提供的方法public String concat(String str);public String replace(char oldChar,char newChar);,7.2 字符串,public String subString(int beginIndex);public String subString(int beginIndex,int ndIndex);public String toLowerCase();public String toUpperCase();,2、StringBuffer类提供的方法public synchronized StringBuffer append(String str);public synchronized StringBuffer insert(int offset,String str);public synchronized void setCharAt(int index,char ch);,7.2 字符串,1、String中对字符串的操作不是对源操作串对象本身进行的,而是对新生成的一个源操作串对象的拷贝进行的,其操作的结果不影响源串2、StringBuffer中对字符串的修改操作是对源串本身直接进行的,操作之后源串的值发生了变化。StringBuffer维护一个大小固定的字符串缓冲区,当字符串长度超过StringBuffer大小时会自动增加,7.2 字符串,注意:,【例7-6】用StringBuffer类调用append方法对字符串进行追加import java.util.*;public class Kecheng public static void main(String args)StringBuffer str=new StringBuffer(“hello”);str.append(“student”);System.out.println(str);,7.2 字符串,String中equals()和equalsIgnoreCase()方法与运算符“=”实现的比较:运算符“=”比较两个对象是否引用同一个实例 equals()和equalsIgnoreCase()比较两个字符串中对应的每个字符值是否相同。,7.2 字符串,例:String s1=new String(“abc”);String s2=new String(“abc”);boolean eq=(s1=s2);/eq值为falseboolean eq1=s1.equals();/eq1值为true 运算符“+”可用来实现字符串的连接,其他类型的数据与字符串进行“+”运算时,将自动转换成字符串。String s=He is+37+years old.;,7.2 字符串,7.3 综合应用实例,【实例7】,问题描述:将用户输入的多门课程信息和该课程的学生信息及其成绩信息进行整理,按输入顺序将各学生的信息输出。另外,按每个学生的总分由高至低将各学生的信息输出。问题实现:在本实例中,定义了主类grade和学生类Student。Student类中定义了学生的各种信息属性和根据用户的输入信息来初始化课程、学生各种信息的方法以及输出这些信息的方法。主类中创建了学生类的对象数组,定义了Init()方法用于读取用户输入的学生信息,Display()方法用于输出学生的各种信息,SortByTotal()方法用于根据各学生的总分高低来排序后输出学生的各种信息。代码略。,回目录,

    注意事项

    本文(JAVA第7章数组与字符串.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开