阿里巴巴java手册示例

  1 package com.led.daorumysql;
  2 
  3 
  4 /**
  5  * @Description:alibaba java development manual
  6  * @author 86157
  7  *
  8  */
  9 public class AlibabaStyle {
 10     /**
 11      * 【强制】大括号的使用约定。如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果
 12      * 是非空代码块则:
 13      * 1) 左大括号前不换行。
 14      * 2) 左大括号后换行。
 15      * 3) 右大括号前换行。
 16      * 4) 右大括号后还有 else 等代码则不换行;表示终止右大括号后必须换行。
 17      * 2. 【强制】 左括号和后一个字符之间不出现空格;同样,右括号和前一个字符之间也不出现空格。
 18      * 代码块缩进 4 个空格,如果使用 tab 缩进,请设置成 1 个 tab 为 4 个空格
 19      * @param args
 20      */
 21     public static void main(String[] args) {
 22         //方法名、参数名、成员变量、局部变量都统一使用 lowerCamelCase 风格,必须遵从驼峰形式
 23         String localValue;
 24         //常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长
 25         String MAX_STOCK_COUNT = "3";
 26         String SUCCESS = "success";
 27         //运算符之间左右加空格(运算符包括赋值运算符=、逻辑运算符&&、加减乘除符号、三目运行符等)
 28         String s1 = "a";
 29         String s2 = null;
 30         int k = 3;
 31         String s3 = (k > 0) ? "k is larger than zero" : "k is smaller than zero";
 32         //long 或者 Long 初始赋值时,必须使用大写的 L,不能是小写的 l,小写容易跟数字 1混淆,造成误解
 33         long j = 2L;
 34         long j2 = Long.valueOf(k);
 35         //if、else、switch、while、for等语句符号之间加空格
 36         if ("a".equals(s1)) {
 37             System.out.println("s1 is a");
 38         } else {
 39             System.out.println("s1 is not a");
 40         }
 41         /*一定要先进行null判断,"".equals(s1)而不是s1.equals("")
 42          * Object 的 equals 方法容易抛空指针异常,应使用常量或确定有值的对象来调用 equals。
 43          * 正例: "test".equals(object)
 44         */
 45         if (s2 == null || "".equals(s1)) {
 46             System.out.println("s2 is null or empty string");
 47         }
 48         for (int i = 0; i < 5; i++) {
 49             System.out.println(i);
 50         }
 51         switch (k) {
 52             case 1:
 53                 System.out.println("Monday");
 54                 break;
 55             case 2:
 56                 System.out.println("Tuesday");
 57                 break;
 58             case 3:
 59                 System.out.println("Wednesday");
 60                 break;
 61             case 4:
 62                 System.out.println("Thursday");
 63                 break;
 64             default:
 65                     System.out.println("~~~~~");
 66                     break;
 67         }
 68         while (k > 0) {
 69             k --;
 70             System.out.println("k=" + k);
 71         }
 72     }
 73     //法参数在定义和传入时,多个参数逗号后边必须加空格
 74     public void test(int a, int b, String c){
 75         /**
 76          * 单行字符数限制不超过 120 个,超出需要换行,换行时,遵循如下原则:
 77          * 1) 换行时相对上一行缩进 4 个空格。
 78          * 2) 运算符与下文一起换行。
 79          * 3) 方法调用的点符号与下文一起换行。
 80          * 4) 在多个参数超长,逗号后进行换行。
 81          * 5) 在括号前不要换行,
 82          */
 83         StringBuffer sb = new StringBuffer();
 84         sb.append("1").append("2")
 85             .append("3")
 86             .append("4")
 87             .append("5");
 88     }
 89     public int compare(String s1, String s2) {
 90         int n1 = s1.length();
 91         int n2 = s2.length();
 92         int min = Math.min(n1, n2);
 93         for (int i = 0; i < min; i++) {
 94             char c1 = s1.charAt(i);
 95             char c2 = s2.charAt(i);
 96             if (c1 != c2) {
 97                 c1 = Character.toUpperCase(c1);
 98                 c2 = Character.toUpperCase(c2);
 99                 if (c1 != c2) {
100                     c1 = Character.toLowerCase(c1);
101                     c2 = Character.toLowerCase(c2);
102                     if (c1 != c2) {
103                         return c1 - c2;
104                     }
105                 }
106             }
107         }
108         return n1 - n2;
109     }
110     
111 }
原文地址:https://www.cnblogs.com/stm32stm32/p/9084079.html