java考试第三周

1,请定义print方法 

public class Demo{

    public static void main(String[] args){

        print(“a”,”b”,”c”,”d”);

    }

    public static void  print(string...str){

         for(String  s:str){

              System.out.println(s);

         }

}

}

2,以下输出结果是什么?

public class ExceptionTest {

    public static void main(String[] args) {

        int a = 5, b = 0;

        try {

              int result = a / b;

              System.out.println(“今天周五);

          } catch (ArithmeticException e) {

                 System.out.println(“下午考试”);

            return;

             } finally {

                 System.out.println(" 今天是周末;");

       }

    }

打印结果: 1.下午考试  2.今天周末。

}

3, 在一个类中testDiv方法调用了div方法,对于div方法抛出的异常是否需要处理。如
要要处理的话,如何处理?如果不需要处理的话,什么情况下需要处理?  15分

//

@Test

public void testDiv(){

try{

     int div = div(5, 0);

    System.out.println(div);

}catch(ArithmeticException e){

   e.printStackTrace();


}


}

@Test

public  int div(int i , int j) throws ArithmeticException{

if(j == 0 ){

throw new ArithmeticException("除数不能为0");

}

return i / j;

}

4,如何自定义异常 

class MyException extends Exception{
public MyException(String msg){
super(msg);
}

}

public class ExceptionDemo1 {
public static void main(String[] args) {
try {
throw new MyException("自定义异常");
} catch (MyException e) {
// TODO: handle exception
System.out.println(e);
}
}

}

5,员工A,薪水6000;员工B,薪水5500;员工C,薪水6500;员工D,薪水7000
薪水有低到高进行排序  

@第一种方式:
public class sorts {
private String name;
private int salary;

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
public sorts(String name, int salary) {
super();
this.name = name;
this.salary = salary;
}
@Override
public String toString() {
return "name=" + name + ", salary=" + salary + "";
}

}

public class SortsDemo {
public static void main(String[] args) {
List<sorts> list = new ArrayList<sorts>();
list.add(new sorts("员工A", 6000));
list.add(new sorts("员工B", 5500));
list.add(new sorts("员工C", 6500));
list.add(new sorts("员工D", 7000));
for(int i=0;i<list.size();i++){
for(int j=0;j<list.size()-1-i;j++){
if(list.get(j).getSalary()>list.get(j+1).getSalary()){
sorts temp=list.get(j);//把第一个对象放到临时变量 
list.set(j, list.get(j+1));
list.set(j+1,temp);

}

}

}
System.out.println(list);
}


}

@第二种方式:

public class CompareTo implements Comparable<CompareTo>{
private String name;
private Integer salay;

public CompareTo(String name, Integer salay) {
super();
this.name = name;
this.salay = salay;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public Integer getSalay() {
return salay;
}

public void setSalay(Integer salay) {
this.salay = salay;
}

@Override
public int compareTo(CompareTo o) {
   int n=salay.compareTo(o.salay);
// TODO Auto-generated method stub
   return  (n != 0 ? n : 0);
}

@Override
public String toString() {
return "name=" + name + ", salay=" + salay + "";
}
}

public static void main(String[] args) {
ArrayList<CompareTo> list = new ArrayList();
list.add(new CompareTo("A", 6000));
list.add(new CompareTo("B", 5500));
list.add(new CompareTo("C", 6500));
list.add(new CompareTo("D", 7000));
Collections.sort(list);
System.out.println(list);
}

6, “abcdefghijklmnopqrstuvwxzyqweruiopalkjsdhzmnb”

统计以上只出现一次的字母  

public static void main(String[] args) {
String str ="abcdefghijklmnopqrstuvwxzyqweruiopalkjsdhzmnb";
HashMap<Character,Integer> hashMap = new HashMap<>();
for(int i =0;i<str.length();i++){
char c = str.charAt(i);
if(!hashMap.containsKey(c)){
hashMap.put(c, 1);
}
else{
Integer num = hashMap.get(c);
hashMap.put(c, num+1); 
}
}
for (Map.Entry e : hashMap.entrySet()) {
if (e.getValue().equals(1)) {
System.out.println(e.getKey());
}
}

}

猜你喜欢

转载自blog.csdn.net/weixin_39944884/article/details/81032755
今日推荐