枚举类型与String类型之间的转换
public enum Gender {
男,女
}
public class Text1 {
public static void main(String[] args) {
//枚举的索引
System.out.println(Gender.男.ordinal());//输出0
System.out.println(Gender.男.toString());//枚举转换为String类型
String sex="女";
Gender valueOf=Enum.valueOf(Gender.class,sex);
//将string 转换成枚举类型
System.out.println(valueOf.ordinal());//输出值为1
}
}
char与String类型之间的转换
string转换成char
1. 使用String.charAt(index)
(返回值为char)可以得到String中某一指定位置的char。
2. 使用String.toCharArray()
(返回值为char[])可以得到将包含整个String的char数组。这样我们就能够使用从0开始的位置索引来访问string中的任意位置的元素。
char转换成string
1. String s = String.valueOf('c'); //效率最高的方法
2. String s = String.valueOf(new char[]{'c'}); //将一个char数组转换成String
3. String s = Character.toString('c');// Character.toString(char)方法实际上直接返回String.valueOf(char)
4. String s = new Character('c').toString();5. String s = "" + 'c';// 虽然这个方法很简单,但这是效率最低的方法//
Java中的String Object的值实际上是不可变的,是一个final的变量。// 所以我们每次对String做出任何改变,
都是初始化了一个全新的String Object并将原来的变量指向了这个新String。// 而Java对使用+运算符处理String相加进行了方法重载。
// 字符串直接相加连接实际上调用了如下方法:// new StringBuilder().append("").append('c').toString();
6. String s = new String(new char[]{'c'});
包装类:基本数据类对应的引用类型,就称为包装类
byte:Byte
short:Short
int:Integer
long:Long
double:Double
float:Float
char:Character
boolean:Boolean
装箱:将基本类型转换为对应的包装类类型,我们成为装箱 拆箱:将包装类类型转换为基本类型,拆箱
DateFormat和SimpleDateFormat以及Calendar类的用法
public static void main(String[] args) {
Date now=new Date();
//短日期格式化
DateFormat format=DateFormat.getInstance();
String str=format.format(now);
System.out.println(str);
//个性化日期
DateFormat format1=DateFormat.getDateInstance(DateFormat.DEFAULT);
String str1=format1.format(now);
System.out.println(str1);
//时间个性化
DateFormat format2 = DateFormat.getTimeInstance(DateFormat.FULL);
String str2 = format2.format(now);
System.out.println(str2);
输出:18-4-25 下午3:44
2018-4-25
下午03时44分07秒 CST
SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss");
String str3 = sdf.format(now);
System.out.println(str3);
输出:2018年04月25日 03:49:27
Calendar now1=Calendar.getInstance();
now1.set(2015,4,6);
System.out.println("2015-4-6是一年中的第"+now1.get(Calendar.WEEK_OF_YEAR)+"周");
输出:2015-4-6是一年中的第19周