阿里巴巴java手册示例
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手册示例的更多相关文章
- 阿里 Java 手册系列教程:为啥强制子类、父类变量名不同?
		
摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! 目录 父子类变量名相同会咋样? 为啥强制子类.父类变量名不同? ...
 - 阿里巴巴Java开发手册评述
		
2016年底的时候阿里巴巴公开了其在内部使用的Java编程规范.随后进行了几次版本修订,目前的版本为v1.0.2版.下载地址可以在其官方社区-云栖社区https://yq.aliyun.com/art ...
 - 阿里巴巴Java开发手册评
		
2016年底的时候阿里巴巴公开了其在内部使用的Java编程规范.随后进行了几次版本修订,目前的版本为v1.0.2版.下载地址可以在其官方社区-云栖社区https://yq.aliyun.com/art ...
 - 《阿里巴巴 Java 开发手册》读书笔记
		
偶然看到阿里巴巴居然出书了???趁着满减活动(节约节约....)我赶紧买来准备看看,刚拿到的时候掂量了好多下,总觉得商家给我少发了一本书,结果打开才知道..原来这本书这么小.... 编码规范的重要性 ...
 - 阿里巴巴Java开发手册及Java代码规约扫描eclipse和IDEA插件
		
<阿里巴巴Java开发手册>: https://github.com/alibaba/p3c/blob/master/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B ...
 - 阿里巴巴 Java 开发手册评述
		
http://blog.jobbole.com/110427 阿里巴巴Java开发手册(终极版)https://pan.baidu.com/s/1c1UQM7Q 阿里巴巴Java开发规约插件p3cGi ...
 - 《阿里巴巴Java开发手册》扫描插件正式发布--插件安装和使用分析
		
"不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!" 阿里巴巴于10月14日上午9:00在杭州云栖大会<研发效能峰会>上,正式发布<阿里巴巴Java开发 ...
 - 码出高效,阿里巴巴JAVA开发手册1.4.0
		
码出高效,阿里巴巴JAVA开发手册1.4.0阅读笔记 一.编程规约(三) 代码格式// 关键词if与括号之间必须有一个空格,括号内的f与左括号,0与右括号不需要空格 if (flag == 0) { ...
 - 阿里巴巴Java开发手册——速读记录
		
本随笔基于阿里巴巴Java开发手册V1.2,陆陆续续记录一些现阶段能理解的,有启发的内容,并将持续更新 最佳实践——插件使用已经发布为随笔!http://www.cnblogs.com/jiangbe ...
 
随机推荐
- java基础知识-数据类型及转换
			
1.java中的常量大体分为两种: <1>字面量常量 <2>自定义常量 2.java中常量(字面量)的分类:<1>,整数常量:直接出现的整数<2>,小数 ...
 - day04_雷神_函数
			
#day04 1.函数 1.1函数传参 函数定义的时候是形参:函数执行的时候是实参 实参: 位置参数.关键字参数.混合参数 位置参数:位置一一对应 关键字参数: 可以位置不对应 混合参数:关键字参数要 ...
 - 9.js入门
			
1.Js介绍 ◆js是一款运行在客户端的网页编程语言. ◆组成部分 ★ecmascript js标准 ★dom 通过js操作网页元素 ★bom 通过api操作浏览器 ◆特点 ★简单易用 ★解释执行 ★ ...
 - [leetcode 120]triangle 空间O(n)算法
			
1 题目 Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjac ...
 - Kali Linux渗透测试实战 2.2 操作系统指纹识别
			
目录 2.2 操作系统指纹识别 2.2.1 Banner抓取 2.2.2 TCP 和 ICMP 常规指纹识别技术 TCP数据报格式 ICMP首部格式 TTL与TCP窗口大小 FIN探测 BOGUS f ...
 - gitlab 部署
			
Gitlab 安装 GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目.它拥有与Github类似的功能, ...
 - neo4j CQL  使用
			
neo4j CQL 使用 1. create命令 CREATE (emp:Employee) #创建一个emp 员工标签 CREATE (dept:Dept) #部门标签 #Added 1 label ...
 - 关于c#的知识博客
			
C#.NET Request相关操作:获取IP.端口其他一些: http://www.cnblogs.com/moss_tan_jun/archive/2011/02/10/1950575.html
 - 多个文本框录入,使用回车键替找Tab键
			
为了快速把form的所有文框输入完毕,我们不必使用鼠标去focus文本框. 在html页中放几个文本框: <div class="DivInput"> <div& ...
 - 关于Maven整合SSM项目中报错Invalid bound statement (not found):的问题解决
			
如图:控制不报错 页面就是报500的错误 查阅了好多资料 都说是Mapper文件写的不对 我仔细找了好几遍也解决不了问题.. 解决: 坑爹的问题害我找了一上午原因,原来是需要在pom.xml文件中 ...