昨天学了一天Java,今天来回忆总结一下。
Java是一门面向对象的语言,与C++有很多地方都很相似。
Java的特点:
1.取消了指针,用引用代替
2.有垃圾自动回收机制,程序员不需要手动管理内存
3.跨平台性(JVM)
昨天主要从最基础的开始学,学习了变量,操作符,语句结构。下面用程序来回顾一下。
1 /* 2 测试4种进制 3 1.二进制 4 2.十进制 5 3.八进制 0开头 6 4.十六进制 0x开头 7 */ 8 9 //当class声明为public时文件名必须为类名一样 10 public class TestJinZhi 11 { 12 //主方法 13 public static void main(String []args) 14 { 15 System.out.println(20); 16 System.out.println(Integer.toBinaryString(20));//20的二进制 17 //负数的二进制最高位是1,-1的二进制是4个字节的 18 System.out.println(Integer.toBinaryString(-1));//-1的二进制 19 System.out.println(024); 20 System.out.println(0x14); 21 22 System.out.println(2<<3);//2*8最高效的方法 23 } 24 }
1 /* 2 测试各种变量类型 3 基本数据类型 4 1.整形 byte short int long 5 2.浮点型 float double 6 3.字符型 char 7 4.布尔型 boolean 8 9 类型之间的转换 10 自动转换:空间小的向空间大的 11 强制转换:可能会损失精度 12 */ 13 class Var 14 { 15 public static void main(String []args) 16 { 17 byte b1 = 20; 18 //b1 = b1 + 1; //会报错,右边结果是int 19 b1++; 20 21 short s1 = 30; 22 //s1 = s1 + 1; //会报错,右边结果是int 23 24 s1++; 25 int i1 = 40; 26 long l1 = 50; 27 System.out.println(java.lang.Long.MAX_VALUE);//输出long所能输出的最大值 28 // l1 = 1111111111111; 29 //因为整数默认是int类型 30 float f1 = 3.2f; //小数默认是double,赋值给float要加f 31 double d1 = 3.2; 32 33 char c1 = ‘a‘; 34 char c2 = 97; 35 char c3 = ‘我‘;//java中char占2个字节,使用Unicode编码,兼容ASCII码 36 //c1 = c1 + 1; //会报错,右边结果是int 37 c1 = ‘a‘+ 1; //这个不会报错!! 38 System.out.println(c1); 39 System.out.println(‘a‘+1); //输出98 40 System.out.println(c2); //输出a 41 System.out.println(c3); 42 boolean bool1 = true; 43 44 System.out.println(bool1); 45 46 System.out.println("\"hello\tworld\""); //转义字符\" 47 } 48 }
1 /* 2 目的:研究如何交换2个数 3 总结:3种方法 4 1、通过临时变量 5 2、通过数学运算 6 3、通过异或运算 7 */ 8 class Swap 9 { 10 public static void main(String []args) 11 { 12 int a = 3; 13 int b = 5; 14 System.out.println("a="+a+",b="+b); 15 16 //1.通过第三方变量 17 /* 18 int temp; //临时变量 19 temp = a; 20 a = b; 21 b = temp; 22 System.out.println("a="+a+",b="+b); 23 */ 24 25 //2.通过数学运算 26 /* 27 a = a+b; 28 b = a-b; //(a+b)-b 29 a = a-b; //(a+b)-a 30 System.out.println("a="+a+",b="+b); 31 */ 32 33 //3.技巧 34 a = a^b; 35 b = a^b; //(a^b)^b 36 a = a^b; //(a^b)^a 37 System.out.println("a="+a+",b="+b); 38 39 } 40 }
1 /* 2 练习:求出1~100之间7的倍数的个数,并打印。 3 */ 4 class Exercise1 5 { 6 public static void main(String []args) 7 { 8 int i; 9 int count = 0; //定义count为7的倍数的个数,并初始化为0 10 for(i=1;i<100;i++) 11 { 12 //判断是否是7的倍数 13 if(i%7==0) 14 { 15 System.out.print(i+" "); 16 count++; //个数加1 17 } 18 } 19 System.out.print("\n"); 20 System.out.println("一共有"+count+"个7的倍数的数!"); 21 } 22 }
1 /* 2 题目:输出如下2个图形 3 * 4 ** 5 *** 6 **** 7 8 **** 9 *** 10 ** 11 * 12 13 思路:循环嵌套 14 */ 15 class Exercise2 16 { 17 public static void main(String []args) 18 { 19 int h,l; 20 //输出第一个图形 21 for(h=0;h<4;h++) //控制行数 22 { 23 for(l=0;l<=h;l++) //控制每一行的输出 24 { 25 System.out.print(‘*‘); 26 } 27 System.out.println(); //换行 28 } 29 30 System.out.println(); 31 32 //输出第二个图形 33 for(h=4;h>0;h--) 34 { 35 for(l=0;l<h;l++) 36 { 37 System.out.print(‘*‘); 38 } 39 System.out.println(); 40 } 41 } 42 }