放假回家终于开始了自己的Java自学的道路,虽然每个人自学的道路都是一个非常困难的一个过程,但是从中能收获知识,就会非常的喜悦,也希望大家多多指点,共同进步!
我是用Java从入门到精通实例版,我个人并不是很推荐,在网上买了一本《Head First Java》,这本书里面非常生动,等到了之后就看这一本,而我先用那本先开个头,慢慢学着
第一节没有什么,我是从第二节开始看的
在第二节,在eclipse中有几个快捷的方法比较实用:
1. 在关键字补全的时候可以用Ctrl+Alt+/
例如:输入pr + 快捷键(Ctrl+Alt+/)就可以得到 private
输入st + 快捷键(Ctrl+Alt+/)就可以得到 static
2. 在除了关键字以外其他方法像System.out.println()输入的时候,有 . 的帮助可以快速写出来,还有一种更快捷的方法:
输入“syso” + (Alt + /) 就能快速的写出来,这个应该是根据几个字母,然后自动补全,我也并不是太懂,但是这个也是一个实用的快捷方式
3. 错误代码 Ctrl+1
这个键可以激活代码修正菜单,进而选择菜单中合适的修正方法
第三节就是对Java的初步认识了
1. 对于System.out.println()的初步认识
对于这个就算是刚学的也是非常熟悉,是对数据的输出。然而对于我,又对它有进一步的认识
System是一个系统类的名称,第一个名字必须大写
out是System类提供的一个标准输出流
println( )是标准输出流提供的方法
2. 对于字节的了解
原先对于字节这个概念还是非常的模糊,但是看完整型那个8位等于1个字节,我又再次用2进制计算器计算了一下终于知道了这个意思
比如:1个字节 相当于 0000 0000 ---- 0111 1111
2个字节 相当于 0000 0000 0000 0000 ----- 0111 1111 1111 1111
以此类推,这个只是我个人的见解,如果有错误的地方,希望大家帮我改正
3. long和float
在c语言或c++语言中long和float并没有明面的规定,然而在Java中long后面必须加上’L‘或’l‘
float后面必须加’F‘或者’f‘ 如果不加的话,long和int就没有区别,而float后面不加的话,会自动转换成double类型
对于这个我就困惑了,为什么浮点型就可以自动转换成精度高的,整型为什么就不可以转换成范围大的呢?
4. 转义字符
这个知道就行,比如 '\\' 反斜杠字符 '\'' 单引号字符, 其余的字符可以自己去查,这里就不列出太多了
5. 声明常量
final是声明常量的标志,常量在整个程序中只能被赋值一次;
例如:final double PI = 3.1415926;
final boolean BOOL = true;
final int number;
number = 1235;
----------------------------------------------------------------------------------------------------------------------------------------------------------
1-21日学习小结
昨晚睡着了,就看了一个小结,效率不高,今天总结一下,序号就接着上面的了,以后也是如此
6. 除法运算,0不可以做除数
在数学中,0不可以做除数我们都知道,在计算机中,0也不可以做除数,如果你用0做除数,会出现异常
例如:int a = 5/0; // 系统会报出ArinthmeticException异常
7. 自增(++)和自减(--)
自增和自减是单目运算符,可以放在操作元之前,也可以放在操作元之后,操作元必须是整型或浮点型变量。
a的初值为3,a、b是两个整型变量,这两个是分别运行的结果,不是连续接着的。
b = a++; // b的结果为3
b = ++a; // b的结果为4
所以得到前置自增是先加在运算,后置自增是先运算在加,自减也是这样。
8. &&与& 和 ||与| 的区别
虽然 && 和 & 都表示逻辑与,那他们之间也是有区别的。
使用逻辑运算符“&”会判断两个表达式;而逻辑运算符“&&”则是针对boolean类型进行判断,当第一个表达式为false时则不去判断第二个表达式,直接输出结果。
使用“&&”可节省计算机判断的次数。通常将这种在逻辑表达式中从左端的表达式可推断出整个表达式的值称为“短路”,而那些始终执行逻辑运算符两边的表达式称为
“非短路”。“&&”属于“短路”运算符,而“&”则属于“非短路”运算符。“||”和“|”也是如此
9. 负数的二进制表示方式
1的二进制表示方式为 0000 0001
1的反码是1111 1110
1的补码是1111 1111
所以-1就是1的反码 1111 1111
10. 位预算符
<< 左移运算符:48 << 1 // 将48的二进制数向左移1位 得到的结果是96
>> 右移运算符: 48 >> 1 // 将48的二进制右移一位,如果最高位是0,右移空的位填入0,如果最高位是1,右移空的位填入1
// 得到的结果是24
>>> 无符号右移运算符 // 不管最高位是0还是1,左移空的高位都填入0
移位能让用户实现整数除以或乘以2的n次方的效果。例如,y<<2与y*4的结果相同。y>>1的结果与y/2的结果相同。总之,一个数左移n位,就是将这个数乘以2的n次方;
一个数右移n位,就是将这个数除以2的n次方
11. import java.util.Scanner
import java.util.*;假如你没这句话的话
如果你要用java.util包中的类Scanner的话你就需要这样使用
java.util.Scanner sc = new java.util.Scanner();而import java.util.*;代表你导入了java.util包中的所有类,,这样的话你使用
Scanner就没那么麻烦了Scanner sc = new Scanner();
其实这种效果就相当于c++中的using namespace std的这种效果
这个也是在例题中看到的,还有对于Scanner scan = new Scanner(System.in);这个意思不理解,还有Long A = scan.newxLong();不理解估计这就是Scanner的用法吧,以后慢慢学习
12 不用其他变量实现两个变量的交换
有两个变量 A和 变量 B 它俩类型是一样的 要是交换它俩只需要这几个步骤
A = A^B;
B = B^A;
A = A^B;
很神奇吧 这个就自己慢慢研究吧 不深究了
这就是我对于今天学习的总结,如果有不对的地方希望大家请教和指点,本人qq:962603220 微信:ljdVIP123
希望大家一起交流,共同进步!