实验四 JAVA实用类库及其应用

实验四 JAVA实用类库及其应用

一、实验目的
1.掌握Math、BigerInteger类的使用。
2.掌握String类和StringBuffer类的使用
3.掌握Date、Calendar的使用。
二、实验内容

1.编写Application程序, 从命令行参数输入10个整数并保存在数组中,求数组中最大、最小、数据的和、平均值。

2将一个字符串数组中的完成大小写字母转换。要求:使用对象数组。

3.编写一个应用程序,使用StringBuffer类中的方法,完成给定字符串的追加、删除和替换。

4.编写一个应用程序,用户从键盘输入一行含有数字字符的字符串,程序仅仅输出字符串中的全部数字字符。

5.编写一个应用程序,使用SimpleDateFormat类按你设置的格式显示某面某月某日某时,星期几。

6.编写一个应用程序,使用BigInteger类实现计算大整数的阶乘。


三、代码实现:

1.

应用eclipse编写程序,需要在命令行如此传参:

Run run... (x=)ArgumentsProgram arguments->1 2 3 4 5 6 7 8 9 10


package cn.edu.nefu.zhihu;

public class Application {

	public static void main(String[] args) {
		double n,sum=0.0;
		double max,min;
		max=min=Double.parseDouble(args[0]);
		for(int i=0;i<args.length;i++){
			
			sum+=Double.parseDouble(args[i]);
			if(Double.parseDouble(args[i])>max){
				max=Double.parseDouble(args[i]);
			}
			if(Double.parseDouble(args[i])<min){
				min=Double.parseDouble(args[i]);
			}
		}
		System.out.println("十个数中的最大值为: "+max);
		System.out.println("十个数中的最小值为: "+min);
		System.out.println("十个数的和为: "+sum);
		n=sum/args.length;
		System.out.println("十个数的平均数为: "+n);
	}
}


2.

package cn.edu.nefu.zhihu;

public class Change {

	
	public static void main(String[] args) {
		String s=new String("aBcDEfgh");
		char []str;
		str=s.toCharArray();
		for(int i=0;i<str.length;i++){
			if(Character.isLowerCase(str[i])){
				str[i]=Character.toUpperCase(str[i]);
			}
			else if(Character.isUpperCase(str[i])){
				str[i]=Character.toLowerCase(str[i]);
			}
		}
		for(char c:str){//增强的for循环
			System.out.print(c);
		}
		System.out.println();
	}
}


3.

具体实现: //0123456789:缺斤少两+丢三落四+七上八下+画蛇添足


package cn.edu.nefu.zhihu;

public class StrBuffer {

	public static void main(String[] args) {
		StringBuffer s=new StringBuffer("012568710");
		s.insert(3,'3');
		s.insert(4,'4');
		System.out.println("除掉丢三落四后: "+s);
		s.delete(9,11);
		System.out.println("除掉画蛇添足后: "+s);
		s.setCharAt(7,'7');
		s.setCharAt(8,'8');
		System.out.println("除掉七上八下后: "+s);
		s.append(9);
		System.out.println("除掉缺斤少量后: "+s);
	}
}


4.

package cn.edu.nefu.zhihu;
import java.util.Scanner;
public class OnlyShuzi {

	public static void main(String[] args) {
		Scanner reader=new Scanner(System.in);
		String s;
		while(reader.hasNext()){
			s=reader.nextLine();
			char str[]=s.toCharArray();
			for(char c:str){
				if(Character.isDigit(c)){
					System.out.print(c+" ");
				}
			}
			System.out.println();
		}
	}
}

5.

package cn.edu.nefu.zhihu;

import java.text.SimpleDateFormat;
import java.util.Date;

public class DataGirl {

	public static void main(String[] args) {
		Date nowTime=new Date();
		//String []str=new String[10];
		System.out.println("现在的时间: "+nowTime);
		SimpleDateFormat matter=new SimpleDateFormat("'BeiJing Time':yyyy-MM-dd HH:mm:ss (a) E ");
		System.out.println("DateGirl的时间必须要清楚~");
		System.out.println("现在是北京时间:  "+matter.format(nowTime));
	}
}

6.

package cn.edu.nefu.zhihu;

import java.math.BigInteger;
import java.util.Scanner;

public class Jc {

	public static void main(String[] args) {
		Scanner reader=new Scanner(System.in);
		while(reader.hasNextBigInteger()){
			
			BigInteger n=reader.nextBigInteger();
			BigInteger one=BigInteger.valueOf(1);
			BigInteger sum=BigInteger.valueOf(1);
			BigInteger i=BigInteger.valueOf(1);
			while(n.compareTo(i)>=0){
				sum=sum.multiply(i);
				i=i.add(one);
			}
			System.out.println(sum);
		}
	}
}


  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值