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
薪水有低到高进行排序
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());
}
}
}