项目5 Java的常用基础类的使用
实验目的:掌握Java中一维数组的使用;掌握Java中二维数组的使用;掌握Java中向量的使用。掌握String类字符串的使用方法;掌握StringBuffer字符串的使用方法;掌握两种字符串的区别。
实验性质:验证性实验+设计性实验
实验内容:(1)分析调试教材第5、6章中的实例
(2)利用Random类随机生成[0,100]范围内的30个数,统计各数据区间的元素个数。数据区间有[0,59],[60,69],[70,79],[80,89],[90,100]。
package 实验五;
import java.util.Random;
public class Frist{
public static void main(String[] args) {
Random r=new Random();
int a[]=new int[30];
int sum1=0;//统计[0,59]
int sum2=0;//[60,69]
int sum3=0;//[70,79]
int sum4=0;//[80,89]
int sum5=0;//[90,100]
for(int i=0;i<30;i++)
{
a[i]=r.nextInt(101);//[0-100]
}
for(int i=0;i<30;i++)
{
if(0<=a[i]&&a[i]<60)
sum1++;
if(60<=a[i]&&a[i]<70)
sum2++;
if(70<=a[i]&&a[i]<80)
sum3++;
if(80<=a[i]&&a[i]<90)
sum4++;
if(90<=a[i]&&a[i]<=100)//注意等于100
sum5++;
}
System.out.println("[0,59]的数:"+sum1);
System.out.println("[60,69]的数:"+sum2);
System.out.println("[70,79]的数:"+sum3);
System.out.println("[80,89]的数:"+sum4);
System.out.println("[90,100]的数:"+sum5);
}
}
(3)定义一个长度为10的整形数组,并随机生成10个元素,再将数组中的元素进行升序排列。
package 实验五;
import java.util.Random;
public class Second {
public static void main(String[] args) {
Random r=new Random();
int a[]=new int[10];
int i=0,j=0;
for(i=0;i<10;i++)//随机生成[0,100]
{
a[i]=r.nextInt(101);
}
System.out.print("排序前:");
for(i=0;i<10;i++)
{
System.out.print(+a[i]+"、");
}
//冒泡排序
for(i=0;i<10;i++)
{
for(j=0;j<10-i-1;j++)
{
if(a[j+1]<a[j])
{
int t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
}
}
System.out.println();
System.out.print("排序后:");
for(i=0;i<10;i++)
{
System.out.print(+a[i]+"、");
}
}
}
结果如下:
(4)检查输入的字符串是否是回文,所谓回文是指一个字符串正序读和逆序读都一样,比如“234432”、“我爱我”、“level”等都是回文。用两种方法实现。
package 实验五;
import java.util.Scanner;
public class Huiwen {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String s=sc.nextLine();//输入一个字符串
StringBuffer s1=new StringBuffer(s);//将内容保存在StringBuffer类中
String s2=new String(s1.reverse());//将内容翻转保存在String类中
System.out.print(s);
//System.out.println(s2);
if(s.equals(s2))
{
System.out.println("是回文");
}
else
System.out.println("不是回文");
}
}
//第二种
package 实验五;
import java.util.Scanner;
public class Huiwen2 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String s=sc.nextLine();//输入一个字符串
char c[]=s.toCharArray();
/*或者char c[]=new char[s.length()];
然后使用s.getChars(0, s.length(), c, 0);替换*/
System.out.print(c);
int i=0;
//比较是否回文
for(i=0;i<(int)c.length/2;i++)
{
if(c[i]==c[c.length-i-1])
;//continue;
else
break;
}
if(i==(int)c.length/2)
System.out.println("是回文");
else
System.out.println("不是回文");
}
}
(5)输入一批考生的准考证号码,如果是15位,表示输入正确,否则重新输入。然后判断并显示这个人的考试类型(号码如果以奇数结尾,考试类型为A,否则为B),最后输出此准考证的前五位和后四位,其余的用*代替。
package 实验五;
import java.util.Scanner;
public class Zhunkaozheng {
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
System.out.print("输入准考证号码(15位):");
String s=sc.nextLine();
while(true)//判断是否15位
{
if(s.length()!=15)
{
System.out.print("请重新输入:");
s=sc.nextLine();
}
else
break;
}
if((int)(s.charAt(s.length()-1)-'0')%2==1)//最后一个先转为char再转int类型
{
System.out.println("考试类型为:A");
}
if((int)(s.charAt(s.length()-1)-'0')%2==0)//最后一个先转为char再转int类型
{
System.out.println("考试类型为:B");
}
//第一种方法
System.out.print("准考证号码:"+s.substring(0, 5)+"******"+s.substring(11,15));
System.out.println("(第一种方法)");
//第二种方法
String str="******";
StringBuffer s1=new StringBuffer(s);
s1.replace(5, 11, str);
System.out.print("准考证号码:"+s1);
System.out.println("(第二种方法)");
}
}
- 😃联系交流QQ:2283093518