JAVA常用类

JAVA常用类

1. Object - 对象

介绍Object类
	-Object是所有类的基类,所有类直接继承它或间接继承它,这里我详细介绍它内部的方法:
	-Class getClass():获取当前对象的类对象,类对象是类加载时期创建的,一个类独一份,里面
	保存了与类相关的信息
	-int hashcode():根据对象的引用地址、类型等参数数值生成一个哈希值,该值在同一个对象中是
	相等的,在不同对象中绝大概率下是不等的
	-boolean equals(Object obj):对两个对象的引用地址进行比较,相等返回true,不等返回
	false
	-String toString():返回一个getClass().getName()+"@"+哈希值的字符串
	-void finalize():在GC(垃圾处理器)回收垃圾对象时调用该对象中的此方法,可使用
	System.gc();手动回收垃圾对象
	-wait():使当前线程处于等待状态,被唤醒才能进入就绪状态
	-notify():唤醒一个处于等待状态的线程
	-notifyAll():唤醒所有处于等待状态的线程

2. Integer… - 包装

package com.qf.a_patbox;
/**
 * 包装类,所有包装类的父类是Number
 */
public class Test {
	public static void main(String[] args) {
		// 装箱
		Integer integer = Integer.valueOf(286);
		
		// 拆箱
		int a = integer.intValue();
		
		// int转字符串
		String str1 = String.valueOf(a);
		String str2 = a + "";
		
		// 字符串转int
		int b = integer.parseInt(str1);
		
		// 整型缓冲区
		Integer i1 = Integer.valueOf(10);
		Integer i2 = Integer.valueOf(10);
		System.out.println(i1 == i2);
	}
}

3. String - 字符串

package com.qf.b_string;

import java.util.Arrays;

/**
 * 字符串测试
 */
public class Test {
	public static void main(String[] args) {
		// 常量池
		String a = "Hello";
		String b = "Hello";
		System.out.println(a==b);
		
		// 字符串拼接
		System.out.println(a.concat(" world!"));
		
		// 根据下标获取对应字符
		System.out.println(a.charAt(0));
		
		// 判断是否包含子串
		System.out.println(a.contains("ell"));
		
		// 字符串转字符数组
		System.out.println(Arrays.toString(a.toCharArray()));
		
		// 根据子串获取对应下标
		System.out.println(a.indexOf("ell"));
		
		// 根据子串获取对应最后的下标
		System.out.println(a.lastIndexOf("l"));
		
		// 字符串长度
		System.out.println(a.length());
		
		// 去两边空白
		System.out.println("  hello  ".trim());
		
		// 小写转大写
		System.out.println("hello".toUpperCase());
		
		// 大写转小写
		System.out.println("HEllo".toLowerCase());
		
		// 判断以什么开头
		System.out.println(a.startsWith("He"));
		
		// 判断以什么结尾
		System.out.println(a.endsWith("lo"));
		
		// 将旧字符串替换成新字符串
		System.out.println(a.replace("o", "l"));
		
		// 将旧字符串替换成新字符串,且可替换正则表达式
		System.out.println(a.replaceAll("o", "l"));
		
		// 拆分
		System.out.println(Arrays.toString("a,b,c,d".split(",")));
		
		// 字符串剪切
		System.out.println(a.substring(1));
		System.out.println(a.substring(1,3));
		
		// 将其他类型转成字符串
		System.out.println(String.valueOf(3));
	}
}

4. StringBuilder - 可变长字符串

package com.qf.c_stringbuilder;
/**
 * 可变字符串
 * StringBuilder:运行效率高,线程不安全
 * StringBuffer:运行效率低,线程安全
 */
public class Test {
	public static void main(String[] args) {
		// 测试运行效率
		StringBuilder builder1 = new StringBuilder("hello");
//		String a = "hello";
		
		long start = System.currentTimeMillis();
		for(int i=0;i<10000;i++) {
//			a += i;  // 466ms
			builder1.append(i);  // 4ms
		}
		long end = System.currentTimeMillis();
		System.out.println(end - start);
		
		// 字符串拼接
		StringBuilder builder2 = new StringBuilder("hello");
		System.out.println(builder2.append(" world!"));
		
		// 字符串反转
		System.out.println(builder2.reverse());
	}
}

5. BigDecimal - 精确运算

package com.qf.d_bigdecimal;

import java.math.BigDecimal;

/**
 * 精度运算
 */
public class Test {
	public static void main(String[] args) {
		BigDecimal decimal1 = new BigDecimal("1.0");
		BigDecimal decimal2 = new BigDecimal("0.6");
		
		// 加
		System.out.println(decimal1.add(decimal2));
		
		// 减
		System.out.println(decimal1.subtract(decimal2));
		
		// 乘
		System.out.println(decimal1.multiply(decimal2));
		
		// 除
		System.out.println(decimal1.divide(decimal2, 2, BigDecimal.ROUND_UP));
		System.out.println(decimal1.divide(decimal2, 2, BigDecimal.ROUND_FLOOR));
		System.out.println(decimal1.divide(decimal2, 2, BigDecimal.ROUND_HALF_UP));
	}
}

