Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

时间:2023-03-08 16:54:13

1.Java四类八种数据类型

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0

short:短整型,在内存中占16位,即2个字节,取值范围-32768~32717,默认值0

int:整型,用于存储整数,在内在中占32位,即4个字节,取值范围-2147483648~2147483647,默认值0

long:长整型,在内存中占64位,即8个字节-2^63~2^63-1,默认值0L

float:浮点型,在内存中占32位,即4个字节,用于存储带小数点的数字(与double的区别在于float类型有效小数点只有6~7位),默认值0

double:双精度浮点型,用于存储带有小数点的数字,在内存中占64位,即8个字节,默认值0

char:字符型,用于存储单个字符,占16位,即2个字节,取值范围0~65535,默认值为空

boolean:布尔类型,占1个字节,用于判断真或假(仅有两个值,即true、false),默认值false

2.数据类型的转换

(1)将字符串(String)转化为整型(int)

@Test
public void testDataType(){
String str="123";
//将字符串转换为整数
int i = Integer.parseInt(str);
System.out.println("i的值为:"+i);
}

控制台输出为:

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

(2)整型(int)转化为字符串(String)

 @Test
public void testDataType(){
int i=516;
//方法1
String str1 = String.valueOf(i);
//方法2
String str2 = Integer.toString(i);
//方法3:此方法最常用
String str3 = "" + i ;
System.out.println("str1的值为:"+str1);
System.out.println("str2的值为:"+str2);
System.out.println("str3的值为:"+str3);
}

控制台输出为:

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

(3)将字符串(String)转化为double类型

@Test
public void testDataType(){
String str="123.890";
//将字符串转换为double
double i = Double.parseDouble(str);
System.out.println("i的值为:"+i);
}

控制台输出:

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

处理方案:

@Test
public void testDataType(){
String str="123.890";
//将字符串转换为double
double i = Double.parseDouble(str);
i=i+6.110;
System.out.println("i的值为:"+i);
DecimalFormat df = new DecimalFormat("0.000");
String newStr=df.format(i);
System.out.println("i的值为:"+newStr);
}

利用DecimalFormat类,帮你用最快的速度将数字格式化为你需要的样子,调用format()方法,注意:这个方法的返回值类型为String

参考用法:

public static void main(String[] args){
double pi=3.1415927;//圆周率
//取一位整数
System.out.println(new DecimalFormat("0").format(pi));//3
//取一位整数和两位小数
System.out.println(new DecimalFormat("0.00").format(pi));//3.14
//取两位整数和三位小数,整数不足部分以0填补。
System.out.println(new DecimalFormat("00.000").format(pi));//03.142
//取所有整数部分
System.out.println(new DecimalFormat("#").format(pi));//3
//以百分比方式计数,并取两位小数
System.out.println(new DecimalFormat("#.##%").format(pi));//314.16% long c=299792458;//光速
//显示为科学计数法,并取五位小数
System.out.println(new DecimalFormat("#.#####E0").format(c));//2.99792E8
//显示为两位整数的科学计数法,并取四位小数
System.out.println(new DecimalFormat("00.####E0").format(c));//29.9792E7
//每三位以逗号进行分隔。
System.out.println(new DecimalFormat(",###").format(c));//299,792,458
//将格式嵌入文本
System.out.println(new DecimalFormat("光速大小为每秒,###米").format(c)); //光速大小为每秒299,792,458米
}

(4)指定日期样式

@Test
public void testDataType(){
SimpleDateFormat sf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date now=new Date();
String currentTime=sf.format(now);
System.out.println("当前时间为:"+currentTime);
}

控制台输出为:

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

(5)字符串与其它数据类型的转换

<1>其它类型向字符串的转换

①调用类的字符串转换方法:X.toString();

自动转换:X+“”;

③使用String的方法:String.valueOf(X);

注意:重点掌握第1种和第2种方法。

案例:

@Test
public void testDataType(){
ArrayList<String> list=new ArrayList<>();
list.add("linda");
list.add("bob");
list.add("jack");
//注意:利用toString方法将List集合转化为字符串
System.out.println(list.toString());
}

控制台输出为:

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

注意:集合元素是用中括号[  ]

(6)List转换为数组,数组转List

<1>List转换为数组

@Test
public void testDataType(){
ArrayList<String> list=new ArrayList<>();
list.add("linda");
list.add("bob");
list.add("jack");
//List转换为Array
String[] strings = new String[list.size()];
list.toArray(strings);
//控制台输出数组元素
System.out.println(strings[0]);
System.out.println(strings[1]);
System.out.println(strings[2]); }

控制台输出:

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

<2>数组转List

@Test
public void testDataType(){
String[] s = {"a","b","c"};
List list = Arrays.asList(s);
System.out.println(list.toString()); }

控制台输出:

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

(7)字符串分隔成数组

@Test
public void testStringSplit() {
String str="1-2-3";
String[] split = str.split("-");
System.out.println(split[0]);
}

控制台输出:

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

3.java 获取当前时间、年、月、日、时、分、秒

@Test
public void testGetYear(){
Calendar now = Calendar.getInstance();
System.out.println("年:"+ now.get(Calendar.YEAR));
System.out.println("月:"+ (now.get(Calendar.MONTH) +1));
System.out.println("日:"+ now.get(Calendar.DAY_OF_MONTH));
System.out.println("时:"+ now.get(Calendar.HOUR_OF_DAY));
System.out.println("分:"+ now.get(Calendar.MINUTE));
System.out.println("秒:"+ now.get(Calendar.SECOND));
Date d =new Date();
SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("当前时间:"+ sdf.format(d)); }

控制台输出:

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)

4.字符串相关操作

(1)转换大小写

 @Test
public void testChange() {
String str = "Din933";
System.out.println("原字符串:" + str);
String newA = str.toUpperCase();
System.out.println("大写转换:" + newA);
String newB = str.toLowerCase();
System.out.println("小写转换:" + newB);
}

效果图:

Java 常用知识点汇总(数据类型之间转换、字符串的相关操作-截取、转换大小写等)