Java语言基础类

1

package case1;

import java.util.Scanner;

public class ObjectTest {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int num1 = sc.nextInt();
		int num2 = sc.nextInt();
		// 在测试类中创建Demo类对象d1,传入输入值num1, d1调用toString方法并打印输出该值
		// 创建Demo类对象d2,同样传入输入值num1,打印判断d1和d2是否相等(实际是比较地址)
		/********* Begin *********/
          Demo d1=new  Demo(num1);
          Demo d2=new  Demo(num1);
          System.out.println(d1.toString());
        if(d1.equals(d2)) 
        {
			System.out.println("true");
		}else 
        {
			System.out.println("false");
		}
		/********* End *********/
		// 创建Person类对象p,传入输入值num2,打印判断d1和p是否相等(实际是比较地址)
		/********* Begin *********/
          Person p=new Person(num2);
       if(d1.equals(p)) 
        {
			System.out.println("true");
		}else 
        {
			System.out.println("false");
		}
		/********* End *********/
	}
}

class Demo {
	private int num;

	public Demo(int num) {
		this.num = num;
	}

	public boolean equals(Object obj) // Object obj = new Demo()
	{
		if (!(obj instanceof Demo)) // 判断obj是否和Demo是同类
			return false;
		Demo d = (Demo) obj; // 将父类的引用(Object)向下转换为子类(Demo)
		return this.num == d.num;
	}

	public String toString() {
		return "Demo:" + num; // 返回对象的值(每一个对象都有自己的特定的字符串)
	}
}

class Person {
	private int num;

	public Person(int num) {
		this.num = num;
	}
}

2

package case3;

import java.util.Scanner;

public class StringTest {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String str = sc.next();
		// String substring(int start,int end)
        // 截取字符串,传入的两个参数分别为要截取边界的下标
        // 在java api 中,通常使用两个数字表示范围时,都是含头不含尾,即包含起始下标对应的内容,但不包含结束下标的处对应的内容
        // String toUpperCase() 将当前字符串中的英文部分转换为全大写
		/********* Begin *********/
        str=str.substring(str.indexOf(".")+1);
        str=str.substring(0,str.indexOf("."));
        System.out.println(str);
        System.out.println(str.toUpperCase());

		/********* End *********/
	}
}

3

package case2;

import java.util.Scanner;

public class WrapperTest {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int aa = sc.nextInt();
		String bb = sc.next();
		int c = sc.nextInt();
		String str11 = sc.next();
		String str22 = sc.next();
		// 包装类中“==”与equals的用法比较
		// 值得注意的是,包装类中的equals方法和String类一样,都是重写了Object类中的equals方法,因此比较的是内容而不是地址,
		// 而“==”比较的依然是引用变量的地址,只是当包装类型和与之相对应的基本类型进行“==”比较时会先做自动拆箱处理。
		/********* Begin *********/
Integer a=  new Integer(aa);
Integer b = new Integer(bb);
String str1=str11;
String str2=str22;
System.out.println(a==b);
System.out.println(a==c);//和常量相比
System.out.println(b==c);//和常量相比
System.out.println(a.equals(b));
System.out.println(str1==str2);
System.out.println(str1.equals(str2));

		/********* End *********/
	}
}

4

package case6;

import java.util.Scanner;
import java.lang.Math;

public class MathTest {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int a1 = sc.nextInt();
		int a2 = sc.nextInt();
		int a3 = sc.nextInt();
		int a4 = sc.nextInt();
		double a5 = sc.nextDouble();
		double a6 = sc.nextDouble();
		double a7 = sc.nextDouble();
		double a8 = sc.nextDouble();
		double a9 = sc.nextDouble();
		double a10 = sc.nextDouble();
		double a11 = sc.nextDouble();
		/********* Begin *********/
        System.out.println(Math.sqrt(a1));
        System.out.println(Math.cbrt(a2));
        System.out.println(Math.pow(a3,a4));
        System.out.println(Math.max(a5,a6));
        System.out.println(Math.min(a5,a6)); 
        System.out.println(Math.abs(a7));
        System.out.println(Math.ceil(a8));  
        System.out.println(Math.floor(a9)); 
        System.out.println(Math.rint(a10));
        System.out.println(Math.round(a11));
		/********* End *********/
	}
}

5

package case4;
import java.util.Random;
import java.util.Scanner;

public class RandomTest {
	public static void main(String[] args) {
		char[] a = new char[62];
        int seed;
        int i;
        Scanner sc = new Scanner(System.in);
		seed = sc.nextInt();
        Random r = new Random(seed);
        for(i=0;i<26;i++)
        {
            a[i]=(char)('A'+i);
        }
        for(i=26;i<52;i++)
        {
            a[i]=(char)('a'+(i-26));
        }
        for(i=52;i<62;i++)
        {
            a[i]=(char)('0'+(i-52));
        }
        for(i=0;i<6;i++)
        {
            int n = r.nextInt(62);
            System.out.print(a[n]);
        } 
		/********* End *********/
	}
}

6

package case5;

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

public class DateTest {
	public static void main(String[] args) throws ParseException {
		// 键盘录入你的出生年月日 格式为yyyy-MM-dd
		// 把该字符串转换为一个日期
		// 通过该日期得到一个毫秒值
		// 获取2020年10月1日的毫秒值
		// 两者想减得到一个毫秒值
		// 把该毫秒值转换为天 打印输出
		Scanner sc = new Scanner(System.in);
		String line = sc.nextLine();
		/********* Begin *********/
        SimpleDateFormat ft = new SimpleDateFormat(
                "yyyy-MM-dd");
        Date d1;
        d1=ft.parse(line);
        Date d2;
        d2=ft.parse("2020-10-01");
        long start=d1.getTime();
        long end=d2.getTime();
        long time=end-start;
        long day=time/86400000;
        System.out.println("你的出生日期距离2020年10月1日:" + day + "天");
		/********* End *********/
	}
}

你可能感兴趣的:(Java语言基础类)