1、对java构造器的理解 创建一个名为Dog的类,它既有重载的Bark()方法。此方法根据不同的基本数据类型进行重载,并根据被调用的版本,打印出不同类型的狗吠(barking)、咆哮(howling)等信息。编写main()来调用所有不同版本的方法。
Dog类:
public class Dog {
public Dog()
{}
public void Bark()
{
System.out.println("狗吠");
}
public void Bark(int a)
{
System.out.println("狗吠"+a+"声");
}
public void Bark(boolean a)
{
if(a==true)
{
System.out.println("狗吠");
}
else
{
System.out.println("狂吠");
}
}
public void Bark(double a)
{
System.out.println("狗每秒吠"+a+"次");
}
public void Bark(String a)
{
System.out.println(a);
}
2、for与foreach 写一个程序,产生25个int类型的随机数。对于每一个随机值,使用if-else语句来将其分类为大于、小于、等于紧随它产生的数。
public class d {
public static void main(String s[])
{
Random a = new Random();
int []b =new int[25];
int i =0;
int temp=-1;
for(i=0;i<b.length;i++)
{
b[i]=a.nextInt(1000);
}
for(int num:b)
{
if(temp<0)
{
System.out.println("第一个数"+num);
temp=num;
}
else
{
if(temp>num)
{
System.out.println(temp+"大于"+num);
}
else if(temp<num)
{
System.out.println(temp+"小于"+num);
}
else if(temp==num)
{
System.out.println(temp+"等于"+num);
}
temp=num;
}
}
}
}
某次运行结果:
第一个数730
730小于992
992大于848
848大于381
381大于59
59大于1
1小于545
545小于714
714大于300
300小于338
338小于618
618小于732
732大于565
565大于238
238小于768
768大于501
501大于54
54小于483
483小于693
693大于681
681大于148
148小于283
283小于586
586小于738
738大于576
3、设计一个实体类,内容包括学生基本信息和高数、线代、物理成绩,并有set&get方法,使私有信息可以被外界访问。
public class Student {
private String Sname;
private String Sno;
private int Math;
private int Physic;
private int Linear;
private int test;
public Student()
{
}
public void SetSname(String str)
{
Sname=str;
}
public void SetSno(String str)
{
Sno=str;
}
public void SetMath(int num)
{
Math=num;
}
public void SetPhysic(int num)
{
Physic=num;
}
public void SetLinear(int num)
{
Linear=num;
}
public String GetSname()
{
return Sname;
}
public String GetSno()
{
return Sno;
}
public int GetMath()
{
return Math;
}
public int GetPhysic()
{
return Physic;
}
public int GetLinear()
{
return Linear;
}
}
4、Java访问权限修饰符:
private:只有本类可以访问
protected:本类,同包类,子类
public:本类,同包类,子类,外包类
5、实现一个简单的计算器(不要图形界面,想一想如何能够更好的实现)
public class Counter {
public static void main(String s[])
{
double num1;
double num2;
int i;;
int middle=0;
String str;
char sign = 0;
Scanner in=new Scanner(System.in);
System.out.println("输入表达式");
str=in.nextLine();
char[] ch=str.toCharArray();
for(i=0;i<ch.length;i++)
{
if(ch[i]=='*'||ch[i]=='+'||ch[i]=='/'||ch[i]=='-')
{
middle=i;
sign=ch[i];
}
}
char[]cnum1=new char[middle];
for(i=0;i<middle;i++)
{
cnum1[i]=ch[i];
}
char[] cnum2=new char[ch.length-middle-1];
for(i=0;i<cnum2.length;i++)
{
cnum2[i]=ch[i+middle+1];
}
if(middle==0)
{
System.out.println("格式错误");
}
else if(sign==0)
{
System.out.println("运算符错误") ;
}
else
{
num1=Double.valueOf(String.valueOf(cnum1));
num2=Double.valueOf(String.valueOf(cnum2));
if(sign=='+')
{
System.out.println(""+(num1+num2)+"");
}
else if(sign=='-')
{
System.out.println(""+(num1-num2)+"");
} else if(sign=='*')
{
System.out.println(""+num1*num2+"");
} else if(sign=='/')
{
System.out.println(""+num1/num2+"");
}
}
}
}