package com.led.daorumysql;

 /**
* @Description:alibaba java development manual
* @author 86157
*
*/
public class AlibabaStyle {
/**
* 【强制】大括号的使用约定。如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果
* 是非空代码块则:
* 1) 左大括号前不换行。
* 2) 左大括号后换行。
* 3) 右大括号前换行。
* 4) 右大括号后还有 else 等代码则不换行;表示终止右大括号后必须换行。
* 2. 【强制】 左括号和后一个字符之间不出现空格;同样,右括号和前一个字符之间也不出现空格。
* 代码块缩进 4 个空格,如果使用 tab 缩进,请设置成 1 个 tab 为 4 个空格
* @param args
*/
public static void main(String[] args) {
//方法名、参数名、成员变量、局部变量都统一使用 lowerCamelCase 风格,必须遵从驼峰形式
String localValue;
//常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长
String MAX_STOCK_COUNT = "3";
String SUCCESS = "success";
//运算符之间左右加空格(运算符包括赋值运算符=、逻辑运算符&&、加减乘除符号、三目运行符等)
String s1 = "a";
String s2 = null;
int k = 3;
String s3 = (k > 0) ? "k is larger than zero" : "k is smaller than zero";
//long 或者 Long 初始赋值时,必须使用大写的 L,不能是小写的 l,小写容易跟数字 1混淆,造成误解
long j = 2L;
long j2 = Long.valueOf(k);
//if、else、switch、while、for等语句符号之间加空格
if ("a".equals(s1)) {
System.out.println("s1 is a");
} else {
System.out.println("s1 is not a");
}
/*一定要先进行null判断,"".equals(s1)而不是s1.equals("")
* Object 的 equals 方法容易抛空指针异常,应使用常量或确定有值的对象来调用 equals。
* 正例: "test".equals(object)
*/
if (s2 == null || "".equals(s1)) {
System.out.println("s2 is null or empty string");
}
for (int i = 0; i < 5; i++) {
System.out.println(i);
}
switch (k) {
case 1:
System.out.println("Monday");
break;
case 2:
System.out.println("Tuesday");
break;
case 3:
System.out.println("Wednesday");
break;
case 4:
System.out.println("Thursday");
break;
default:
System.out.println("~~~~~");
break;
}
while (k > 0) {
k --;
System.out.println("k=" + k);
}
}
//法参数在定义和传入时,多个参数逗号后边必须加空格
public void test(int a, int b, String c){
/**
* 单行字符数限制不超过 120 个,超出需要换行,换行时,遵循如下原则:
* 1) 换行时相对上一行缩进 4 个空格。
* 2) 运算符与下文一起换行。
* 3) 方法调用的点符号与下文一起换行。
* 4) 在多个参数超长,逗号后进行换行。
* 5) 在括号前不要换行,
*/
StringBuffer sb = new StringBuffer();
sb.append("1").append("2")
.append("3")
.append("4")
.append("5");
}
public int compare(String s1, String s2) {
int n1 = s1.length();
int n2 = s2.length();
int min = Math.min(n1, n2);
for (int i = 0; i < min; i++) {
char c1 = s1.charAt(i);
char c2 = s2.charAt(i);
if (c1 != c2) {
c1 = Character.toUpperCase(c1);
c2 = Character.toUpperCase(c2);
if (c1 != c2) {
c1 = Character.toLowerCase(c1);
c2 = Character.toLowerCase(c2);
if (c1 != c2) {
return c1 - c2;
}
}
}
}
return n1 - n2;
} }

