天外天工作室移动-Android 组培训 #1
- 本教程主要是为了后面的面向对象编程铺路,不会讲的非常细致。
- 本教程的项目结构均基于 IntelliJ IDEA
- java 源文件布局
package pkg;
import java.lang.Math;
public class Main {
public static void main(String[] args) {
System.out.print("a = ");
int a = Math.max(1, 2);
System.out.println(a);
}
}
一个Java文件通常有三个顶级语句,分别是包声明语句、导包语句、类声明语句,紧跟类声明语句的是类体。
- 关键字
Java 语言的关键字有:abstract、boolean、break、byte、case、catch、char、class、continue、default、do、double、else、extends、false、final、finally、float、for、if、implements、import、instanceof、int、interface、long、native、new、null、package、private、protected、public、return、short、static、super、switch、synchronized、this、throw、throws、transient、true、try、void、volatile、while。
Java语言保留字有:const、goto。
关键字不能用于命名变量或者类。
基本数据类型
int 整型变量
double 双精度浮点型变量
boolean 布尔类型
String 字符串类型(非基本数据类型)
数组 在类型后加上一对中括号[]变量的作用域
一对大括号{}包含一个作用域,又称为代码块(codeblock),内部的作用域可以访问外部的变量,外部的作用域无法访问内部的变量。但变量由外部作用域定义后,由内部作用域赋值,在其他外部作用域仍有效。
final 关键字定义常量,常量一经初始化便不可修改。-
基本语句
- 输出
System.out.println("Hello world!");//输出并换行 System.out.print("Hello world!");//输出不换行
- if 语句
boolean expression 为 boolean 类型的变量或者返回为 boolean 变量的语句,为 true 时,运行大括号中的语句。if(boolean expression){ statements; }
- for 循环
initialization : 单次运行初始化语句,for(initialization;boolean expression;update control variable) { statements; }
boolean expression : boolean类型的变量或者返回为boolean变量的语句,
update control variable : 末尾循环语句。
每次运行 statements 前,判断 boolean expression,为 true 时,运行循环体中的语句。 - foreach 循环
元素类型 T 元素变量 t : 遍历对象 obj,for(T t : obj){ statements; }
foreach 循环是 Java 中用于遍历类数组对象的一种经过简化的 for 循环。
- 输出
-
函数
- 基本概念
函数是定义在类中的一段有特定功能的代码块,便于代码复用。函数由函数声明和函数体构成:修饰符 T functionName (Parameter1 p1,Parameter2 p2,....) { statements; return t; }
T : 函数的返回类型,
functionName : 函数名,
Parameter1、Parameter2 : 参数类型,
p1、p2 : 参数
return t; : 返回语句,
t :返回的变量。- 函数重载(Overloading)
在同一个类中,允许存在一个以上的同名函数,只要它们的参数个数或者参数类型不同即可。
在调用时会根据调用时输入的参数自动选择调用函数。
- 基本概念
注释
Java 使用 c 风格的注释
//单行注释
/*
.......
*/多行注释List 的基本用法
List 是继承自 Collection 类的一个常用的集合类,可以理解为经过封装的数组。
List 按照元素以线性方式存储,允许存放重复对象。
List 接口的主要实现类包括:ArrayList 和 LinkedList。
ArrayList:代表长度可以变化的数组。允许对元素进行快速的随机访问,但是向 ArrayList 中插入与删除元素速度较慢。
常用方法:
add(obj) 添加元素 obj,
get(index) 获取索引为 index 的元素,
size() 返回 List 的大小,
clear() 清空 List ,
addAll(list) 将传入的 list 全部添加进当前 List,
isEmpty() 返回 List 是否为空,
调用 Collections.sort(list) 方法传入 list 为 List 进行排序。命名规范、编程规范
Java projects 路径不要有中文字符,
包名使用小写英文单词,
类名和文件名一致,使用大驼峰命名法,
常量名使用全英文大写字母,
函数、方法名和变量名使用小驼峰命名法。IDEA 使用小技巧
Ctrl + alt + L 一键格式化
Ctrl + / 注释选中行
Ctrl + Y 删除选中行
alt + Enter 纠错推荐
以下内容为 2017/09/28 后更新
- Java变长参数
在定义一个方法时,如果不确定调用时要传入的某种类型的参数个数,可以使用变长参数,用 "Type..."表示,调用该方法时便可传入个数不一定的某类型的参数。
在方法体内按照数组的方式调用参数。
e.g.方法定义:
public void func(int... ints) {
for (int i = 0; i < ints.length; i++) {
System.out.println(ints[i]);
}
}
调用:
func(1);
func(1,2);
func(4,6,7);
均可。
注意事项:
- 变长参数可和其他普通参数混合使用,但变长参数仅能放在参数列表的末尾。
- 变长参数不可与同类型的数组构成方法重载。