java作业题exercise1

1.int和未初始化对象的默认返回类型是什么?

答:如果int是临时变量(定义在方法体中,方法执行完了就释放掉了)则该变量必须初始化。如果是类的成员变量(定义在类中,方法体之外的变量)则为0; 未初始化的对象默认是null。

测试程序

public class Exercise
{
    //成员变量
    int number;
    //未初始化的对象
    private Rainfall myRainFall;
    public void run()
    {
        System.out.println(number);
        if(myRainFall==null)
        {
            System.out.println("未初始化对象为null");
        }
        else
        {
            System.out.println("初始化对象不为null");
        }
    }
}

执行结果是:
0
未初始化对象为null

5.创建一个叫做Car的类,创建两个实例化变量(类的成员变量),一个String colour,一个int number; 为Car类写一个构造函数,实例化上面创建的两个变量; 为Car类写一个访问方法(Accessor)和一个设置方法(mutator),访问设置colour字段。

import java.util.HashSet;
public class Car
{
    private String colour;
    private int numberOfDoors;
    /**
     * 车的构造函数
     */
    public Car(String colour, int numberOfDoors)
    {
        this.colour = colour;
        this.numberOfDoors = numberOfDoors;
    }
    
    /**
     * 获得汽车的颜色
     */
    public String getColourOfCar()
    {
        return this.colour;
    }
    
    /**
     * 改变汽车的颜色
     */
    public void setColourOfCar(String colour)
    {
        this.colour = colour;
    }
}

6.为上面的Car类创建一个Car对象,定义一个HashSet,并把创建的Car对象添加到HashSet中。

import java.util.HashSet;

HashSet<Car> myCars = new HashSet<Car>();
Car myCar = new Car("red", 4);
myCars.add(myCar);

7.构造函数的参数的作用范围?

答:构造方法的花括号中{ }

8.写一个for循环和一个for each 循环遍历数组int[ ] numbers= {1,2,3,4,5};

public class LoopArray
{
    //定义一个数组
    int[] numbers = {1,3,2,4,2};
    /**
     * 使用for循环遍历数组numbers.
     */
    public void loopThroughArray()
    {
        for(int num = 0; num<numbers.length; num++)
        {
            System.out.println(num);
        }
    }
    
    /**
     * 使用for each循环遍历这个数组numbers.
     */
    public void forEachLoopThroughArray()
    {
        for(int oneNumber : numbers)
        {
            System.out.println(oneNumber);
        }
    }
}

9.java中子类调用父类构造函数的关键字是什么?

答:super

10.下列代码的输出结果是什么?

public static void main(String[] args)
    {
        ArrayList<Integer> list = new ArrayList();
        
        list.add(7);
        list.add(1);
        list.add(5);
        list.add(1);
        list.remove(1);
        
        System.out.println(list.get(1));
    }

答:5
在这里插入图片描述
ArrayList中该方法移除对应位置的元素。元素从0开始计数。{7,1,5,1}
把 ***1***移除掉,{7,5,1},所以位置1的元素为5。

11.使用迭代器(Iterator)遍历ArrayList(列表)

import java.util.ArrayList;
import java.util.Iterator;
public class Exercise6
{
    public static void main(String[] args)
    {
        //新建一个列表
        ArrayList<Integer> list = new ArrayList();

        list.add(7);
        list.add(1);
        list.add(5);
        list.add(1);
        list.remove(1);
        //使用迭代器遍历ArrayList
        //step1 新建一个迭代器
        Iterator<Integer> myIterator = list.iterator();
        while(myIterator.hasNext())
        {
            System.out.println(myIterator.next());
        }
    }

}

12.以下代码的输出是什么?

public class Exercise12
{
   public static void main(String[] args)
   {
       int blueInt, greenInt, yellowInt;
       blueInt = 20;
       yellowInt = blueInt / 6;
       greenInt = blueInt + yellowInt;
       
       if(yellowInt > 3)
       {
           System.out.println("yellowInt = " + yellowInt);
       }
       else
       {
           if(greenInt > 20)
           {
               System.out.println("greenInt = " + greenInt);
           }
           else
           {
               System.out.println("blueInt = " + blueInt);
           }
       }
   }
}

答:“greenInt = 23”

14.新建一个HashMap,学号:2121212作为字典的键,学生姓名“alex”作为字典的值,并且遍历该字典的键。

import java.util.HashMap;
import java.util.Iterator;

public class Exercise14
{
    public static void main(String[] args)
    {
        HashMap<Integer,String> myMap = new HashMap();
        
        myMap.put(2121212,"alex");
        
        //遍历哈希字典
        Iterator<Integer> myInterator = myMap.keySet().iterator();
        while(myInterator.hasNext())
        {
            Object key = myInterator.next();
            System.out.println("The key is: " + myMap.get(key));
        }
    }
}

15.java中什么是字符连接符?

答,加号(+)是字符串连接符,它可以连接两个字符串,还可以把一些类型不是String的连接进字符串,例如

int id = 10;
String name = "Mike"
System.out.println(name + id);
//输出为“mike10”

16.把下列for循环改写为while循环

public class Exercise16
{
    public static void main(String[] args)
    {
        //把下列程序改成while循环
        for(int i = 0; i <= 10; i++)
        {
            System.out.println("i" + i);
        }
        System.out.println("");
        //改写
        int i = 0;
        while(i <= 10)
        {
            System.out.println("i" + i);
            i++;
        }
    }
    
}

22.什么是程序的耦合度(coupling)?

答:耦合度是指模块之间,不同类的代码之间的关联度,我们编写代码尽量,通过模块之间的接口去访问,而不是直接引用别的模块的变量。

23.比较两个字符串是否相等

public class Exercise23
{
    public static void main(String[] args)
    {
        String one = "hello";
        String two = "goodbye";
        String thr = "hello";
        //比较两个字符串是否相等
        if(one.equals(two))
        {
            System.out.println("the string are the same");
        }
        if(one == thr)
        {
            System.out.println("the string are the same2");
        }
    }
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘璐菲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值