关于JAVA基本计算方法的几个例子
进行了几周的JAVA零基础从学习,终于对JAVA的语法有了一定的了解,并且学会自己进行一些简单的编程,下面是自己写的程序。(PS:以前没有学过JAVA,这是基础编程,以下方法也许不是最优解,期待改进。)
JAVA简介
Java是一门面向对象的编程语言,语法结构与C、C+ +是类似的,而且它不仅吸收了C+ +语言的各种优点,还摒弃了C+ +里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
环境
Windows10、eclipse
简单应用例子
例1
编程实现1+2+3+···+100
代码:
public class Add { //定义了一个类,名为Add
public static void main(String[] args) {//java application 程序主入口函数
int i = 1;//声明变量,并赋予初始值为1
int sum = 0;//声明sum变量,并赋予初始值为0
/*这是一个while循环,循环继续条件为i<=100*/
while(i<=100){
sum += i;//sum=sum+i
i++;//i自增1
}
System.out.println(sum);//在控制台输出总和
}
}
运行结果:
5050
例2
编程实现1+3+5+7+9+···+101
代码:
public class Add2 {//定义了一个类,名为Add2
public static void main(String[] args) {//java application 程序主入口函数
int i = 1;//声明变量,并赋予初始值为1
int sum = 0;//声明sum变量,并赋予初始值为0
/*这是一个while循环,循环继续条件为i<=101*/
while(i<=101){
sum += i;//sum=sum+i
i=i+2;
}
System.out.println(sum);//在控制台输出总和
}
}
运行结果:
2601
例3
编程实现输出10个随机整数,值在0到100之间
代码:
public class Add3 {//定义了一个类,名为Add3
public static void main(String[] args) {//java application 程序主入口函数
int[] a=new int[10];//声明并创建一个数组a,数组的大小为10
int i;//声明变量i
/*这是一个for循环,循环继续条件为i<10*/
for(i=0;i<a.length;i++){
a[i]=(int)(Math.random()*101);
/*Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值,是Java语言常用代码。
这里是随机生成大小在1~100的整数 */
}
for(i=0;i<a.length;i++){
System.out.print(a[i]+" "); //在控制台依次输出数组a的所有元素
}
}
}
运行结果:
80 4 47 40 60 46 48 19 39 11
例4
对例3的10 个随机整数并行排序
方法一
代码:
public class Add4 {//定义了一个类,名为Add4
public static void main(String[] args) {//java application 程序主入口函数
int[] arr = new int[10];//定义一个10个元素的空数组arr
for(int i=0;i<arr.length;i++) {//for循环,遍历数组
int num =(int)(Math.random()*101);//随机生成0-100的整数
arr[i] = num;//并赋值给数组下标为i的元素
System.out.print(arr[i]+" ");//控制台依次输出数组arr的元素,并加上空格
}
System.out.println();//换行
for(int i=0;i<arr.length;i++) {//for循环,遍历数组
//直接调用java提供的升序函数
java.util.Arrays.sort(arr);
System.out.print(arr[i]+" ");//输出每个元素
}
}
}
方法二
代码:
public class Add4 {//定义了一个类,名为Add4
public static void main(String[] args) {//java application 程序主入口函数
int[] arr = new int[10];//定义一个10个元素的空数组arr
for(int i=0;i<arr.length;i++) {//for循环,遍历数组
int num =(int)(Math.random()*101);//随机生成0-100的整数
arr[i] = num;//并赋值给数组下标为i的元素
System.out.print(arr[i]+" ");//控制台依次输出数组arr的元素,并加上空格
}
System.out.println();//换行
//自定义函数
rank(arr);//调用rank()函数排序
for(int i=0;i<arr.length;i++) {//for循环,遍历数组
System.out.print(arr[i]+" ");//输出每个元素
}
}
private static void rank(int[] arr) {//定义无返回值的排序方法rank()
/*下面是一个嵌套的for循环,用逐个比较的方法*/
for(int i=0;i<arr.length-1;i++) {//控制轮
for(int j=0;j<arr.length-1-i;j++) {//控制次数
if(arr[j]>arr[j+1]){ //和它下一个元素比
int t = arr[j];//记录一个元素
arr[j] = arr[j+1];//交换
arr[j+1] = t;//记录的赋给下一个元素
}
}
}
return;//返回排序后的数组
}
}
运行结果:
13 22 90 27 69 80 70 5 57 7
5 7 13 22 27 57 69 70 80 90
例5
设有两字符串构成的集合,字符串内容值为
A:{a,b,c,d,e,f,g,in,off,about,get}
B:{f,g,a,come,get,go}
求出:
(1)AB集合的交集。
(2)只在A中出现的字符串集合。
(3)AB集合的并集。
(1)求交集
代码:
public class Add5 {//定义了一个类,名为Add5
public static void main(String[] args) {//java application 程序主入口函数
//Create two collection to store element
java.util.ArrayList setA = new java.util.ArrayList();
java.util.ArrayList setB = new java.util.ArrayList();
//Add some element in the set1
setA.add("a");
setA.add("b");
setA.add("c");
setA.add("d");
setA.add("e");
setA.add("f");
setA.add("g");
setA.add("in");
setA.add("off");
setA.add("about");
setA.add("get");
//Add some element in the set2
setB.add("f");
setB.add("g");
setB.add("a");
setB.add("come");
setB.add("get");
setB.add("go");
//求交集
setA.retainAll(setB);
System.out.println("A与B的交集是 "+setA);
}
}
运行结果:
A与B的交集是 [a, f, g, get]
(2)求只有A集合中有的元素
代码:
//求只有A集合中有的元素/差集
setA.removeAll(setB);//用setA的内容去减第setB的内容,即setA的结果保留setB中没有的内容
System.out.println("只有A集合中有的元素是:"+setA);
运行结果:
只有A集合中有的元素是:[b, c, d, e, in, off, about]
(3)求并集
代码:
//求无重复的并集
setA.removeAll(setB);
setA.addAll(setB);//把steB中的元素添加到setA中
System.out.println("A与B的并集是 "+setA);
运行结果:
A与B的并集是 [b, c, d, e, in, off, about, f, g, a, come, get, go]