我是做ios 的,准备ios 和安卓一起做,所以才开始学习java,做一些基本的笔记,帮助自己学习进步。
类和对象
变量和常量
变量:int a = 1;
a = 2;
常量: final int b = 2;
b = 3; //会报错
数据结构
基本数据类型:
整数:byte ,short ,int ,long
浮点:folat ,double
字符:char ,字符串:string
布尔:boolean
举个栗子:
String name="爱慕课";
char sex='男';
int num=18;
double price=120.5;
boolean isOK=true;
引用数据类型
类:class
接口:interface
数组
类型转换
int 可以转 double
栗子:
double avg1=78.5;
int rise=5;
double avg2=avg1+rise;
double 强制转换才能转 int
举个栗子:
double heightAvg1=176.2;
int heightAvg2 = (int) heightAvg1;
运算符
+, - , * , / , % , ++ , --
其中,++和--既可以出现在操作数的左边,也可以出现在右边
左: 先加再赋值 .
右:先赋值再加
赋值
=, += , -= , *=, /= , %=
比较
, < , <= , >= , == , !=
1、 > 、 < 、 >= 、 <= 只支持左右两边操作数是数值类型
2、 == 、 != 两边的操作数既可以是数值类型,也可以是引用类型
逻辑
与:&&
或: ||
非: !
异或 : ^ //有,且只能有一个为真
条件
布尔表达式 ? 表达式1 :表达式2 //三元
![](https://img.haomeiwen.com/i3689111/34e91165d6dd063d.jpg)
控制流
if (条件) {代码块}
if (条件) {代码块}else{代码块}
swich (表达式) {case 值1:break; case 值 2:break; default:break;}
while (循环条件) {循环语句}
do {循环语句} while (循环条件)
while 与 do while :
while 先判断,后执行。条件为假,有可能一次也不执行.
do while 先执行,后判断。至少执行一次.
for (循环变量初始化 ; 循环条件 ; 循环变量变化) { 代码块 }
关键词
: break: 结束循环 . continue :结束当前循环,继续执行下次循环.
循环嵌套: 著名之“冒泡法”
数组
语法:数据类型[ ] 数组名;
或者 数据类型 数组名[ ];
栗子:
int[] number = {'1','2'};
String strings[] = {"name","score","number"};
语法:数组名 = new 数据类型 [ 数组长度 ];
**下标访问,赋值 : strings[2] = "no"; **
**遍历: **for (int i = 0;i < strings.length; i ++) { System.out.println(strings[i]); }
1、 排序
语法:Arrays.sort(数组名);
****2、 将数组转换为字符串****
语法:Arrays.toString(数组名);
foreach : for (元素类型 元素变量:遍历对象) {代码块}
二维数组
数据类型[][] 数组名 = new 数据类型[行][列];
或
数据类型 [][] 数组名;
数组名 = new 数据类型[行][列];
方法
定义 : 访问修饰符 返回值类型 方法名(参数列表) { 方法体 }
1、 访问修饰符:方法允许被访问的权限范围, 可以是 public、protected、private
2、 返回值类型:方法返回值的类型,如果方法不返回任何值,则返回值类型指定为 void ;如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用 return 语句返回值
3、 参数列表:传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开
调用 : 对象名.方法名()
方法的重载 :如果同一个类中包含了两个或两个以上方法名相同、方法参数的个数、顺序或类型不同的方法,则称为方法的重载
![](https://img.haomeiwen.com/i3689111/1bbfbd42c269c93b.jpg)
网友评论