Java(一)
由键盘输入数据
1 | import java.io.*; |
数据输入方式2:为了简化输入操作,从Java SE 5版本开始在java.util类库中新增了一个专门用于输入操作的类Scanner,可以使用该类创建一个对象,然后利用该对象调用相应的方法,从键盘上读取数据。语句格式如下:
1 | import java.util.*; |
循环
1 | import java.util.*; |
习题
1.将学生的学习成绩按不同的分数段分为优、良、中、及和不及格五个等级,从键盘上输入一个0~100的成绩,输出相应的等级。要求用switch语句实现。
1 | import java.util.*; |
2.设学生的学习成绩按如下的分数段评定为四个等级:85~100为A;70~84为B;60~69为C;0~59为D。从键盘上输入一个0~100的成绩,要求用switch语句根据成绩,评定并输出相应的等级。
1 | import java.util.*; |
3.编写一个Java应用程序,从键盘输一个1~100之间的整数,然后判断该数是否既可以被3整除又可被7整除的数。
1 | import java.util.*; |
4.编写一个Java应用程序,在键盘上输入数n,计算并输出1!+2!+…+n!的结果。
1 | import java.util.*; |
5.在键盘上输入数n,编程计算sum=1-1/2!+1/3!-…(-1)^n-1(1/n!)
1 | import java.util.*; |
栈内存和堆内存
在方法中定义的一些基本类型的变量和对象的引用变量都在方法的栈内存中分配,当在一段代码块中定义一个变量时,Java就在栈内存中为这个变量分配内存空间,当超出变量的作用域后,Java会自动释放掉为该变量所分配的内存空间。
堆内存用来存放由new运算符创建的数组或对象,在堆中分配的内存,由Java虚拟机的垃圾回收器来自动管理。在堆中创建了一个数组或对象后,同时还在栈中定义一个特殊的变量,让栈中的这个变量的取值等于数组或对象在堆内存中的首地址,栈中的这个变量就成了数组或对象的引用变量,引用变量实际上保存的是数组或对象在堆内存中的首地址(也称为对象的句柄),以后就可以在程序中使用栈的引用变量来访问堆中的数组或对象。引用变量就相当于是为数组或对象起的一个名称。引用变量是普通的变量,定义时在栈中分配,引用变量在程序运行到其作用域之外后被释放。而数组或对象本身在堆内存中分配,即使程序运行到使用new运算符创建数组或对象的语句所在的代码块之外,数组或对象本身所占据的内存也不会被释放,数组或对象在没有引用变量指向它时,会变为垃圾,不能再被使用,但仍然占据内存空间不放,在随后一个不确定的时间被垃圾回收器收走(释放掉),这也是Java比较占内存的原因。
foreach语句
自JDK 5开始引进了一种新的for循环,它不用下标就可遍历整个数组,这种新的循环称为foreach语句。foreach语句只需提供三个数据:元素类型、循环变量的名字(用于存储连续的元素)和用于从中检索元素的数组。foreach语句的语法如下:
1 | for(type element:array){ |
习题
1.从键盘输入n个数,输出这些数中大于其平均值的数。
1 | import java.util.*; |
2.从键盘输入n个数,求这n个数中的最大数与最小数并输出。
1 | import java.util.*; |