java转换
16进制转十进制:int i = Integer.parseInt(str,16);
Integer.parseInt(str.substring(2),16);带有0x标识的十六进制数,需要截去前面两位标识。
十进制转二进制:String s = Integer.toBinaryString(data) ;data为int
十进制转16进制:String s = Integer.toHexString(data);data为int
String转换为Integer:Integer.parseInt(String s) Integer.valueOf(String s)
Integer转换为String:Integer.toString() String.valueOf(Integer i)
BigInteger和Integer和String之间的类型转换
BigInteger bigInteger = BigInteger.valueOf(13L); System.out.println(bigInteger);//13 BigInteger bigInteger = new BigInteger("123"); System.out.println(bigInteger);//123
String和各种类型的数组之间的类型转换
// 字符,字节类型 char[] c={'a','b','c','d'}; String s = new String(c); System.out.println(s);//abcd // 整型,浮点型 int[] ints={1,2,3,4,5}; String s = Arrays.toString(ints); System.out.println(s);//[1, 2, 3, 4, 5]
set--->list
//方法一
HashSet<Integer> integers = new HashSet<>(); ArrayList<Integer> list = new ArrayList<>(integers);
//方法二
HashSet<Integer> set = new HashSet<>();
List<Integer> list = set.stream().collect(Collectors.toList());
list-->set
//方法一
ArrayList<Integer> list = new ArrayList<>(); HashSet<Integer> integers = new HashSet<>(list);
//方法二
ArrayList<Integer> list = new ArrayList<>();
Set<Integer> set = list.stream().collect(Collectors.toSet());
list-->Integer数组
ArrayList<Integer> list = new ArrayList<>(); Integer[] integers = list.toArray(new Integer[0]);
Integer数组-->List 注:基本数据类型的数组无法转换为List
Integer[] integer={1,2,3}; List<Integer> list = Arrays.asList(integer);
list---->int数组
ArrayList<Integer> list = new ArrayList<>(); int[] ints = list.stream().mapToInt(x -> x).toArray();
set-->int数组
HashSet<Integer> integers = new HashSet<>(); int[] ints = integers.stream().mapToInt(x -> x).toArray();
获取当前时间并转化为yyyy-MM-dd HH:mm:ss格式:
String timeStr1=LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
将指定时间转为时间戳
//传入指定时间 public void convertToTimestamp(String time) { try { Date date = new SimpleDateFormat("yyyy-MM-dd").parse(time); Calendar cal = Calendar.getInstance(); cal.setTime(date); long timestamp = cal.getTimeInMillis(); System.out.println("10位时间戳="+timestamp); System.out.println("13位时间戳"+timestamp/1000); } catch (ParseException e) { e.printStackTrace(); } }
将时间戳转为时间格式
//传入时间戳即可 public String conversionTime(String timeStamp) { //yyyy-MM-dd HH:mm:ss 转换的时间格式 可以自定义 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //转换 String time = sdf.format(new Date(Long.parseLong(timeStamp))); return time; }