Java学习第一章与第二章总结以及第一章习题

(Java学习第一章与第二章总结)

一.知识点。

第一章:概述
1.计算机硬件包括输入设备、输出设备和储存设备。
输入设备包括:键盘,鼠标,摄像头,麦克风,扫描仪。
输出设备包括:显示器,音响,打印机,绘图机。
储存设备有:硬盘,U盘,光盘,闪存。
2.计算机有各种各样的软件。
软件:指按特定顺序组织的计算机数据与指令的集合。
数据:能够被计算机识别的东西,在硬盘中以文件形式储存。
3.Java语言的特征:
1.Java语言具有简单性,面向对象,分布式,健壮性,安全性,平台独立与可移植性,多线程,动态性等特点。
2.Java语言由于并不是用c语言编写,所以在Windows或者mac系统上运行时需要Java虚拟机。
3.具体流程如下:
Java源代码->Java字节码 ->Java虚拟机->操作系统->系统硬件

第二章:基本数据与计算

1.Java的基本框架:

public class 类名 {

	public static void main(String[] args) {

	}
}

每一个程序至少包含一个类和一个主函数

2.程序的编译与运行
最开始学习Java时我们用命令行来进行程序的编译与运行。
运行cmd后使用命令cd 文件夹 打开我们Java代码所在的文件夹。
然后输入javac 代码文件名字.java 来进行代码的编译
如果没有提示则编译通过,并生成一个 类名.class 文件,我们继续运行程序。
输入 java 类名 来运行。

3.第一个Java程序

public class hello {

	public static void main(String[] args) {
		
System.out.println("Hello World!");
	}
}

运行结果图
通过上述运行后,我们会看到我们的终端显示出来了一行输出结果。
4.变量
变量顾名思义是可以改变的常量。在编程语言中,例如圆周率为3.1415926…
那么,我们在程序中多次使用这个数字时,则非常麻烦,我们通常定义一个变量等于圆周率,这样使程序显得简洁,并且修改时不用全部修改,只需要更改定义的变量大小即可。
5.变量命名规则
我们通常用字母、数字、下划线作为变量的命名,并且不可以用数字开头。命名不能用这个语言的关键字进行命名。
在Java语言中,这样的关键字有:static、void、if、double、int、class、long等。
6.变量的储存
例如:
int a = 3; int b = 4; int c = 3; if(a==b);
当我们定义了a为3时,变量池中会增加一个变量地址,假设为333,我们定义变量b时,变量池发现里面没有4这个变量,会增加一个4变量的地址,假设为444。当我们定义变量c时,发现变量池中已经有3这个变量了,则不会新增地址。我们在比较a与b是否相等时,不会去比较a与b的数值是否相等,而是比较两个变量的地址是否相等。

7.注释
注释一方面为了让其他人更好地阅读你的代码,另一方面为了自己在很久之后依然可以看懂自己写的什么。所以在编程中,养成写注释的习惯是很重要的。
1.在java中,注释分为单行注释和多行注释以及文本注释。
2.单行注释为:// 单行注释只可以注释该行内容
3.多行注释为:
/*
*/
4.在注释中,我们切记,单行注释可以套多行注释,多行注释可以套单行注释,但是多行注释不可以逃多行注释。
例如:

/*
/**/
*/

计算机会认为第一个/和他距离最近的 */匹配。所以后面的注释会被忽略。

指针

在c/c++中,指针应用广泛。
我们是这样定义一个指针的:

int *a;

这里不是int *a,也不是int* a*代表a是一个指针,而不是定义了*a这样一个变量。

int *a ;
int b = 3;
a = &b;
printf("%d",a);
printf("%d",&b);

这里表示a指向b如果我们输出a和b的地址,则会得到两个数值相同的地址,这就使指针的指向。
这里如果我们再定义一个指针变量:

int *a ;
int b = 3;
a = &b;
printf("%d",a);
printf("%d",&b);
int **C = &a;
printf("%d",c);
printf("%d",&a);
printf("%d",*c);
printf("%d",**c);

如果我们定义一个指针指向一个指针,则表示c指向a指向的b的地址。
我们输出的c与输出的a的地址相同
则说明指针c指向a
我们输出的*c*&a则输出的为a,即为b的地址。

练习题:
第一题
分析:这个题目直接输出结果即可。
在写程序的时候需要注意括号的对称,容易因为括号过多而出错,使程序运行不了。

package lianxi1;
public class lianxi1 {
	public static void main(String[] args) {
		System.out.println((9.5*4.5-2.5*3)/(45.5-3.5));
	}
}

第二题
分析:利用速度=路程/时间 计算出速度
在转换为题目所需要的单位即可

package lianxi2;
public class lianxi2 {
	public static void main(String[] args) {
double t = 45.5/60;
double s = 14.0;//s/t计算出速度即可
System.out.println((s/t)/1.6);
	}
}

第三题
分析:首先计算出一年有多少秒,然后分别除以死亡与诞生和迁入一个人所需要的时间,即可得出一年人口变化,然后分别乘以对应的年数相加即为总人口。

package lianxi4;
public class lianxi4 {
	public static void main(String[] args) {
		int amount = 312032486;
		int change;//记录每年改变的人数
		int seconds = 365*24*60*60;//一年的秒数
		change = (int) (seconds/7-seconds/13+seconds/45);//一年的改变数
		for (int i = 1;i<=5;i++)//每年的总人口
		{
			System.out.println(amount + change*i);
		}	
	}
}

第四题
分析:同第二题。

package lianxi3;
public class lianxi3 {
	public static void main(String[] args) {
double t = 1.0 + 40.0/60.0 + 35.0/60.0/60.0;
double s = 24.0;//s/t计算出速度
System.out.println((s/t)*1.6);
	}
}

第五题
分析:定义了相应变量后直接套入公式输出即可。

package lianxi5;
public class lianxi5 {
	public static void main(String[] args) {
		double a = 3.4,b=50.2,e=44.5,c=2.1,d=0.55,f=5.9;
		double x = (e*d-b*f)/(a*d-b*c);//定义后直接输出
		double y = (a*f-e*c)/(a*d-b*c);
		System.out.println("x = "+x+" y = "+y);
	}
}
发布了3 篇原创文章 · 获赞 4 · 访问量 318

猜你喜欢

转载自blog.csdn.net/m0_46258177/article/details/104174671