`

JAVA面试题集——编程篇

    博客分类:
  • java
阅读更多

编程题:
1.现在输入n个数字,以逗号,分开;
然后可选择升或者降序排序;
按提交键就在另一页面显示
  按什么 排序,结果为,  ,
提供reset
答案(1) 

 

public static String[] splitStringByComma(String source){
           if(source==null||source.trim().equals(""))
                   return null;
           StringTokenizer commaToker =  new StringTokenizer(source,",");
           String[] result = new String[commaToker.countTokens()];
           int i=0;
           while(commaToker.hasMoreTokens()){
                   result[i] = commaToker.nextToken();
                   i++;
           }
           return result;
  }

 

 

循环遍历String数组
Integer.parseInt(String s)变成int类型
组成int数组
Arrays.sort(int[] a),
a数组升序
降序可以从尾部开始输出
 
2.金额转换,阿拉伯数字的金额转换成中国传统的形式如:
(¥1011)->(一千零一拾一元整)输出。
3、继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么?
答:父类:

package test; 
public class FatherClass 
{ 
public FatherClass() 
{ 
System.out.println("FatherClass Create"); 
} 
} 
子类: 
package test; 
import test.FatherClass; 
public class ChildClass extends FatherClass 
{ 
public ChildClass() 
{ 
System.out.println("ChildClass Create"); 
} 
public static void main(String[] args) 
{ 
FatherClass fc = new FatherClass(); 
ChildClass cc = new ChildClass(); 
} 
} 

 

 

输出结果:
C:>java test.ChildClass
FatherClass Create
FatherClass Create
ChildClass Create
 
4、内部类的实现方式?
答:示例代码如下:

package test; 
public class OuterClass 
{ 
private class InterClass 
{ 
public InterClass() 
{ 
System.out.println("InterClass Create"); 
} 
} 
public OuterClass() 
{ 
InterClass ic = new InterClass(); 
System.out.println("OuterClass Create"); 
} 
public static void main(String[] args) 
{ 
OuterClass oc = new OuterClass(); 
} 
} 

 

 

输出结果:
C:>java test/OuterClass
InterClass Create
OuterClass Create
再一个例题:
public class OuterClass {
private double d1 = 1.0;
//insert code here
}
You need to insert an inner class declaration at line 3. Which two inner class declarations are
 
valid?(Choose two.)
A. class InnerOne{
public static double methoda() {return d1;}
}
B. public class InnerOne{
static double methoda() {return d1;}
}
C. private class InnerOne{
double methoda() {return d1;}
}
D. static class InnerOne{
protected double methoda() {return d1;}
}
E. abstract class InnerOne{
public abstract double methoda();
}
说明如下:
一.静态内部类可以有静态成员,而非静态内部类则不能有静态成员。 故 A、B 错
二.静态内部类的非静态成员可以访问外部类的静态变量,而不可访问外部类的非静态变量;return d1 出错。
 
故 D 错
三.非静态内部类的非静态成员可以访问外部类的非静态变量。 故 C 正确
四.答案为C、E
 
 
5、Java 的通信编程,编程题(或问答),用JAVA SOCKET编程,读服务器几个字符,再写入本地显示?
答:Server端程序:

package test; 
import java.net.*; 
import java.io.*; 
public class Server 
{ 
private ServerSocket ss; 
private Socket socket; 
private BufferedReader in; 
private PrintWriter out; 
public Server() 
{ 
try 
{ 
ss=new ServerSocket(10000); 
while(true) 
{ 
socket = ss.accept(); 
String RemoteIP = socket.getInetAddress().getHostAddress(); 
String RemotePort = ":"+socket.getLocalPort(); 
System.out.println("A client come in!IP:"+RemoteIP+RemotePort); 
in = new BufferedReader(new 
 
InputStreamReader(socket.getInputStream())); 
String line = in.readLine(); 
System.out.println("Cleint send is :" + line); 
out = new PrintWriter(socket.getOutputStream(),true); 
out.println("Your Message Received!"); 
out.close(); 
in.close(); 
socket.close(); 
} 
}catch (IOException e) 
{ 
out.println("wrong"); 
} 
} 
public static void main(String[] args) 
{ 
new Server(); 
} 
}; 

 

 

Client端程序:

package test; 
import java.io.*; 
import java.net.*; 
 
public class Client 
{ 
Socket socket; 
BufferedReader in; 
PrintWriter out; 
public Client() 
{ 
try 
{ 
System.out.println("Try to Connect to 127.0.0.1:10000"); 
socket = new Socket("127.0.0.1",10000); 
System.out.println("The Server Connected!"); 
System.out.println("Please enter some Character:"); 
BufferedReader line = new BufferedReader(new 
 
InputStreamReader(System.in)); 
out = new PrintWriter(socket.getOutputStream(),true); 
out.println(line.readLine()); 
in = new BufferedReader(new InputStreamReader(socket.getInputStream())); 
System.out.println(in.readLine()); 
out.close(); 
in.close(); 
socket.close(); 
}catch(IOException e) 
{ 
out.println("Wrong"); 
} 
} 
public static void main(String[] args) 
{ 
new Client(); 
} 
}; 

 

 

6、用JAVA实现一种排序,JAVA类实现序列化的方法(二种)? 如在COLLECTION框架中,实现比较要实现什么样的接口?
答:用插入法进行排序代码如下

package test; 
import java.util.*; 
class InsertSort 
{ 
ArrayList al; 
public InsertSort(int num,int mod) 
{ 
al = new ArrayList(num); 
Random rand = new Random(); 
System.out.println("The ArrayList Sort Before:"); 
for (int i=0;i<num ;i++ ) 
{ 
al.add(new Integer(Math.abs(rand.nextInt()) % mod + 1)); 
System.out.println("al["+i+"]="+al.get(i)); 
} 
} 
public void SortIt() 
{ 
Integer tempInt; 
int MaxSize=1; 
for(int i=1;i<al.size();i++) 
{ 
tempInt = (Integer)al.remove(i); 
if(tempInt.intValue()>=((Integer)al.get(MaxSize-1)).intValue()) 
{ 
al.add(MaxSize,tempInt); 
MaxSize++; 
System.out.println(al.toString()); 
} else { 
for (int j=0;j<MaxSize ;j++ ) 
{ 
if 
 
(((Integer)al.get(j)).intValue()>=tempInt.intValue()) 
{ 
al.add(j,tempInt); 
MaxSize++; 
System.out.println(al.toString()); 
break; 
} 
} 
} 
} 
System.out.println("The ArrayList Sort After:"); 
for(int i=0;i<al.size();i++) 
{ 
System.out.println("al["+i+"]="+al.get(i)); 
} 
} 
public static void main(String[] args) 
{ 
InsertSort is = new InsertSort(10,100); 
is.SortIt(); 
} 
} 

 

 

JAVA类实现序例化的方法是实现java.io.Serializable接口
Collection框架中实现比较要实现Comparable 接口和 Comparator 接口
7、编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如"我ABC"4,应该截为"我AB",输入"我ABC汉DEF",6,应该输出为"我ABC"而不是"我ABC+汉的半个"。
答:代码如下:

package test; 
 
class SplitString 
{ 
String SplitStr; 
int SplitByte; 
public SplitString(String str,int bytes) 
{ 
SplitStr=str; 
SplitByte=bytes; 
System.out.println("The String is:′"+SplitStr+"′;SplitBytes="+SplitByte); 
} 
public void SplitIt() 
{ 
int loopCount; 
loopCount=(SplitStr.length()%SplitByte==0)?(SplitStr.length()/SplitByte):(SplitStr.length()/Split 
Byte+1); 
System.out.println("Will Split into "+loopCount); 
for (int i=1;i<=loopCount ;i++ ) 
{ 
if (i==loopCount){ 
System.out.println(SplitStr.substring((i-1)*SplitByte,SplitStr.length())); 
} else { 
System.out.println(SplitStr.substring((i-1)*SplitByte,(i*SplitByte))); 
} 
} 
} 
public static void main(String[] args) 
{ 
SplitString ss = new SplitString("test中dd文dsaf中男大3443n中国43中国人 
 
0ewldfls=103",4); 
ss.SplitIt(); 
} 
} 

 

 

8、JAVA多线程编程。 用JAVA写一个多线程程序,如写四个线程,二个加1,二个对一个变量减一,输出。 

9、STRING与STRINGBUFFER的区别。
答:STRING的长度是不可变的,STRINGBUFFER的长度是可变的。如果你对字符串中的内容经常进行操作,特别是内容要修改时,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法 。

分享到:
评论

相关推荐

    JAVA面试题集(基础篇,高级篇 编程篇)

    以下是对给定的三个部分——"JAVA面试题集基础篇"、"JAVA面试题集高级篇"、"JAVA面试题集编程篇"的详细解析。 **JAVA面试题集基础篇** 基础篇主要关注Java语法和核心概念。这部分可能会包含以下几个方面的知识点:...

    最新Java面试题视频网盘,Java面试题84集、java面试专属及面试必问课程

    面试题包含了不同技术层面的面试问题,同时也能对一些没有面试开发经验的小白给予不可估量的包装, 让你的薪水绝对翻倍, 本人亲试有效.Java面试题84集、java面试专属及面试必问课程,所有的面试题有视屏讲解, 解答方案....

    java面试题答案——面试经典

    在Java面试中,面试官常常会考察候选人的基础知识,包括数据类型、字符串操作、数据转换、日期时间处理、数组与集合、文件I/O操作、多态性、编码转换以及数据库访问等。下面我们将对这些知识点进行详细讲解。 1. **...

    Java全能学习面试手册——Java面试题库.zip

    36 java面试题_消息中间件--RocketMq(14题).pdf 37 JVM.pdf 38 JVM常见面试题指南.pdf 39 JVM面试题.pdf 40 JVM面试专题.pdf 41 JVM性能优化相关问题.pdf 42 JVM执行子系统.pdf 43 Kafka面试题.pdf 44 Linux面试题....

    115个Java面试题和答案——终极列表

    Java面试题是每个Java开发者在求职过程中必须面对的挑战,涵盖范围广泛,从基础概念到高级特性和设计模式。这份终极列表包含115个Java面试题和答案,旨在帮助求职者全面准备,以期在面试中表现出色。以下是部分核心...

    Java面试题系列——Spring 示例代码.zip

    【一线互联网大厂Java核心面试题库】Java基础、异常、集合、并发编程、JVM、Spring全家桶、MyBatis、Redis、数据库、中间件MQ、Dubbo、Linux、Tomcat、ZooKeeper、Netty等等..

    115个Java面试题和答案——终极(下)

    题目:115个Java面试题和答案——终极(下) 第一篇讨论了面向对象编程和它的特点,关于Java和它的功能的常见问题,Java的集合类,垃圾收集器,本章主要讨论异常处理,Java小应用程序,Swing,JDBC,远程方法调用...

    115个Java面试题和答案——终极(上)

    题目:115个Java面试题和答案——终极(下) 第一篇讨论了面向对象编程和它的特点,关于Java和它的功能的常见问题,Java的集合类,垃圾收集器,本章主要讨论异常处理,Java小应用程序,Swing,JDBC,远程方法调用...

    java程序员必备——比较全的Java面试题

    【Java程序员必备——比较全的Java面试题】 Java编程语言作为全球最受欢迎的开发语言之一,其面试题库广泛且深入,涵盖了基础语法、面向对象、集合框架、多线程、网络编程、I/O流、数据库操作、设计模式等多个方面...

    JAVA编程题全集(100题及答案)——直接打印

    JAVA 编程题全集知识点总结 本资源提供了一个完整的 JAVA 编程题全集,涵盖了大量的题目和经典的解法,非常适合刷学完基础、刷题前的知识总结与开拓。以下是从资源中提取的重要知识点: 1. JAVA 基础知识:资源中...

    Java面试之——代码与编程题

    【Java面试之——代码与编程题】是Java程序员在求职过程中常常遇到的面试环节,主要考察应聘者对Java语言的理解和实际操作能力。面试中,面试官可能会提出各种类型的编程题目,包括但不限于设计模式、继承机制、内部...

    java面试笔试题库java笔试题大集合及答案互联网公司面试资料Java面试问题集大全合集(200个).zip

    java面试笔试题库java笔试题大...Java面试题以及答案(小生).pdf java面试题(题库全).doc JS 数据库答案.doc Land.the.Tech.Job.You.Love-人人都有好工作—IT行业求职面试必读.pdf Linux命令大全完整版.doc sql查询

    java面试笔试题库java软件设计java笔试题大集合及答案文档资料合集300MB.zip

    大公司的Java面试题集.doc 就业相关java 广州传智播客JavaEE工程师测试题.doc 广州传智播客JavaEE工程师测试题(带答案的).doc 应聘时最漂亮的回答.docx 当面试官问「你有什么要问我的吗」时,应该问什么?.docx ...

    java面试笔试题库java学习笔记开发教程互联网公司面试资料大全合集.zip

    大公司的Java面试题集.doc 就业相关java 广州传智播客JavaEE工程师测试题.doc 广州传智播客JavaEE工程师测试题(带答案的).doc 应聘时最漂亮的回答.docx 当面试官问「你有什么要问我的吗」时,应该问什么?.docx ...

    java——面试题

    在Java编程语言中,面试题往往涵盖了广泛的知识点,从基础语法到高级特性。以下是根据题目给出的部分内容解析的一些Java面试常见问题及其解答: 1. **一个.java源文件中的类数量**: - 一个`.java`源文件可以包含...

    臧圩人--JAVA面试题解惑系列合集.pdf

    **1.1 JAVA面试题解惑系列(一)——类的初始化顺序** - **知识点**:类的初始化顺序涉及静态变量、静态初始化块、实例变量、实例初始化块及构造器的执行顺序。在继承关系中,父类的初始化先于子类进行,且静态部分...

    java面试笔试资料java笔试题大集合及答案题库java笔试题汇总资料188个合集.zip

    大公司的Java面试题集.doc 就业相关java 广州传智播客JavaEE工程师测试题.doc 广州传智播客JavaEE工程师测试题(带答案的).doc 应聘时最漂亮的回答.docx 当面试官问「你有什么要问我的吗」时,应该问什么?.docx ...

Global site tag (gtag.js) - Google Analytics