Java基础之几种常用的类(Arrays,Calendar,System,Date,Math,random,patten,ObjectArray)

HP SPP download 是一个全面的系统软件和固件更新解决方案,以单个ISO映像的形式提供。该解决方案使用智能更新管理器(SUM)作为部署工具。 阅读详情

Arrays:

        对象数组:存储对象的一个数组;

                举例:Student[] student = new Student[5] ;

        Arrays:针对数组操作的工具类  (提供了一些针对数组排序和二分搜索法):

                public static String toString(int[] a):可以将int类型的数组转换成字符串 ([元素1,元素2,元素3...]);
                public static void sort(int[] a):对指定的 int 型数组按数字升序进行排序;

                public static int binarySearch(int[] a,int key):二分搜索法:在int类型的数组中查找key元素的索引;

        举例:

public class ArraysDemo {
	
	public static void main(String[] args) {
		
		//定义一个数组:静态初始化
		int[] arr = {24,69,80,57,13} ;
		
		//public static String toString(int[] a):可以将int类型的数组转换成字符串 ([元素1,元素2,元素3...])
		//直接用Arrays去调用
		String str = Arrays.toString(arr) ;
		System.out.println("str:"+str);   //[24, 69, 80, 57, 13]
		
		System.out.println("-----------------------");
		
		//public static void sort(int[] a)对指定的 int 型数组按数字升序进行排序
		Arrays.sort(arr);
		String str2 = Arrays.toString(arr) ;
		System.out.println("str2:"+str2);  //[13, 24, 57, 69, 80]
		
		System.out.println("-----------------------");
		
		//public static int binarySearch(int[] a,int key):二分搜索法: 
		//在int类型的数组中查找key元素的索引
		//需求:查找57元素对应的索引
		Arrays.sort(arr);
		int index = Arrays.binarySearch(arr, 57) ;
		System.out.println("index:"+index);     //2
		int index2 = Arrays.binarySearch(arr, 577) ;
		System.out.println("index2:"+index2);   //-6
		
	}
}

Calendar类:日历类;

        Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等 日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法;

        注意:抽象类不能实例化;
        解决方法:public static Calendar getInstance():通过一个静态功能来创建日历的对象;

        举例:

public class CalendarDemo {
	
