数组、向量和字符串 实验

编程实验

72人已加入

描述

实验 5 数组、向量和字符串
一、实验目的
1. 掌握Java中的数组定义、引用
2. 掌握向量的基本概念和应用技术
3. 掌握使用字符串String类处理字符串的方法
4. 掌握使用字符串StringBuffer类处理字符串的方法
二、实验要求
1. 编写一个使用 Java 数组的的程序。
2. 掌握向量类的使用方法。
3. 掌握字符串类的使用方法。
三、实验内容
(一)使用数组
1. 建立使用数组的程序,本程序建立了一个长度为 5 的 1 维数组,一个长度为 12 的 2 维数组
¨ 源代码如下。
public class KY5_1 {
      public static void main(String args[]) {
        int a[]=new int[5];
        int arr1[][]=new int[3][4];
        a[0]=10;
        a[1]=10+a[0];
        a[2]=30;
        a[3]=40;
        a[4]= a[1]+ a[2];
        arr1[0][0]=0; arr1[0][1]=1; arr1[0][2]=2;
        arr1[1][0]=3; arr1[1][1]=4; arr1[1][2]=5;
        arr1[2][0]=6; arr1[2][1]=7; arr1[2][2]=8;
        System.out.println("a["+0+"] = "+a[0]);
        System.out.println("a["+1+"] = "+a[1]);
        System.out.println("a["+2+"] = "+a[2]);
        System.out.println("a["+3+"] = "+a[3]);
        System.out.println("a["+4+"] = "+a[4]);
        System.out.println("arr1("+0+","+0+") = "+arr1[0][0]);
        System.out.println("arr1("+0+","+1+") = "+arr1[0][1]);
        System.out.println("arr1("+0+","+2+") = "+arr1[0][2]);
        System.out.println("arr1("+1+","+0+") = "+arr1[1][0]);
        System.out.println("arr1("+1+","+1+") = "+arr1[1][1]);
        System.out.println("arr1("+1+","+2+") = "+arr1[1][2]);
      }
}
¨ 编译并运行程序
2. 编程实现Fibonacci数列。
¨ Fibonacci数列的定义为:
 F1=1,
 F2=1,
 …
 Fn=Fn-1+Fn-2       (n>=3)
¨ 提示:关键代码如下:
        f[0]=f[1]=1;
        for(i=2;i<10;i++)
               f[i]=f[i-1]+f[i-2];

3. 编程采用冒泡法实现对数组元素由小到大排序。
¨ 冒泡法排序对相邻的两个元素进行比较,并把小的元素交换到前面。

¨ 提示:关键代码如下:
        for(i=0;i            for(j=i+1;j                  if(intArray[i]>intArray[j]){
                      t=intArray[i];intArray[i]=intArray[j];intArray[j]=t;
            }
(二)使用向量类
大多数编程语言中的数组是固定长度的,即数组一经建立就不能在使用过程中改变其长度。Java
引入Vector 类来创建可以改变长度的变量。Vector 被设计成一个能不断增长的序列,它类似于可变长数组,但功能更加强大,因为任何类型的对象都可以放入Vector 类的对象中。通过调用Vector 封装的方法,可以随时添加或删除向量元素,以及增加或缩短向量序列的长度。
1. 创建使用Vector 向量类的应用程序
2. 程序功能:创建一个Vector 对象v,先通过键盘为args[]输入两个分量,然后赋值给对象v,并通过直接方式为其分量赋值。
3. 编写KY5_2.java 程序文件
import java.util.*;
public class KY5_11{
public static void main(String args[]) {
Vector v=new Vector(1,1);
v.addElement(args[0]); //在向量尾部添加元素
v.addElement(args[1]);
v.addElement("3"); //在向量尾部添加元素
v.insertElementAt("0",0);//在指定位置插入元素
v.insertElementAt("aaa 字符串元素",3);
v.setElementAt("4",4);//替换指定位置的元素
v.addElement("5");
System.out.println("第4 号元素为:"+v.elementAt(4));
Enumeration enum=v.elements();//枚举化对象,以便逐个取出元素
StringBuffer buffer=new StringBuffer();//字符串缓冲区
while(enum.hasMoreElements())
buffer.append(enum.nextElement()).append(",");
buffer.deleteCharAt(buffer.length()-1);
System.out.println("向量v 的所有元素:"+buffer.toString()+"\n");
System.out.println("向量v 的元素个数="+v.size()+" v 的长度为:"+v.capacity()+"\n");
v.removeAllElements();
System.out.println("删除后元素个数:"+v.size()+" 向量v 长度:"+v.capacity()+"\n");
}
}
4. 编译并运行程序
(三)使用字符串与字符串类
1. 编写 KY5_3.java 程序文件,源代码如下。
        import java.applet.Applet;
        import java.awt.Graphics;
        public class KY5_2 extends Applet {
          public void paint(Graphics g) {
            String str="这是一个字符串——This is a test string";
            g.drawString("正常字符串:"+str, 30, 30);
            g.drawString("翻转字符串:"+reverse(str), 30, 60);
          }
          public String reverse(String s) {
            int len=s.length();
            StringBuffer buffer=new StringBuffer(len);
            for (int i=len-1; i>=0; i--)
              buffer.append(s.charAt(i));
            return buffer.toString();
          }
        }
2. 编译 KY5_2.java 程序文件。
3. 编写显示 KY5_2.class 的页面文件 KY5_2.html,源代码如下。
       
       
         

       
4. 在浏览器打开 KY5_2.html 文件

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分