6. BigInteger - 大数

package com.qf.e_biginteger;

import java.math.BigInteger;

/**
 * 大数操作
 */
public class Test {
	public static void main(String[] args) {
		BigInteger i1 = new BigInteger(Integer.MAX_VALUE+"");
		BigInteger i2 = new BigInteger("1");
		System.out.println(i1.add(i2));
	}
}

7. Random - 随机数

package com.qf.f_random;

import java.util.Arrays;
import java.util.Random;

/**
 * 随机
 */
public class Test {
	public static void main(String[] args) {
		// 75~100取十次
		Random random = new Random();
		int[] arys = new int[10];
		
		for(int i=0;i<10;i++) {
			arys[i] = random.nextInt(26) + 75;
		}
		
		System.out.println(Arrays.toString(arys));
	}
}

8. Math - 数学

package com.qf.g_math;
/**
 * 数学
 */
public class Test {
	public static void main(String[] args) {
		// 向上取整
		System.out.println(Math.ceil(1.2));
		System.out.println(Math.ceil(1.8));
		
		// 向下取整
		System.out.println(Math.floor(1.2));
		System.out.println(Math.floor(1.8));
		
		// 四舍五入
		System.out.println(Math.round(1.2));
		System.out.println(Math.round(1.8));

		// 3的4次方
		System.out.println(Math.pow(3,4));
		
		// 随机数:[75, 100]
		System.out.println((int)(Math.random()*26) + 75);
	}
}

9.Date - 日期

package com.qf.h_date;

import java.util.Date;

/**
 * 日期
 */
public class Test {
	public static void main(String[] args) {
		Date date = new Date();
		
		// 格林威治时间
		System.out.println(date);
		
		// 时间戳:从1970开始
		System.out.println(date.getTime());
	}
}

10. Calendar - 日历

package com.qf.i_calendar;
/**
 * 日历
 */

import java.util.Calendar;
import java.util.Date;

public class Test {
	public static void main(String[] args) {
		Calendar calendar = Calendar.getInstance();
		
		// 年 月 日 时 分 秒
		System.out.println("年:"+calendar.get(Calendar.YEAR));
		System.out.println("月:"+(calendar.get(Calendar.MONTH) + 1));
		System.out.println("日:"+calendar.get(Calendar.DAY_OF_MONTH));
		System.out.println("时:"+calendar.get(Calendar.HOUR));
		System.out.println("分:"+calendar.get(Calendar.MINUTE));
		System.out.println("秒:"+calendar.get(Calendar.SECOND));
		
		// 日期互装
		calendar.setTime(new Date());
		System.out.println(calendar.getTime());
		
		// 设置年份
		calendar.set(Calendar.YEAR, 1999);
		
		// 添加年份
		calendar.add(Calendar.YEAR, 2);
		System.out.println("年:"+calendar.get(Calendar.YEAR));
	}
}

11. SimpleDateFormat - 日期格式

package com.qf.j_simpledateformat;

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

/**
 * 日期格式
 */
public class Test {
	public static void main(String[] args) throws ParseException {
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		
		// 日期转字符串
		String time = sdf.format(new Date()); 
		System.out.println(time);
		
		// 字符串转日期
		System.out.println(sdf.parse(time));
	}
}

12. System - 系统

package com.qf.k_system;

import java.awt.Color;
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.Arrays;

/**
 * 系统
 */
public class Test {
	public static void main(String[] args) {
		// 数组复制
		int[] a = {1,2};
		int[] b = new int[5];
		System.arraycopy(a, 0, b, 0, a.length);
		System.out.println("数组复制:"+Arrays.toString(b));
		
		// 获取时间戳
		System.out.println("时间戳:"+System.currentTimeMillis());
		
		// 手动垃圾回收器
		new Person();
		System.gc();
		
		// 获取系统参数
		System.out.println("获取系统参数:"+System.getProperties());
		
		// 系统退出:0是正常退出,非0是异常退出
		new MyFrame("我是一个窗口!");  // 点X可退出窗口
		
	}
	
}

class Person{

	@Override
	protected void finalize() throws Throwable {
		System.out.println("我在被回收...");
	}
	
}

class MyFrame extends Frame{
	
	private static final long serialVersionUID = -5161558921732028687L;

	public MyFrame() {}
	
	public MyFrame(String title) {
		super(title);
		
		init();
	}
	
	public void init() {
		// 大小位置
		setBounds(100, 100, 800, 400);
		// 背景颜色
		setBackground(Color.BLACK);
		// 不可拉伸
		setResizable(false);
		// 设置窗口可见
		setVisible(true);
		
		// 关闭窗口
		addWindowListener(new WindowAdapter() {

			@Override
			public void windowClosing(WindowEvent e) {
				// TODO 退出窗口
				System.exit(0);
			}
			
		});
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值