java中用什么函数测长度 java常用函数方法
今天给各位分享java中用什么函数测长度的知识,其中也会对java常用函数方法进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
java中怎么从一个数组中截取一定长度的元素放到新数组中
可以利用substring(int beginIndex, int endIndex)函数截取固定长度片段。
具体示例代码如下:
public class woo{
public static void main(String args[])
{
//ID为430423198211231441,截取[19821123]
char IDNum[]={'4','3','0','4','2','3','1','9','8','2','1','1','2','3','1','4','4','1'};
String IDNum_string= String.copyValueOf(IDNum);
System.out.println(IDNum_string.substring(6, 14));
}
}
扩展资料:
1、String类的不可变性:
这个不可变性需要看源码,String类中有几个成员变量:
private final char[] value;//存放String的值
private final int offset;
private final int count;
他们都是final类型的,当你创建一个String之后它们就无法改变,所以这个不可变指的是String的值value不可变。
2、用String的时候需要注意什么?
由于String的不可变性所以应该避免创建大量的String对象,应为大量final类型的String对象会暂用大量的内存,内存可是很宝贵的。
3、String与StringBuilder的区别:
StringBuilder进行字符串的连接等操作时不会创建新的字符串对象,所以在操作字符串的时候推荐把一个String转换为StringBuilder再进行操作,这样可以节省内存。
4、StringBuilder和StringBuffer的区别:
它俩的区别就是StringBuffer是线程安全的,它的方法都加了锁,多在多线程中使用,在单线程中建议使用StringBuilder,会更快。
参考资料:
百度百科——substring函数
Java中怎样怎样算出求函数的幂次方
java中通常进行数学运算的东西都在Math类中,求函数的幂次方就是Math类中的pow方法:public static double pow(doublea,doubleb),返回第一个参数的第二个参数次幂的值。
例如求2的3次方,代码如下:
public class test{
public static void main(String[] args){
double a= Math.pow(2, 3);
}
}
运行结果为8
扩展资料:
Math类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。
与 StrictMath类的某些数学方法不同,并非 Math类所有等价函数的实现都定义为返回逐位相同的结果。此类在不需要严格重复的地方可以得到更好的执行。
默认情况下,很多 Math方法仅调用 StrictMath中的等价方法来完成它们的实现。建议代码生成器使用特定于平台的本机库或者微处理器指令(可用时)来提供 Math方法更高性能的实现。这种更高性能的实现仍然必须遵守 Math的规范。
实现规范的质量涉及到两种属性,即返回结果的准确性和方法的单调性。浮点 Math方法的准确性根据 ulp(units in the last place,最后一位的进退位)来衡量。对于给定的浮点格式,特定实数值的 ulp是包括该数值的两个浮点值的差。
当作为一个整体而不是针对具体参数讨论方法的准确性时,引入的 ulp数用于任何参数最差情况下的误差。
如果一个方法的误差总是小于 0.5 ulp,那么该方法始终返回最接近准确结果的浮点数;这种方法就是正确舍入。一个正确舍入的方法通常能得到最佳的浮点近似值;然而,对于许多浮点方法,进行正确舍入有些不切实际。
相反,对于Math类,某些方法允许误差在 1或 2 ulp的范围内。非正式地,对于 1 ulp的误差范围,当准确结果是可表示的数值时,应该按照计算结果返回准确结果;否则,返回包括准确结果的两个浮点值中的一个。对于值很大的准确结果,括号的一端可以是无穷大。
除了个别参数的准确性之外,维护不同参数的方法之间的正确关系也很重要。
因此,大多数误差大于 0.5 ulp的方法都要求是半单调的:只要数学函数是非递减的,浮点近似值就是非递减的;同样,只要数学函数是非递增的,浮点近似值就是非递增的。并非所有准确性为 1 ulp的近似值都能自动满足单调性要求。
参考资料:
https://docs.oracle.com/javase
java常用函数方法
Java的一些常用函数,方法总结:
1:数组方面:
数组是一个对象,数组名可以理解和C++里面一样,
1):System.arraycopy(src,srcindex,dst,dstindex,src.length);
2):java.util.Arrays.sort(数组名);//块数排序法进行排序
3):java.util.Arrays.binarySearch(arr,key);//从哪里收,关键值,返回索引.没有的话返回-1
4):java.util.Array.fill(arr,value),设置数组初始值
5):Array.equals(arr1,arr2)//比较两个数组中元素是不是全部相等,是返回true,不是返回false
2:时间方面:
public static String dateToStr(java.util.Date date)
{
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str= sdf.format(date);
return str;
}
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class DateUtil
{
public static java.util.Date parseDate(String dateStr, String format)
{
java.util.Date date= null;
try
{
java.text.DateFormat df= new java.text.SimpleDateFormat(format);
String dt= dateStr.replaceAll("-","/");
if((!dt.equals(""))&&(dt.length()< format.length()))
{
dt+= format.substring(dt.length()).replaceAll("[YyMmDdHhSs]","0");
}
date=(java.util.Date) df.parse(dt);
}
catch(Exception e)
{
}
return date;
}
public static java.util.Date parseDate(String dateStr)
{
return parseDate(dateStr,"yyyy/MM/dd");
}
public static String format(java.util.Date date, String format)
{
String result="";
try
{
if(date!= null)
{
java.text.DateFormat df= new java.text.SimpleDateFormat(format);
result= df.format(date);
}
}
catch(Exception e)
{
}
return result;
}
public static String format(java.util.Date date)
{
return format(date,"yyyy/MM/dd");
}
public static int getYear(java.util.Date date)
{
java.util.Calendar c= java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.YEAR);
}
public static int getMonth(java.util.Date date)
{
java.util.Calendar c= java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.MONTH)+ 1;
}
public static int getDay(java.util.Date date)
{
java.util.Calendar c= java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.DAY_OF_MONTH);
}
public static int getHour(java.util.Date date)
{
java.util.Calendar c= java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.HOUR_OF_DAY);
}
public static int getMinute(java.util.Date date)
{
java.util.Calendar c= java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.MINUTE);
}
public static int getSecond(java.util.Date date)
{
java.util.Calendar c= java.util.Calendar.getInstance();
c.setTime(date);
return c.get(java.util.Calendar.SECOND);
}
public static long getMillis(java.util.Date date)
{
java.util.Calendar c= java.util.Calendar.getInstance();
c.setTime(date);
return c.getTimeInMillis();
}
public static String getDate(java.util.Date date)
{
return format(date,"yyyy/MM/dd");
}
public static String getTime(java.util.Date date)
{
return format(date,"HH:mm:ss");
}
public static String getDateTime(java.util.Date date)
{
return format(date,"yyyy/MM/dd HH:mm:ss");
}
public static java.util.Date addDate(java.util.Date date, int day)
{
java.util.Calendar c= java.util.Calendar.getInstance();
c.setTimeInMillis(getMillis(date)+((long) day)* 24* 3600* 1000);
return c.getTime();
}
public static int diffDate(java.util.Date date, java.util.Date date1)
{
return(int)((getMillis(date)- getMillis(date1))/(24* 3600* 1000));
}
public static String getMonthBegin(String strdate)
{
java.util.Date date= parseDate(strdate);
return format(date,"yyyy-MM")+"-01";
}
public static String getMonthEnd(String strdate)
{
java.util.Date date= parseDate(getMonthBegin(strdate));
Calendar calendar= Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.MONTH, 1);
calendar.add(Calendar.DAY_OF_YEAR,-1);
return formatDate(calendar.getTime());
}
public static String formatDate(java.util.Date date)
{
return formatDateByFormat(date,"yyyy-MM-dd");
}
public static String formatDateByFormat(java.util.Date date, String format)
{
String result="";
if(date!= null)
{
try
{
SimpleDateFormat sdf= new SimpleDateFormat(format);
result= sdf.format(date);
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
return result;
}
}
Java日期格式化及其使用例子
1 SimpleDateFormat担当重任,怎样格式化都行
import java.util.Date;
import java.text.SimpleDateFormat;
public class Demo
{
public static void main(String[] args)
{
Date now=new Date();
SimpleDateFormat f=newSimpleDateFormat("今天是"+"yyyy年MM月dd日 E kk点mm分");
System.out.println(f.format(now));
f=new SimpleDateFormat("a hh点mm分ss秒");
System.out.println(f.format(now));
}
}
2从字符串到日期类型的转换:
import java.util.Date;
import java.text.SimpleDateFormat;
import java.util.GregorianCalendar;
import java.text.*;
publicclass Demo
{
public static void main(String[] args)
{
String strDate="2005年04月22日";
//注意:SimpleDateFormat构造函数的样式与strDate的样式必须相符
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy年MM月dd日");
//必须捕获异常
try
{
Date date=simpleDateFormat.parse(strDate);
System.out.println(date);
}
catch(ParseException px)
{
px.printStackTrace();
}
}
}
3将毫秒数换转成日期类型
import java.util.Date;
import java.text.SimpleDateFormat;
import java.util.GregorianCalendar;
import java.text.*;
public class Demo
{
public static void main(String[] args)
{
long now=System.currentTimeMillis();
System.out.println("毫秒数:"+now);
Date dNow=new Date(now);
System.out.println("日期类型:"+dNow);
}
}
4获取系统时期和时间,转换成SQL格式后更新到数据库
java.util.Date d=new java.util.Date();//获取当前系统的时间
//格式化日期
new java.text.SimpleDateFormat s= new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr= s.format(d);//转为字符串
使用RS更新数据库,仍然要用rs.updateString,而不是rs.updateDade。
rs.updateString("regtime",dateStr);//regtime字段为datetime类型的
5按本地时区输出当前日期
Date myDate= new Date();
System.out.println(myDate.toLocaleString());
输出结果为:
2003-5-30
6如何格式化小数
DecimalFormat df= new DecimalFormat(",###.00");
double aNumber= 33665448856.6568975;
String result= df.format(aNumber);
Sytem. out.println(result);
输出结果为:
33,665,448,856.66
其他:获取毫秒时间 System.currentTimeMillis();
7在数据库里的日期只以年-月-日的方式输出
定义日期格式:SimpleDateFormat sdf= new SimpleDateFormat(yy-MM-dd);
sql语句为:String sqlStr="select bookDate from roomBook where bookDate between'2007-4-10' and'2007-4-25'";
输出:
System.out.println(df.format(rs.getDate("bookDate")));
关于本次java中用什么函数测长度和java常用函数方法的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。