Java编程笔试面试题③

题目:提取不重复的整数

描述: 输入一个int型32位整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。

运行时间限制: 10 Sec

内存限制: 无限制

输入: 整数,如9876673

注意:

1、整数最后的0,请忽略,例如:输入1750,输出:571

2、负数,保留'-'在前面,例如:输入-175,输出:-571

输出: 整数,如37689

样例输入: 9876673

样例输出: 37689

解答:

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

@SuppressWarnings("resource")

Scanner scanner=new Scanner(System.in);

while(scanner.hasNext()){

String s=scanner.nextLine();

int len=s.length();

int []arr1=new int[10];

for(int i=len-1;i>=0;i--){

if(arr1[s.charAt(i)-48]==0){

System.out.print(s.charAt(i)-48);

arr1[s.charAt(i)-48]++;

}

}

}

}

}

上期题目解答:

1. Java 支持的数据类型有哪些?什么是自动拆装箱?

解答:Java 语言支持的 8 种基本数据类型是: byte short int long float double boolean char 自动装箱是 Java 编译器在基本数据类型和对应的对象包装类型之间做的一个转化。比如: 把 int 转化成 Integer,double 转化成 Double,等等。反之就是自动拆箱。

2.什么是死锁(deadlock)?

解答:两个线程或两个以上线程都在等待对方执行完毕才能继续往下执行的时候就发生了死锁。结 果就是这些线程都陷入了无限的等待中。

3.如何确保 N 个线程可以访问 N 个资源同时又不导致死锁?

解答:使用多线程的时候,一种非常简单的避免死锁的方式就是:指定获取锁的顺序,并强制线程 按照指定的顺序获取锁。因此,如果所有的线程都是以同样的顺序加锁和释放锁,就不会出 现死锁了。

4.RMI 体系结构分哪几层?

解答:RMI 体系结构分以下几层: 存根和骨架层(Stub and Skeleton layer):这一层对程序员是透明的,它主要负责拦截客户端发 出的方法调用请求,然后把请求重定向给远程的 RMI 服务。 远程引用层(Remote Reference Layer):RMI 体系结构的第二层用来解析客户端对服务端远程 对象的引用。这一层解析并管理客户端对服务端远程对象的引用。连接是点到点的。 传输层(Transport layer):这一层负责连接参与服务的两个 JVM。这一层是建立在网络上机器 间的 TCP/IP 连接之上的。它提供了基本的连接服务,还有一些防火墙穿透策略。

今日题目:概念题 难度指数:★

1. Java 支持的数据类型有哪些?什么是自动拆装箱?

2.doGet()方法和 doPost()方法有什么区别?

3.如何知道是哪一个客户端的机器正在请求你的 Servlet?

4.JSP 请求是如何被处理的?

相关文章