Java基础运算1

在这里插入代码片
```**1. 编写一个方法,实现返回第n项的斐波那契值。
1)斐波那契数列(Fibonacci sequence)
2)使用递归实现
3)使用for循环实现**
/*
package day03_homework;

import java.util.Scanner;

public class hw2 {
	public static void main(String[] args) {
		Scanner a = new Scanner(System.in);
		int n = a.nextInt();
		long begin = System.currentTimeMillis();//1970-1-1-00:00到现在
		//for (int i = 1; i <= n; i++) {
			System.out.println(feibo(n)+" ");
		long end = System.currentTimeMillis();
		System.out.println("耗时:"+(end-begin)+"ms");
		//}
	}

	private static long feibo(int i) {
		if(i==1||i==2)
		{
			return 1;
		}
		else
		{
			return (feibo(i-1)+feibo(i-2));
		}
	}

	
}
*/
package day03_homework;

import java.util.Scanner;

public class hw2 {
	public static void main(String[] args) {
		int[] arr = new int[1000];
		Scanner a = new Scanner(System.in);
		int n = a.nextInt();
        arr[0] = 1;
		arr[1] = 1;
        long begin = System.nanoTime();
		for(int i = 0;i < n;i++) {
	
			if(i > 1) 
			{
				arr[i] = arr[i - 2] + arr[i - 1];
			}
			
		}
		long end = System.nanoTime();
		System.out.println(arr[n-1] + " ");
		System.out.println("耗时:"+(end-begin)+"ms");
	}

}

**基础面向对象方法**
. Java的类加载器,根据包名+类型名,加载相应的class字节码文件,
生成相应类的描述信息对象,放在方法区中
2. 根据类的描述信息,在堆中分配空间,并给成员变量 赋 类型默认值
同时会生成一个引用变量this,指向当前正在构造的对象
3.调用父类的构造方法
4. 给成员变量按照声明的值,进行再次赋值
5. 执行当前类中构造方法的代码,根据传入的参数,给成员变量赋值
6. 构造方法执行结束,将对象的引用赋值给左侧引用变量

package day03_homework;

import java.util.Scanner;

public class day0219homework_pointDemo {
	

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		System.out.print("输入点1横坐标:");
		int x = sc.nextInt();
		System.out.print("输入点1纵坐标:");
		int y = sc.nextInt();
		System.out.print("输入点2横坐标:");
		int w = sc.nextInt();
		System.out.print("输入点2纵坐标:");
		int k = sc.nextInt();
		Point p = new Point(x,y);
		Point pp = new Point(w,k);
		System.out.println("点1和点2的距离:"+p.distance(pp));
		p.down(4);
		System.out.println("点1向下移动4:"+p.y);
	}

}

class Point{
	int x;//横坐标
	int y;//纵坐标
	public Point()//无参构造
	{
		this.x=0;
		this.y=0;
	}
	public Point(int x,int y)
	{
		this.x=x;
		this.y=y;
	}
	public Point(int x)//横坐标和纵坐标值是一样的
	{
		this.x=x;
		this.y=x;
	}
	public void up()//向上移动
	{
		this.y --;
	}
	public void down()//向下移动
	{
		this.y ++;
	}
	public void down(int dy)//向下移动dy
	{
		this.y =this.y + dy;
	}
	public double distance(Point p)//求当前点,距离传入的另一个点 之间的距离
	{
		double xx =this.x - p.x;
		double yy =this.y - p.y;
		double dist = Math.sqrt(xx*xx + yy*yy);
		return dist;
	}

}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值