【转载】java的常见类型转换

//Int型数字转换成String
int num1=123456;
//方法1
String str1=num1+"";
System.out.println(str1);
//方法2
String str2=String.valueOf(num1);
System.out.println(str2);

//String转换成Int型数字
String str3=new String("9876543");
int num2=Integer.parseInt(str3);
System.out.println(num1+num2);

//字符转换成字符型数组
String str4="HRuinger";
char a[]=str4.toCharArray();
for(int i:a)
System.out.print((char)i+" ");
System.out.println();

//字符型数组转换成字符串
char b[]={'H','R','u','i','n','g'};
String str5=String.valueOf(b);
System.out.println(str5);

//整型与字符型数值的转换
char c='3';
System.out.println(c-'0'); //此处也可以为c-48
int d=5;
System.out.println((char)(d+'0')); //此处也可以为c+48


如何将long类型转换为string
两种方法:
一、使用String类的方法,String.valueOf(),比如:
long aa = 123;
String a = String.valueOf(aa);
二、最简单的直接将long类型的数据加上一个空串
long aa = 123;
String a = aa+"";
Integer转String
//方法一:
Integer类的静态方法
toString()Integer a = 2;
String str = Integer.toString(a)

//方法二:Integer类的成员方法
toString()Integer a = 2;
String str = a.toString();

//方法三:String类的静态方法
valueOf()Integer a = 2;
String str = String.valueOf(a);
二、String转Integer
当我们要把String转化为Integer时,一定要对String进行非空判断,否则很可能报空指针异常。
String str = "...";

Integer i = null;

if(str!=null){

i = Integer.valueOf(str);

}

 

获取一个变量的类型

           public static void main(String[] args) {

        Test test = new Test();
        System.out.println(test.getClass().getSimpleName());
    }
}

1.Integer转换成int的方法

Integer i;  int k = i.intValue(); 即Integer.intValue();

 

2.int转换成Integer

int i;

Integer it = new Integer(i);

 

3.String转换成int的方法

String str = "10";   Integer it = new Interger(str);  

int i = it.intValue();  

即:int i = Integer.intValue(string);

 

4.int转换成String

int i;

(1)String s = String.valueOf(i);

(2)String s = Ingeger.toString(i);

(3)String s = "" + i;

 

5.String转换成Integer

String str = "10"

Integer it = Integer.valueOf(str);

 

6.Integer转换成String

Integer it;

String str = it.toString();

 

7.String转换成BigDecimal

BigDecimal bd = new BigDecimal(str);

 

8.日期

Calendar calendar = Calendar.getInstance(); int year = calendar.get(Calendar.YEAR); int month = calendar.get(Calendar.MONTH)+1; int day = calendar.get(Calendar.DATE);

//获取今天的日期字符串 String today = Java.text.DateFormat.getDateInstance().format(new java.util.Date()); //获取今天的日期 new java.sql.Date(System.currentTimeMillis());

Java中的Date时间转换【SimpleDateFormat (parse和format)】和Calendar日历表

parse:将字符串转换成时间
format:将时间转换成字符串

 


复制代码
 1 package object;
 2 
 3 import java.text.ParseException;
 4 import java.text.SimpleDateFormat;
 5 import java.util.Date;
 6 
 7 public class Date1 {
 8 
 9     public static void main(String[] args) throws ParseException {
10         // TODO Auto-generated method stub
11         Date date=new Date();
12         SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
13         String time1=format.format(date);//将时间转换成字符串
14         System.out.println(time1);
15         
16         String time2="1996-09-18 07:18:09";
17         SimpleDateFormat format2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
18         Date date2=format2.parse(time2);//将字符串转换成时间
19         System.out.println(date2);
20         
21     }
22 
23 }
24 //结果:
25 2017-12-20 15:49:49
26 Wed Sep 18 07:18:09 GMT+08:00 1996
复制代码

 Date应用实例:

复制代码
 1 package object;
 2 
 3 import java.text.ParseException;
 4 import java.text.SimpleDateFormat;
 5 import java.util.Date;
 6 
 7 public class DateBirthday {
 8 
 9     public static void main(String[] args) throws ParseException, InterruptedException {
10         // TODO Auto-generated method stub
11         //求两个人的生日相差多少天
12         String birthday1="1996-09-18";
13         String birthday2="1993-08-27";
14         SimpleDateFormat format1=new SimpleDateFormat("yyyy-MM-dd");
15         Date date1=format1.parse(birthday1);
16         Date date2=format1.parse(birthday2);
17         long l1=date1.getTime();
18         long l2=date2.getTime();
19         long l3=l2-l1;
20         int day=Math.abs((int) (l3/1000/60/60/24));
21         System.out.println("两人相差"+day+"天");//结果:两人相差1096天
22         
23         
24         //没个两秒显示一次时间
25         while(true){
26             new Thread().sleep(2000);
27             Date date=new Date();
28             SimpleDateFormat format3=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");    
29             String time=format3.format(date);
30             System.out.println(time);
31         }
32     }
33 
34 }
复制代码

 

利用Calendar日历表分别获取时间,设置时间:

复制代码

复制代码
 1 package object;
 2 
 3 import java.util.Calendar;
 4 import java.util.Date;
 5 
 6 public class Date2 {
 7     public static void main(String[] args) {
 8         Calendar c = Calendar.getInstance();
 9         c.add(Calendar.YEAR, 3);//年+3年
10         c.set(2018,1,1);//重新设置时间
11         int year = c.get(Calendar.YEAR);
12         int month = c.get(Calendar.MONTH);//获取的月份是 0-11,所以实际月份要+1
13         int date = c.get(Calendar.DATE);
14         int hour = c.get(Calendar.HOUR_OF_DAY);
15         int minute = c.get(Calendar.MINUTE);
16         int second = c.get(Calendar.SECOND);
17         
18         System.out.println(year);//年
19         System.out.println(month);//月份
20         System.out.println(hour);//小时
21         System.out.println(minute);//分钟
22         System.out.println(second);//秒
23         System.out.println(date);//日
24         
25 
26     }
27     
28 }
复制代码

---------------------
作者:NPException
来源:CSDN
原文:https://blog.csdn.net/qq_36850813/article/details/79769400
版权声明:本文为博主原创文章,转载请附上博文链接!

posted @ 2019-01-18 14:02  悦文  阅读(399)  评论(0编辑  收藏  举报