java随记 2月16
1.a=a+b 等于 a+=b ,且a+=b隐含强制类型转换
2.^ 表示异或 两个二进制同号为假,异号为真 即 0^0=0,1^1=0,0^1=1
3.三元运算 布尔表达式 ?表达式1:表达式2 例如:
String str = (8>5) ? "8大于5" : "8不大于5"
4.equals方法是java.lang.Object类方法。可以用于字符串比较内容,而对于非字符串来说,是只想的对象是否相同,例如
String s1,s2,s3 = "abc", s4 = "abc"; s1 = new String("abc"); s2 = new String("abc"); s1==s2 是false //他们内存地址不一样,也就是指向的对象不一样 s1.equals(s2) 是 true //两个变量的所包含的内容是abc,故相等 StringBuffer s1 = new StringBuffer("a") ; StringBuffer s2 = new StringBuffer("a") ; System.out.println((s1.equals(s2))); //结果为false //因为StringBuffer类中没有重新定义equals方法,因此这个方法来自Object类,用来比较指向地址
5. for循环 for(循环变量初始化;循环条件;循环变量变化){ 循环操作 }
for (int i = 1;i<=1000;i++){ System.out.println("ok!") }
可以省略for中初始化语句,但是";"不能省略
int i = 0; //循环变量i在for语句之前赋值 for(;i<10;i++){ xxxx }
配合break语句,可以在指定地方结束整个循环,执行后面语句
public static void main(String[] args){ for(int i =1;i<10;i++){ if((i>2) &&(i%3==0)){ break; } System.out.println(i); } System.out.println("end"); //运行结果 1 2 end }
配合continue ,跳过循环体中剩余的语句,执行下一次循环
6.数组
6.1 声明数组类型 int[] scores; double height[]; String[] names;
6.2 分配空间 数组名 = new 数据类型[数组长度]; scores = new int[5];
6.1和6.2 合并可以写成:int[] scores = new int[5](常用)
声明,分配空间,赋值可以直接写成 int[] scores={1,2,3,4} 等于 int[] scores = new int[]{1,2,3,4} //[]里必须为空,不能写指定长度
Java 数组的常用方法:
Arrays.sort(数组名) //数组升序排列
Arrays.toString(数组名) //数组转换字符串
7.foreach语句,循环遍历
for(String hobby : hobbies){ System.out.println(hobby); }
8.Math.random() 生成0--1的浮点数。
(int)(Math.random()*100) //生成100以内的随机整数