java算法题语法

该笔记刷算法题(leetcode、洛谷、蓝桥杯)中遇到常见的小语法进行整理:

int与char互转

int num = 9;
char c = (char)num;

char ch = '9';
num = (int)ch-'0';

逆序排列

int[] arr = {1,2,3,4,5};
Arrays.sort(arr, Collections.reverseOrder());

按绝对值逆序排序

nums = IntStream.of(nums)
        .boxed()
        .sorted((o1, o2)-> Math.abs(o2)-Math.abs(o1))
        .mapToInt(Integer::intValue).toArray();

数字求和

Arrays.stream(arr).sum()

数字和字符串的转化

  1. int -> String
String s = String.valueOf(i);
String s = Integer.toString(i);
  1. String->int
int i = Integer.parseInt(my_str);
int i = Integer.valueOf(my_str);

字符串和字符数组的相互转化

数字和字符的相互转化

int的字节比char的字节多,如果小变大即char变成int是可行的,但反之不行。因为你不可能把大的东西塞到小的容器里,只能强制类型转换。

// 小->大
int a = Integer.valueOf(c);
// 大->小
char c = (char)a;
posted @ 2022-05-12 17:42  明卿册  阅读(104)  评论(0编辑  收藏  举报