Java课01
一.测试:
1、JAVA的基本运行单位是类还是方法?
答:类。 因为方法不能脱离类单独存在。
2、类由什么组成?
答:属性(特征) 和 方法(行为)。
3、变量的类型,相互之间可以转换吗,浮点数?
答:可以。 浮点数转换不精确。
4、String是一个数据类型吗?
答:是。
5、static代表的含义?
答:
static:静态的,用于修饰成员(成员变量,成员方法);
1.被static所修饰的变量或者方法会储存在数据共享区;
2.被static修饰后的成员变量只有一份!
3.当成员被static修饰之后,就多了一种访问方式,除了可以被对象调用之外,还可以直接
被类名调用,(类名.静态成员);
二.仔细阅读示例: EnumTest.java,运行它,分析运行结果?
你能得到什么结论?你掌握了枚举类型的基本用法了吗?
运行结果:
结论:引用不同对象,输出值false,枚举不属于原始数据类型,并且给它赋值用valueof语句。
三.请运行以下代码(TestDouble.java)
使用double类型的数值进行计算, 其结果是不精确的。
四.以下代码的输出结果是什么?
int X=100;
int Y=200;
System.out.println("X+Y="+X+Y);
System.out.println(X+Y+"=X+Y");
为什么会有这样的输出结果?
结果:
原因:第一个按字符串相加,先加100再加上200,就成了100200,而第二个是计算。
四则运算代码:
package cn.demo3;
import java.util.*;
public class Calculate {
static Scanner sc=new Scanner(System.in);
public static void main(String args[]){
Random rand =new Random();
int k;
int sum=0;
int s1;
int s2;
int a[][]=new int[100000][3];
System.out.println("请输入题目数量");
int m;
m=sc.nextInt();
System.out.println("请输入一行输出的数");
int n;
n=sc.nextInt();
int temp;
boolean flag=false;
while(sum<=m) {
s1=rand.nextInt(90)+10;
s2=rand.nextInt(90)+10;
k=rand.nextInt(4)+1;
if(k==2)
{if((s1-s2)<0)
{temp=s1;s1=s2;s2=temp;}
}
if(k==3)
{
while(s2==0)
{s2=rand.nextInt(90)+10;}
}
if(k==3)
{
while((s1%s2)!=0)
{
s1=rand.nextInt(90)+10;
s2=rand.nextInt(90)+10;
}
}
a[sum][0]=s1;
a[sum][1]=s2;
a[sum][2]=k;
for(int i=0;i<sum;i++)
{
if(a[sum][0]!=a[i][0]&&a[sum][1]!=a[i][1]&&a[sum][2]!=a[i][2])
{flag=true;}
}
if(flag==true)
{
switch(a[sum][2])
{
case 1:
System.out.print((sum)+"."+a[sum][0]+"*"+a[sum][1]+"="+" ");
break;
case 2:
System.out.print((sum)+"."+a[sum][0]+"-"+a[sum][1]+"="+" ");
break;
case 3:
System.out.print((sum)+"."+a[sum][0]+"/"+a[sum][1]+"="+" ");
break;
case 4:
System.out.print((sum)+"."+a[sum][0]+"+"+a[sum][1]+"="+" ");
break;
}
if((sum)%n==0)
{
System.out.println();
}
}
sum++;
}
}
}