这是我在网上看到的面试题,自己写了点,不保证对,大致的写一下,没有经过严格的测试。
目录
题目1
- 编写统计给定字符串中不同类别字符个数的方法,分类包括:英文字母、空白字符、数字字符和其他字符,方法无返回值,统计结果输出在屏幕上。
public static void totalString(String s) {
int num_english = 0;
int num_kongbai = 0;
int num_number = 0;
int num_other = 0;
for(int i = 0;i < s.length();i++) {
if('a'<= s.charAt(i) && s.charAt(i) <= 'c' || ('A' <= s.charAt(i) && s.charAt(i) <= 'Z')) {
num_english++;
}else if(s.charAt(i) == ' ') {
num_kongbai++;
}else if('0'<= s.charAt(i) && s.charAt(i) <= '9') {
num_number++;
}else {
num_other++;
}
}
System.out.println("英文字符为: "+"空白字符: "+num_english+"数字字符: "+num_kongbai+"其他字符: "+num_number+num_other);
}
题目2
2.现有先进后出栈接口Stack定义如下,请解释程序中的含义,再用 ArrayList做一个具体实现类ArrayListStatck 。
public interface Stack <T>{.
void push(T obj);//放入一个元素
T get();//查看最后放入的元素
T pop();//获取最后放入的元素
}
我的答案:
public class ArrayListStack implements Stack2<String>{
private ArrayList arrayList = new ArrayList<>();;
@Override
public void push(String obj) {
// TODO Auto-generated method stub
arrayList.add(obj);
}
@Override
public String get() {
// TODO Auto-generated method stub
if(arrayList.size() - 1 < 0) {
return "";
}
return (String)arrayList.get(arrayList.size() - 1);
}
@Override
public String pop() {
// TODO Auto-generated method stub
if(arrayList.size() - 1 < 0) {
return "";
}
return (String) arrayList.remove(arrayList.size() - 1);
}
}
题目3
3.在某银行中,贷款产品比较多,为了对产品进行统一的管理,某开发人员决定采用工厂模式来管理该产品信息,工厂模式是java, 设计模式中比较简单的一个设计模式,请帮助该开发人员完成该模型的编写。
1:请先编写接口,将产品的信息进行抽象,产品包含了产品编号、名称、产品最大金额。
2:该银行目前有产品A、产品B,请实现这两个产品。
3:请实现,通过产品工厂,获得对应的产品信息。