阿里巴巴java手册示例的更多相关文章

  1. 阿里 Java 手册系列教程:为啥强制子类、父类变量名不同?

    摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 目录 父子类变量名相同会咋样? 为啥强制子类.父类变量名不同? ...

  2. 阿里巴巴Java开发手册评述

    2016年底的时候阿里巴巴公开了其在内部使用的Java编程规范.随后进行了几次版本修订,目前的版本为v1.0.2版.下载地址可以在其官方社区-云栖社区https://yq.aliyun.com/art ...

  3. 阿里巴巴Java开发手册评

    2016年底的时候阿里巴巴公开了其在内部使用的Java编程规范.随后进行了几次版本修订,目前的版本为v1.0.2版.下载地址可以在其官方社区-云栖社区https://yq.aliyun.com/art ...

  4. 《阿里巴巴 Java 开发手册》读书笔记

    偶然看到阿里巴巴居然出书了???趁着满减活动(节约节约....)我赶紧买来准备看看,刚拿到的时候掂量了好多下,总觉得商家给我少发了一本书,结果打开才知道..原来这本书这么小.... 编码规范的重要性 ...

  5. 阿里巴巴Java开发手册及Java代码规约扫描eclipse和IDEA插件

    <阿里巴巴Java开发手册>: https://github.com/alibaba/p3c/blob/master/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B ...

  6. 阿里巴巴 Java 开发手册评述

    http://blog.jobbole.com/110427 阿里巴巴Java开发手册(终极版)https://pan.baidu.com/s/1c1UQM7Q 阿里巴巴Java开发规约插件p3cGi ...

  7. 《阿里巴巴Java开发手册》扫描插件正式发布--插件安装和使用分析

    "不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!" 阿里巴巴于10月14日上午9:00在杭州云栖大会<研发效能峰会>上,正式发布<阿里巴巴Java开发 ...

  8. 码出高效,阿里巴巴JAVA开发手册1.4.0

    码出高效,阿里巴巴JAVA开发手册1.4.0阅读笔记 一.编程规约(三) 代码格式// 关键词if与括号之间必须有一个空格,括号内的f与左括号,0与右括号不需要空格 if (flag == 0) { ...

  9. 阿里巴巴Java开发手册——速读记录

    本随笔基于阿里巴巴Java开发手册V1.2,陆陆续续记录一些现阶段能理解的,有启发的内容,并将持续更新 最佳实践——插件使用已经发布为随笔!http://www.cnblogs.com/jiangbe ...

随机推荐

  1. oracle数据库 ORA-01017的解决办法

    alter user 用户名 identified by 新密码:

  2. Azure DevOps Server (TFS)中代码文件换行问题解决方案(Git)

    之前写过一篇博客"探索TFS Git 库文件换行(CRLF)的处理方式",主要是针对TFVC代码库的. 下面这篇文章说明如何在TFS的Git库中处理代码换行的问题. 概述 在Azu ...

  3. mysql 返回结果按照指定的id顺序返回

    mysql> ,,,,) order by field(id,,,,,) limit ,; +----+-------+------+ | id | name | sex | +----+--- ...

  4. C# 不能用于文件名的字符

    在 Windows 有一些字符是不能作为文件名,尝试重命名一个文件,输入/ 就可以看到windows 提示的不能作为文件名的字符 那么具体是包括哪些符号不能作为文件名? Tilde (~) Numbe ...

  5. Git清空历史,清空历史删除的文件,降低.git 文件大小

    执行以下步骤之前 请做好源码备份 本操作用来清理github上面的历史删除文件,减少库的体积. 第一步骤 下载JDK环境和JAR包 https://rtyley.github.io/bfg-repo- ...

  6. 背水一战 Windows 10 (47) - 控件(ScrollViewer 特性): Chaining, Rail, Inertia, Snap, Zoom

    [源码下载] 背水一战 Windows 10 (47) - 控件(ScrollViewer 特性): Chaining, Rail, Inertia, Snap, Zoom 作者:webabcd 介绍 ...

  7. HashSet源码解析

    此文已由作者赵计刚授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 6.1.对于HashSet需要掌握以下几点 HashSet的创建:HashSet() 往HashSet中添加 ...

  8. delphi char数组、string和Pchar的相互转换

    因为要调用windows的api或者给vc++写接口,很多地方都要用到pchar,现在将char数组.string和pchar之间的相互转换都列出来,都是网上找的资料,我总结一下,先直接上代码,再讲原 ...

  9. ubuntu下nodejs源码安装

    1.从github选择下载自己要安装的nodejs版本,https://github.com/nodejs/node/releases,我下载的版本是node-9.11.2.tar.gz 2.解压no ...

  10. 设计模式《JAVA与模式》之责任链模式

    在阎宏博士的<JAVA与模式>一书中开头是这样描述责任链(Chain of Responsibility)模式的: 责任链模式是一种对象的行为模式.在责任链模式里,很多对象由每一个对象对其 ...