	public static void main(String[] args) {
		
		//创建日历类的对象
		//Calendar rightNow = new Calendar() ; 不能实例化,所以这条语句会报错
		
		//Calendar类的实例化
		Calendar rightNow = Calendar.getInstance() ;
		//System.out.println(rightNow);
		
		//public int get(int field)返回给定日历字段的值
		//获取年:public static final int YEAR		
		int year = rightNow.get(Calendar.YEAR) ;
		
		//获取年中的月份:public static final int MONTH
		int month = rightNow.get(Calendar.MONTH) ;
		
		//public static final int DATE :获取月份的那一天
		int date = rightNow.get(Calendar.DATE) ;
		
		
		System.out.println(year+"年"+(month+1)+"月"+date+"日"); //通过日历类获取当前系统时间
	}
}
        Calendar类的两个常用方法:

                public abstract void add(int field,int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量;

                public final void set(int year, int month,int date):设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值;

        举例:

public class CalendarDemo2 {
	
	public static void main(String[] args) {
		
		//算出当前时间
		Calendar c = Calendar.getInstance() ;
		
		//年
		int year = c.get(Calendar.YEAR) ;
		
		//月
		int month = c.get(Calendar.MONTH) ;
		
		//日
		int date =  c.get(Calendar.DATE) ;
		
		System.out.println(year+"年"+(month+1)+"月"+date+"日");
		
		//需求:3年前的今天
		c.add(Calendar.YEAR, -3);
		//获取年
		year = c.get(Calendar.YEAR) ;
		System.out.println(year+"年"+(month+1)+"月"+date+"日");
		
		//需求:5年后的10天前
		c.add(Calendar.YEAR, 5); 
		c.add(Calendar.DATE, -10);
		
		//获取年
		year = c.get(Calendar.YEAR) ;
		date = c.get(Calendar.DATE) ;
		System.out.println(year+"年"+(month+1)+"月"+date+"日");
		
		System.out.println("------------------------------");
		
		//public final void set(int year, int month,int date)设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值
		c.set(2018, 5,20);
		// 获取年
		year = c.get(Calendar.YEAR);
		// 获取月
		month = c.get(Calendar.MONTH);
		// 获取日
		date = c.get(Calendar.DATE);
		System.out.println(year + "年" + (month + 1) + "月" + date + "日");
	}
}
        综合练习:
package org.westos.b_calendar;

import java.util.Calendar;
import java.util.Scanner;

/**
 * 需求:获取任意一年的二月有多少天  (改进:键盘录入一个年份)
 *
 *分析:
 *	1)键盘录入任意一个年份
 *	2)创建日历类对象
 *	3)设置年月日
 *		set(录入year,2,1) ; //实际是3月1日
 *	4)再利用add(int field,int amount) : 在这里只需要将日期往前退一天即可
 */
public class CalendarTest {

	public static void main(String[] args) {
		
		//创建键盘入对象
		Scanner sc = new Scanner(System.in) ;
		
		//录入数据
		System.out.println("请输入一个年份:");
		int year = sc.nextInt() ;
		
		//创建日历类对象
		Calendar c = Calendar.getInstance() ;
		//设置年月日
		c.set(year, 2, 1); //实际3月1日
		//只需要将日期往前推一天即可
		c.add(Calendar.DATE, -1);
		
		System.out.println("二月有:"+c.get(Calendar.DATE)+"天");
	}
}

System类:包含一些有用的类字段和方法,它不能被实例化;

常用的方法:
public static void gc():运行垃圾回收器;
public static void exit(int status):终止当前正在运行的 Java 虚拟机,参数用作状态码;
                                                                       一般情况,需要终止Jvm,那么参数0;
public static long currentTimeMillis():返回以毫秒为单位的当前时间;
                public static void arraycopy(Object src,int srcPos, Object dest,int destPos, int length):从指定源数组中复制一个数组,复制从指定的位置开始,到目标数组的指定位置结束;
                src:原数组;
                dest:目标数组;
                srcPos:从原数组的哪个位置开始;
                destPos:到目标数组的哪个位置结束;
                        length:长度;

        举例:

public class SystemDemo2 {
	
	public static void main(String[] args) {
		System.out.println("我们喜欢高圆圆....");
		
		//public static void exit(int status)
		//System.exit(0); //jvm已经退出了,后边的程序不执行
		System.out.println("我们也喜欢杨桃....");
		
		System.out.println("-----------------------");
		
		//	public static long currentTimeMillis()返回以毫秒为单位的当前时间
		long time = System.currentTimeMillis() ;
		System.out.println("tiem:"+time);
		
		System.out.println("-----------------------");
		
		//单独使用,没有意义
		//一般情况,来测试一段代码的执行效率  (后面:jdbc: PreparedStatement  Statement 也可以用currentTimeMillis来测试速率 )
		
		long start = System.currentTimeMillis() ;
		
		for(int x =0 ; x < 1000; x ++) {
			System.out.println("hello"+x);
		}
		
		long end = System.currentTimeMillis() ;
		
		System.out.println("共耗时:"+(end-start)+"毫秒");
		
		System.out.println("---------------------------");
		
		int[] arr1 = {11,22,33,44,55,66} ;
		int[] arr2 = {5,6,7,8,9,10} ;
		
		System.out.println(Arrays.toString(arr1));
		System.out.println(Arrays.toString(arr2));
		
		System.out.println("---------------------------");
		
		System.arraycopy(arr1, 1, arr2, 2, 2);  //将arr2中的元素覆盖了,由Str1中的元素代替;
		System.out.println(Arrays.toString(arr1));
		System.out.println(Arrays.toString(arr2));
		
	}
}

Date类:表示特定的瞬间,精确到毫秒;

        构造方法:
                public Date():表示分配它的时间(精确到毫秒);
                public Date(long date):创建一个日期对象,指定毫秒值 (需要将long时间毫秒值转换成Date对象);
                public void setTime(long time):设置毫秒值;

                public long getTime():将Date--->long的毫秒值,通常认为Date.getTime()可以得到得到1970年01月1日0点零分以来的毫秒数;

        举例:

public class DateDemo {
	
	public static void main(String[] args) throws ParseException {

                //创建日期类对象
		Date d = new Date() ;
		System.out.println(d); //Date类型的日期格式:  Sun Apr 29 11:22:47 CST 2018	
				       //Date的文本格式:      String :2018-4-29
		
		Date dd = new Date(1000) ;
		System.out.println(dd);

                //创建日期类对象
                Date  ddd = new Date() ;
                long time = ddd.getTime() ;
                System.out.println("time:"+time);
                //System.out.println(System.currentTimeMillis());
	}
}
        重点:Date的日期格式和日期的文本格式,String类型之间进行转换;
                Date---->String(格式化)
                String-->Date(解析)
                        中间的转换:使用中一个中间类DateFormat,(DateFormat是一个抽象类,抽象意味着不能实例化)所以应该考虑用它的子类(SimpleDateFormat 是一个以与语言环境有关的方式来格式化和解析日期的具体类);
                        它允许进行:格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化;

                SimpelDateFormat的构造方法:
                        public SimpleDateFormat(String pattern):构造一个SimpleDateFormat对象,根据pattern(模式:规则);
                        SimpleDateFormat sdf = new SimpleDateFormat("xxx年xx月xx日") ;
                        日期和时间模式:
                                年: yyyy
                                月: MM
                                日: dd
                                时: hh
                                分: mm
                                秒: ss

        举例:

public class DateDemo3 {
	
	public static void main(String[] args) throws ParseException {
		
		//Date---String:(格式化)
		//创建一个日期对象
		Date d = new Date() ;

		//创建SimpleDateFormat类对象
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
		
		//public final String format(Date date):格式化
		String str = sdf.format(d) ;      //格式化
		System.out.println("str:"+str);   //str:2018-04-29 11:12:41
		
		System.out.println("----------------------");
		
		//String:日期文本格式:---->Date:日期格式:(解析)
		//public Date parse(String source):解析
		String strDate = "2018-6-25 09:01:09" ;
		
		//创建SimpleDateFormat类对象
		//SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy年MM月dd日") ;
		SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss") ;
		
		//注意 :simpleDateFormat在解析文本格式的时候,里面 模式(规则)一定要和文本格式的模式一直,否则就出现PareseException
		Date dd = sdf2.parse(strDate) ;  //解析
		System.out.println("dd:"+dd);	 //dd:Mon Jun 25 00:00:00 CST 2018
        }
}
        综合练习:
package org.westos.d_date;

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

/**
 *键盘录入你的出生年月日,算一下你来到这个世界多少天? 
 *
 *分析:
 *		1)创建键盘录入对象,录入一个数据出生年月日
 *		2)1990-xx-xx
 *		3)将文本格式的数据解析成日期对象
 *		4)getTime() ; 获取出生所在日期的时间毫秒值
 *		5)获取当前系统时间毫秒值
 *		(6) 5)-4) =  long time
 *
 *		6)换算
 *		
 *
 */
public class DateTest {

	public static void main(String[] args) throws ParseException {
	/*	//创建键盘录入对象
	 * 
	 *  
		try {   //捕获异常(IO流异常类说到)
			
		} catch (ParseException e) {
			e.printStackTrace(); //将代码出现的原因以及多少行会打印在控制台上
		}*/
		
		Scanner sc = new Scanner(System.in) ;
		
		//录入数据
		System.out.println("请输入您的出生年月日:");
		String str = sc.nextLine() ; //yyyy-MM-dd
		
		//创建SimpleDateFormat对象
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd") ;
		Date date = sdf.parse(str) ;
		
		//获取出生年月所在的系统时间
		long oldTime = date.getTime() ;
		
		//在获取当前系统时间的毫秒值
		long newTime = System.currentTimeMillis() ;
		
		long time = newTime - oldTime ;
		
		long day = time/1000 /60 /60 /24 ;
		System.out.println("您来到世间已经有:"+day+"天");
	}
}
        Date和String文本格式之间的相互转换:
package org.westos.d_date;

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

/**
 * 这是Date和Stirng文本格式进行相互转换的工具类
 * @author Administrator
 * @version v1.0
 */
class DateUtil {
	
	//无参构造私有化
	private DateUtil() {
		
	}
	
	/**
	 * 这是一个将Date的日期格式转换成日期的文本格式
	 * @param format  模式
	 * @param d       需要被格式化的Date格式
	 * @return 返回的就是日期的文本格式
	 */
	public static String dateToString(String format,Date d) {
		/*SimpleDateFormat sdf = new SimpleDateFormat(format) ;
		String s = sdf.format(d) ;
		return s ;*/
		
		return new SimpleDateFormat(format).format(d) ;
	}
	
	/**
	 * 这一个将字符串文本日期格式转换Date的日期格式的功能
	 * @param format  模式
	 * @param s       需要被解析的日期文本格式
	 * @return 返回的就Date日期格式
	 * @throws ParseException 解析如果出问题了,就会有这个异常
	 */
	public static Date stringToDate(String format,String s) throws ParseException {
		
		return new SimpleDateFormat(format).parse(s) ;
	}
}

public class DateUtilTest {

public static void main(String[] args) throws ParseException {

                Date d = new Date();

                //Date---String
                String s1 = DateUtil.dateToString("yyyy-MM-dd", d) ;
                System.out.println("s1:"+s1);   //s1:2018-05-01

                String s2 = DateUtil.dateToString("yyyy年MM月dd日 hh:mm:ss", d) ;
                System.out.println(s2);   //2018年05月01日 10:02:59

                System.out.println("----------------------");
                //String---Date
                String str = "2018-10-10" ;
                Date dd = DateUtil.stringToDate("yyyy-MM-dd", str); 
                System.out.println(dd);   //Wed Oct 10 00:00:00 CST 2018

}
}

Math类:包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数;

        常用方法:
                public static int abs(int a):绝对值;
                public static double ceil(double a):向上取整;
                public static double floor(double a):uuu向下取整;
                public static int max(int a,int b):求最大值;
                public static int min(int a,int b):求最小值;
                public static double pow(double a,double b):a的b次幂;
                public static double random():返回带正号的 double 值,该值大于等于 0.0 且小于 1.0;
                public static int round(float a):四射五入;
                public static double sqrt(double a):一个数的正平方根;

        举例:

public class MathDemo {
		
	public static void main(String[] args) {
		
		//public static int abs(int a):绝对值
		System.out.println(Math.abs(-10));
		System.out.println(Math.abs(10));
		
		//public static double ceil(double a):向上取整
		System.out.println(Math.ceil(12.34));
		
		//public static double floor(double a):向下取整
		System.out.println(Math.floor(12.34));
		
		//public static int max(int a,int b):求最大值
		System.out.println(Math.max(10, 20));
		//方法中嵌套方法
		
		//方法递归(方法本身调用方法的这种现象)
		System.out.println(Math.max(Math.max(10, 20), 20));
		
		//public static double pow(double a,double b):a的b次幂
		System.out.println(Math.pow(2.0, 3.0));
		
		
		//public static double random()返回带正号的 double 值,该值大于等于 0.0 且小于 1.0
		System.out.println(Math.random());
		
		//public static int round(float a):四射五入
		System.out.println(Math.round(12.56));
		
		//public static double sqrt(double a):一个数的正平方根
		System.out.println(Math.sqrt(4));
		
		System.out.println("---------------------------------------");
		
		//面试题:有两个变量,让他们的值进行互换 (考官想问的是:你能否指定位^的特点)
		int a = 10 ;
		int b = 20 ;
		
		//实际开发中:中间变量的方式进行互换
		
		//位^的特点:一个数据被另一个数据位^两次,其值是它本身
		/*System.out.println(a^b^b);
		System.out.println(a^b^a);*/
		
		System.out.println("a:"+a+",b:"+b);
		
		//=号左边: a,b,a
		//=右边: a^b
		a = a ^ b ; 
		b = a ^ b ;//b = a^b ^ b ==> (将上式的a=a^b代到这个式子中)
		a = a ^ b ; 
		
		System.out.println("a:"+a+",b:"+b);
		
	}
	
}

Random类:是一个可以获取随机数的类;

        Random类常用的方法:
                public Random():无参构造方法;
                public Random(long seed):指定long类型的数据进行构造随机数类对象 ;
                public int nextInt():获取随机数,它的范围是在int类型范围之内;

                public int nextInt(int n):获取随机数,它的范围是在[0,n)之间;

        举例:

package org.westos.f_random;

import java.util.Random;

public class RandomDemo {
	
	public static void main(String[] args) {
		
		//创建Random类对象
		Random r = new Random() ;
		
		for(int x = 0 ; x < 10 ; x ++) {
			int n = r.nextInt(5) ;
			System.out.println(n);

                System.out.println((int)(Math.random()*100)+1);  //随机的删除1~100之间的任意一个整数;
		}
	}
}

正则表达式:

        类别:
字符:
	x			x字符
	\\			反斜线字符
	\t 			制表符 
	\n			换行符
	\r			回车符 
	
	
字符类:
	[abc]		        a、b 或 c(简单类)
	[^abc] 		        任何字符,除了 a、b 或 c(否定)
	[a-zA-Z] 	        a 到 z 或 A 到 Z,两头的字母包括在内(范围) 
	

预定义字符类:
	. 任何字符 		如果本身就是.	\.	qq.com	写正则表达式(\\.) 
	\d 			数字:[0-9] 		写正则表达式 :\\d
	\w 			单词字符:[a-zA-Z_0-9]:字母大小写,数字字符	    \\w


边界匹配器:
	^			行的开头 
	$ 			行的结尾 
	\b 		        单词边界 尾 (helloword?haha:world)


Greedy 数量词(重点)
	X? 			X字符出现一次或一次也没有 
	X* 			X字符出现零次或多次 
	X+ 			X字符出现一次或多次 
	X{n}			X字符恰好出现n次
	X{n,}			X字符至少出现n次
	X{n,m}			X字符至少出现n次,但不超过m次

        判断字符串是否符合正则表达式:
                //判断给定的字符串是否符合正则表达式的规则:public static boolean matches(String regex);

//检验我们的字符串数据是否和正则规则匹配,如果匹配成功则返回true;

        举例:

public class RegexDemo2 {
	
	public static void main(String[] args) {
		
		Scanner sc  = new Scanner(System.in) ;
		
		//接收数据
		System.out.println("请输入一个QQ号码:");
		String QQ =sc.nextLine() ;
		
		boolean flag = checkQQ(QQ) ;
		System.out.println(flag);
	}
	
	public static boolean checkQQ(String qq) {
		
		//使用matches方法判断字符串是否符合正则表达式的规则:public static boolean matches(String regex)
		//检验我们的字符串数据是否和正则规则匹配,如果匹配成功则返回true;
		
		//定义正则规则:
		/*String regex= "[1-9][0-9] {4,14}" ;
		boolean flag = qq.matches(regex) ;
		return flag ;*/
		
		//改进
		return qq.matches("[1-9]\\d{4,14}") ;
	}
}
        正则表达式中的替换:
                使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串:

                        public String replaceAll(String regex,String replacement);

        举例:

public class RegexDemo4 {
	
	public static void main(String[] args) {
		
		//定义一个字符串
		String s = "hello12345World781323244454JavaEE" ;
		
		//需求:要将数字字符被替换成*
		String regex = "\\d+" ;
		
		//定义替换的字符串
		String ss = "*" ;
		
		//将字符串s中的数字字符被 * 替换
		String result = s.replaceAll(regex, ss) ;
		System.out.println("result:"+result);   //result:hello*World*JavaEE
	}
}
        字符串的分割功能:

                public String[] split(String regex):按照指定的格式进行分割,分割后返回的是一个字符串数组;

        举例:

import java.util.Scanner;

public class RegexTest2 {
	
	public static void main(String[] args) {
		
		//给定义一个字符串
		String str = "18-24" ;
		
		//利用分割功能
		String[] strArray = str.split("-") ;
		
		//要将String[]数组的字符串数据转换成int类型的数据:
		int start = Integer.parseInt(strArray[0]) ;
		int end  = Integer.parseInt(strArray[1]) ;
		
		//键盘录入一个年龄
		Scanner sc = new Scanner(System.in) ;
		
		//接收
		System.out.println("请输入搜索的年龄:");
		int age =sc.nextInt() ;
		if(age >=start && age<=end) {
			System.out.println("是我们要找的人...");
		}else {
			System.out.println("不是我们要找的...");
		}
	}
}
        综合练习1:
public class RegexTest3 {

	public static void main(String[] args) {
		
		String s1 = "aa,bb,cc" ;
		
		String[] str = s1.split(",") ;   //以 , 分割
		for (int x = 0; x < str.length; x++) {
			System.out.println(str[x]);
		}
		
		System.out.println("----------------------------");
		
		String s2 = "aa.bb.cc" ;
		String[] str2 = s2.split("\\.") ;  //表示 . 字符
		for(int x  = 0 ; x <str2.length; x ++) {
			System.out.println(str2[x]);
		}
		
		System.out.println("----------------------------");
		
		String s3 = "aa               bb                                      cc" ;
		String[] str3 = s3.split(" +") ;  //一个或多个空格
		for(int x = 0 ; x <str3.length ; x ++) {
			System.out.println(str3[x]);
		}
		System.out.println("----------------------------");
		
		//硬盘上的路径的形式
		String s4 = "E:\\JavaSE\\Code\\day11" ;
		String[] str4 = s4.split("\\\\");   //两个\\猜表示\
		for(int x = 0 ; x <str4.length ; x ++) {
			System.out.println(str4[x]);
		}

	}
}
        综合练习2:
package org.westos.g_patten;

import java.util.Arrays;

/**
 *  需求:我有如下一个字符串:"91 27 46 38 50"
 *  请写代码实现最终输出结果是:"27 38 46 50 91" 
 *  
 *  分析:
 *  		1)定义这样一个字符串
 *  		2)将字符串进行分割,返回字符串数组
 *  		3)将字符串数组变成int类型的数组
 *  		4)将int类型中的元素拼成字符串类型
 *  		5)输出即可
 *
 */
public class RegexTest4 {
	
	public static void main(String[] args) {
		
		//定义一个字符串:
		String s = "91 27 46 38 50" ;
		
		//将字符串进行分割,返回一个字符串数组
		String[] strArray = s.split(" ") ;
		
		//将字符串变成int类型数组
		int[] arr = new int[strArray.length] ;
		
		//遍历arr数组
		for(int x = 0 ; x <arr.length ;x ++) {
			arr[x] = Integer.parseInt(strArray[x]) ;
		}
		
		//排序:直接用Arrays工具类
		Arrays.sort(arr); 
		
		//创建一个字符串缓冲区:
		//StringBuilder
		StringBuilder sb = new StringBuilder() ;
		//遍历int类型数组
		for(int x = 0 ; x < arr.length ; x ++) {
			sb.append(arr[x]).append(" ") ;
		}
		
		//还需将StringBulider转换字符串
		String result = sb.toString().trim() ;
		System.out.println("result:"+result);
	}
}




【乐企】有关乐企能力测试接口对接-基础版(详细) 乐企能力测试接口对接详细代码以及步骤 阅读详情

相关推荐

Unity中基于SkinMeshRenderer的骨骼动画换装系统优化实践

本文深入探讨了Unity中基于SkinnedMeshRenderer的骨骼动画换装系统优化实践。针对换装卡顿、显示错误等常见问题,文章剖析了SkinnedMeshRenderer的核心数据原理,对比了“数据替换”与“实体替换”两种主流方案的性能差异,并详细阐述了通过骨骼字典缓存、对象池管理、材质合并与Draw Call优化等实战技巧,构建高性能、高稳定性的生产级换装系统。

weixin_29008055的博客 314

JAVA——(3)常用类:Math、Scanner、String、StringBuffer、Array、Calendar、Date、Character、包装类(Intger)

一、Math---是针对数学进行操作的类 没有构造方法,因为它的成员都是静态的 A:绝对值:public static int abs(int a) B:向上取整: public static double ceil(double a) C:向下取整public static double floor(double a) D:两个数据中的大值: public static int ma

何不暖阳的博客 1049

免费替代Cursor!TRAE中文版这些隐藏功能90%的人不知道

本文深度评测了免费AI编程工具TRAE中文版,揭示其超越代码补全的隐藏功能。重点介绍了其SOLO模式如何重塑从需求到部署的全流程开发,以及对微信小程序、Taro、Ant Design Pro等国产技术栈的深度适配能力,为中文开发者提供了高度本地化的高效解决方案。

gray5的博客 839

(java总结)数组工具类:Arrays、Math

package Demo5; import java.lang.reflect.Array; import java.util.Arrays; /* java.util.Arrays是一个与数组相关的工具类,里面提供了大量静态方法,用来实现数组常见的操作 public static String toString(数组):将参数数组变成字符串(按照默认格式:[元素1,元素2, 元素3...]...

weixin_45526489的博客 301

日前日内多阶段多时间尺度源荷储协调调度(matlab代码)

多阶段多时间尺度的协调调度的优势是考虑新能源出力的波 动性与随机性,需求响应负荷的不确定性会对电网制定的日前调度计划准确性造成影响,也就是能够更加精准的进行调度和分析,优化结果的可用性更强。在这方面论文里面,金力的《考虑特性分布的储能电站接入的电网多时间尺度源储荷协调调度策略》就考虑了日前日内实时三个阶段调度,每个阶段考虑了不同负荷需求响应策略,同时考虑了负荷波动性的影响,具有很强的参考意义。 目录 一、模型 二、程序运行 三、程序链接 一、模型 负荷需求响应考虑电价型和激励型两种,电.

zhangxd212489的博客 7915

强化学习 之 Actor Critic

简介 Actor Critic是一种结合体算法: (1)Actor 的前生是 Policy Gradients,这能让它毫不费力地在连续动作中选取合适的动作,而 Q-learning 做这件事会瘫痪; (2)Critic 的前生是 Q-learning 或者其他的 以值为基础的学习法,能进行单步更新,而传统的 Policy Gradients 则是回合更新,这降低了学习效率。 算法思想 Actor...

Test_tju的博客 809

Java常用类——Math类、Random类

1、概述 Math 类包含了基本数学运算的方法,如:指数、对数、平方根、三角函数等

Lemon 461

MindIE与vLLM-Ascend性能对决:Qwen3在昇腾910B上的推理效率实测

本文深度对比了昇腾910B平台上两大推理框架MindIE与vLLM-Ascend的性能表现。通过实测Qwen3系列模型,详细分析了二者在单卡、多卡场景下的推理效率、扩展性及生产环境适用性,为AI算力基础设施选型提供关键参考。

weixin_29214335的博客 1176

java中的Math类

数学类包含了许多数学函数,如sin、cos、exp、abs等。Math类是一个工具类,它在解决与数学有关的一些问题是有着非常重要的作用。     这个类有两个静态属性:E和PI。E代表数学中的e 2.7182818,而PI代表派pi 3.1415926。     引用时,用法如:Math.E 和 Math.Pi     这个类的方法有:     public static int abs(

996

【ArcGIS Pro微课1000例】0073:ArcGIS Pro3.5.2学习版下载及安装教程

ArcGIS Pro 3.5.2安装教程摘要:系统需Windows10及以上,8GB内存(推荐32GB)。安装步骤:1)安装.NET 8.0运行环境;2)执行主程序安装包,按向导完成基础安装;3)安装升级补丁;4)替换AfCore.dll文件并导入注册表。注意安装后删除临时文件节省空间。软件下载地址包含在百度网盘链接。安装过程需依次完成环境配置、主程序安装、补丁更新及破解步骤。

智慧空间实验室 1770

⚡【C++要笑着学】(13) STL介绍:什么是STL标准模板库 | STL的版本 | 浅谈STL的缺陷

再讲解函数模板之前先对STL做一个小铺垫,本篇将对STL做一个简单的介绍。

有道无术, 术尚可求。有术无道, 止于术。 3032

Java中api之常用工具类Arrays,Calendar,System,Date,Math

对象数组:存储对象的数组Student[] s=new Student[5];Arrays:针对数组操作的工具类(提供了一些数组排序和二分搜索法等方便使用)public static String toString(int[] arr)可以将int类型的数组转化为字符串类型public static void sort(int[] arr)  将int类型的数组进行升序排序public stati...

wt5264的博客 201

环境仿真软件:MIKE 21_(9).MIKE21水生植物模块介绍

MIKE21支持多种水生植物的模拟,用户需要在配置文件中定义植物种类及其特性。</</</</</</</</</假设我们需要定义一种新的水生植物“水葫芦”(Water Hyacinth),并将其特性写入配置文件。# 创建XML根元素# 定义新的植物种类# 生成XML文件假设我们需要分析仿真的水流速度变化,并绘制水流速度随时间变化的图。# 读取NetCDF文件# 获取水流速度数据# 获取时间数据# 绘制水流速度随时间变化的图plt.xlabel('时间 (天)')

kkchenjj的博客 726

JAVA中的必须知道的常用类!(包装类,Date类,Calendar类,Math类)

JAVA中的包装类 int、float、double、boolean、char 等。基本数据类型是不具备对象的特性的,比如基本类型不能调用方法、功能简单。。。,为了让基本数据类型也具备对象的特性, Java 为每个基本数据类型都提供了一个包装类,这样我们就可以像操作对象那样来操作基本数据类型。 基本类型和包装类之间的对应关系: 包装类主要提供了两大

dadaguaishangjiang的博客 2261

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

JavaEE常用API【Date、DateFormat、Calendar、Math、System、包装类、正则表达式】总结

Date、DateFormat、Calendar、Math、System、包装类、正则表达式个人总结

井底的青蛙 722

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Object类,Math类,System类

Object类 Object类概述 java.lang.Object(类):类Object是类层次结构的根。 每个类都有Object作为超类。 所有对象(包括数组)都实现了这个类的方法。 它是Java中所有类(包括数组)的父类(包括JDK中的类,也包括我们自定义的类) 我们“自定义”的类,如果不继承其他类,就会隐式的继承自Object。 继承Object类,就会继承下一些方法: 1).toString():会被所有的类继承,它将对象转换为一个String表示。通常需要我们子类重写 2).equals():

Li某人_初学者 254

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Java的数学Math模块

用Java算一些简单的数学公式。

qcyfred的博客 884

HashMap的containsKey方法底层详解

containsKey方法简介 用 containsKey(key) 方法来检查 key 是否存在, 源码分析 /** * 检查是否包含key * 如果key有对应的节点对象,则返回ture,不关心节点对象的值是否为空 */ public boolean containsKey(Object key) { // 调用getNode方法来获取键值对,如果没有找到返回fals...

Future_LL的博客 1万+

Java基础之输入/输出流,File类

流:        流的概念:流是一组有序的数据序列,根据操作的类型,可分为输入流和输出流 I/O(Input/Output)流提供类一条通道程序,可以使用这条通道...

Future_LL的博客 4256

问题:Java中,char型变量中能不能存储一个中文汉字,为什么?

为什么? char型变量是用来存储Unicode编码的字符的,unicode 编码字符集中包含了汉字,所以,char型变量中当然可以存储汉字。 不过,如果某个特殊的汉字没有被包含在 unicode 编码字符集中,那么,这个char型变量中就不能存储这个特殊汉字。 说明:unicode编码占用两个字节,所以,char类型的变量也是占用两个字节。 package java基础题目; ...

Future_LL的博客 3822

Java基础:设计模式

java的设计模式大体上分为三大类 创建型模式(5种):工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式。 结构型模式(7种):适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组合模式,享元模式。 行为型模式(11种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。 设计模式遵循的原则有6...

Future_LL的博客 2491

线程中的死锁、数据库中的锁、避免死锁的算法

死锁描述 死锁是指两个以上的线程永远阻塞的情况,这种情况产生至少需要两个以上的线程和两个以上的资源。 系统发生死锁现象不仅浪费大量的系统资源,还会导致整个系统崩溃,带来灾难性后果。 死锁满足的条件: 互斥条件:一个资源每次只能被一个线程使用。 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。 不可剥夺条件:进程已获得的资源,在未使用完之前,不能强行剥夺。 ...

Future_LL的博客 808

JavaSE项目:聊天室

聊天室:        分析:/** * 小项目:聊天室步骤分析; * 客户端: * main: * 01&gt; 使用TCP编程,创建客户端的Socket对象; * 02&gt; 创建键盘输入对象,用来输入用户名; * 03&gt; 创建通道内的流对象(输入流,输出流); * 04&gt; 因为有对人聊天,所以需要不断的注册用户(while循环); ...

Future_LL的博客 805

I/O流的各种形式

//字节输入流 : FileInputStream("a.txt");//字节输出流 : FileOutputStream("b.txt");//字节缓冲输入流 : BufferedOutputStream(new FileInputStream("b.txt"));//字节缓冲输出流 : BufferedInputStream(new FileInputStream("a.txt")); //字...

Future_LL的博客 796

Java中String,StringBuffer,Integer,Character的属性介绍以及相互转换

public class Text1 { public static void main(String[] args) { //String: String s=new String("sss"); String s1=new String("ssd"); int begi...

Future_LL的博客 777

Java基础之动态代理

动态代理:        在程序运行过程中产生的这个对象;        运行特点:在程序的执行过程中,通过一个类Proxy和接口invacationHandler(处理程序)实现动态代理;        Proxy类中的方法创建动态代理类对象:                public static Object newProxyInstance(ClassLoader loader,Clas...

Future_LL的博客 584
上一篇: Java中String,StringBuffer,Integer,Character的属性介绍以及相互转换
下一篇: Java基础之Collection集合
Future_LL
博客等级 码龄9年 215粉丝 255原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值