20165312 2017-2018-2 《JAVA程序设计》第2周学习总结
一、对上一周学习的查漏补缺
1.上周在虚拟机中进行编译程序时出现错误,在上一周的博客中我有提到,当时还未找到解决办法。后来才知道是因为虚拟机中没有安装JDK。
出错图片:
解决办法:
(1)在虚拟机中下载JDK-1.8压缩包并进行解压
(2)使用$ su root
进入root权限。可能会提示你密码错误,使用$ sudo passwd
重新设置密码即可。
参考网址:su 认证失败
(3)编辑 /etc/profile
文件设置环境变量,在文件末尾添加以下代码:
export JAVA_HOME=/JDK下载的位置
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
(4) 使用source/etc/profile
使刚才的配置信息生效。
(5) 使用java -version
检验是否安装成功。如果发现没有成功可以检查环境变量是否输入错误,也可以重启虚拟机进行尝试。
参考网址:Ubuntu16.04下Java环境安装与配置
2、上周测试错误题目
(1)下列不属于Java集成开发环境的是()
A.PyCharm B.NetBean C.MyEclipse D.Intelli IDEA
错误答案:B
正确答案:A(解析:Python为Python IDE)
(2)下列说法正确的是()
A.Java虚拟机首先执行类中的main方法
B.Java中,多个/**/可以嵌套
C.一个源文件中必须有public类
D.Java字节码的扩展名是.java
错误答案:B
正确答案:A(解析:注释不可以嵌套)
(3)public static void main(String args[])中"main"和"args"都不可以随便修改
错误答案:true
正确答案:false(解析:args为数组名,可以随意修改)
二、第二周学习的主要内容及遇到的问题
问题及解决方法
1.将代码上传码云时出现问题
上周传的代码是使用windows下的git,这周改用虚拟机中的git,出现如下错误:
解决方法:
$ git pull --rebase origin master
$ git push origin master
2.运行统计代码行数的脚本时出现问题
解决方法:
$ chmod +x statistics.sh
参考网址:要怎样才能直接./sh执行?
3.在ubuntu中不能使用复制粘贴
解决办法:修改设置即可,设置-->常规-->高级-->共享粘贴板-->双向
第二周学习内容总结
1.第二章 基本数据类型与数组
标识符
标识符的第一个字符不能使数字,标识符不能是关键字,true,false,null。标识符的字母是区分大小写的。
关键字
具有特定用途或赋予特殊含义的一些单词
基本数据类型
- boolean(逻辑类型)
boolean常量是true false
- int
分配四个字节内存 int x=12;
- byte
分配1个字节内存 byte y=28;
- short
分配两个字节 short z=33;
- long
long型变量用后缀L来表示,分配8个字节
- char
分配2个字节,char变量的取值范围是0~65535char x='a';
\n
换行 \b
退格\t
水平制表 \'
单引号\"
双引号\\
反斜线
可以用字符在Unicode表中排序位置的十六进制转义,其一般格式为'\u****'
- float
常量后面有后缀F或f,float型数据在储存时保留8位有效数字
- double
double常量后缀d或D,但允许省略该后缀。double常量在储存时保留16位有效数字。
类型转换运算
除了逻辑变量,精度从低到高排列:
byte short char int long float double
(1)级别低的变量的值赋给级别高的变量时。系统自动完成数据类型的转换。
(2)级别高的变量的值赋给级别低的变量时
(类型名)要转换的值
输入数据类型
$ Scanner reader = new Scanner(System.in);
$ double x = reader.nextDouble();
输出数据类型
-
System.out.println()
System.out.print()
-
System.our.ptintf()
数组
(1)声明数组(数组名,数组的类型)
数组的元素类型 数组名[];
数组的元素类型 []数组名;
数组的元素类型 数组名[][];
数组的元素类型 [][]数组名;
(2) 为数组分配元素
数组名 = new 数组元素的类型[数组元素的个数];
声明数组和创建数组可以同时完成:
数组元素的类型 数组名[] = new 数组元素的类型[数组元素的个数];
二维数组是由若干个一维数组构成的,各个一维数组的长度不一定相同。
(3)length的使用
对于一位数组:“数组名.length”的值为数组中元素的个数;对于二维数组:“数组名.length”的值为含有一维数组的个数
(4)数组的引用
int型数组a[],System.out.println(a)
char型数组b[],System.out.println(""+a)
算术运算符
+
-
*
/
%
++
--
关系运算符
>
<
>=
<=
!=
==
逻辑运算符
&&
||
!
赋值运算符
=
位运算符
&
|
~
^
if条件分支语句
if语句
if-else 语句
if-else if-else 语句
switch 开关语句
循环语句
-
for循环语句
for(表达式1;表达式2;表达式3) {
若干语句
} -
while 语句
while(表达式) {
若干语句
} -
do-while语句
do {
若干语句
}while(表达式);break语句
在循环体中若执行了break语句,则整个循环结束
continue语句
在循环体中若执行了continue语句,则本次循环结束,进入下一个循环。
for语句与数组
for(声明循环变量:数组的名字) {
}
对于循环变量依次取数组的每一个元素的值