java小知识汇总

    科技2025-05-21  41

     

    Table of Contents

    List怎么转换成int[]

    32 位的有符号整数反转

    字符串反转 (直接在原数组上修改)


     

    List<Integer>怎么转换成int[]

    List<Integer> resultList=new ArrayList<Integer>(); int[] result=resultList.stream().mapToInt(Integer::intValue).toArray();

    32 位的有符号整数反转

    public int reverse(int x) { String str = String.valueOf(x); String revStr = ""; int result=0; if (str.charAt(0) == 45) { revStr=new StringBuffer(str.substring(1)).reverse().toString(); revStr="-"+revStr; } else { revStr = new StringBuffer(str).reverse().toString(); } try { result = Integer.parseInt(revStr); }catch (Exception e){ return 0; } return result; }

    示例 1:

    输入: 123 输出: 321

     示例 2:

    输入: -123 输出: -321

    示例 3:

    输入: 120 输出: 21

    字符串反转 (直接在原数组上修改)

    public void reverseString(char[] s) { int left = 0; int right = s.length - 1; char temp = 0; if (s.length > 0) { do { temp = s[left]; s[left] = s[right]; s[right] = temp; left++; right--; } while (left < right); } }

    示例 1:

    输入:["h","e","l","l","o"] 输出:["o","l","l","e","h"]

    示例 2:

    输入:["H","a","n","n","a","h"] 输出:["h","a","n","n","a","H"]

    找出第一个只出现一次的字符

    public char firstUniqChar(String s) { char result = ' '; for (int i = 0; i < s.length(); i++) { if (s.length() == 1) { result = s.charAt(0); break; } if (i < s.length() - 1 && s.substring(i + 1).indexOf(s.charAt(i)) == -1) { result = s.charAt(i); break; } s = s.replaceAll(String.valueOf(s.charAt(i)), ""); i--; } return result; }

    示例 1:

    输入:"abaccdeff" 输出:'b'

    示例 2:

    输入:"cc" 输出:' '

    实例3:

    输入:"z" 输出:'z'

    实例4:

    输入:"aadadaad" 输出:' '

    实例5:

    输入:"dddccdbba" 输出:'a'

     

    Processed: 0.009, SQL: 8