1.Integer.parseInt(String s, int radix)方法的作用是:将radix进制的字符串s转化成10进制的int型数字并返回。

          Integer.valueof(String s, int radix)方法调用了上述方法,可以实现同样的效果。

  2.String[] aStr = A.split(" ");方法将字符串类型的A按照指定的分隔符转换成字符串串数组aStr

  3.String[] result = new String[list.size()];     list.toArray(result);将list转换成String类型的数组result

  4.List<String> aList = Arrays.asList(aStr);将字符串数组类型的aStr转换成List类型的aList

  5.Collections.sort(aList);可以按照默认的顺序对集合aList中的元素进行排序。Arrays.sort(int[] g);可以对数组g进行排序。

  6.StringBuffer中的new StringBuffer(word).reverse().toString()方法可以将字符串word传入其中构造一个sb对象并且反转原来的word字符串

  7.String的trim()方法是去掉字符串开头和结尾的空格,中间的空格不管。

  8.String[] testl = test.split(" |\\.");可以使用‘|’来使用多个分隔符空格和点进行字符串分割,有的需要转义,使用‘\\’,例如这里的点就需要转义。

  9.HashMap中的put方法,如果put多次相同的键会覆盖,另外for (String key : count.keySet())可以遍历HashMap集合。

  10.使用队列功能时,要使用LinkedList<Integer> list = new LinkedList<>();来声明生成的是一个链队列。list.get(0)获得最后add进去的元素。和getLast()同样效果。

  也可以使用Stack<Integer> stack = new Stack();来使用堆栈。

  11.Arrays.sort(candies)可以对数组进行排序。

  12.string转换成int  :Integer.valueOf("12") (返回Integer对象) 或Integer.PaseInt("12")(返回int)

            int转换成string : String.valueOf(12)  

           char转换成string:String str=String.valueOf('2')

  13.在进行HashSet初始化的时候,如果觉得一个一个add代码太长,可以通过一个数组然后再循环添加

        Set<Character> vowel = new HashSet();
        for (char c: new char[]{'a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U'})
            vowel.add(c);

  14.word.substring(1)表示:从下标为1的位置开始到最后

  15.需要记住的ASCII码表:0(48),9(57),A(65),Z(90),a(97),z(122)

  16.Integer.parseInt无法将一个负数的补码转换成原始的负数,否则会报错java.lang.NumberFormatException

        System.out.println(Integer.toBinaryString(-20));
        System.out.println(Integer.parseInt("11111111111111111111111111101100", 2));

   17.Character.isLetter(c)判断是不是字母,Character.toLowerCase(c)将大小写都统一成小写

  18.return !s.matches(".*LLL.*|.*A.*A.*");正则表达式,如果A出现两次即以上或者L连续出现三次,返回false,否则,返回true  

  19. if (set.contains(dividend)) return false;   else set.add(dividend);对于有可能循环出现的数来说,最好的方法就是使用集合,如果存在就返回,不存在就添加。

  20.两个字符型的整数直接相加得到的是二进制的相加的结果。例如‘2’+‘2’得到的结果是ASCII码相加,例如50+50=100

  21.在有时间要求的题目中,使用递归比使用迭代所需要的时间长很多,所以大部分情况可以考虑使用迭代。

  22.String vowels = "aeiouAEIOU";可以用String的contains方法而就可以不用集合set了。vowels.contains(chars[start]+"")

  23.杨辉三角,空间复杂度O(k),k表示第几行(从0开始),主要使用List集合的set(int index, E element);可以在index位置设置元素值element

    public List<Integer> getRow(int rowIndex) {
        List<Integer> pascal = new ArrayList<>();
        for (int i = 0; i <= rowIndex; i++) {
            pascal.add(0, 1);
            for (int j = 1; j < pascal.size()-1; j++) {
                pascal.set(j, pascal.get(j) + pascal.get(j+1));
            }
        }
        return pascal;
    }
View Code

相关文章:

  • 2021-07-27
  • 2022-12-23
  • 2021-09-25
  • 2021-07-06
  • 2021-08-27
  • 2018-04-17
猜你喜欢
  • 2021-08-11
  • 2021-05-13
  • 2022-02-06
  • 2022-12-23
  • 2021-09-26
  • 2021-07-24
相关资源
相似解决方案