`
xiatiaohcx
  • 浏览: 32400 次
  • 性别: Icon_minigender_1
  • 来自: 山西
社区版块
存档分类
最新评论

java面试——一道面试题

阅读更多

题目:给出一个整数数组,将其写入一个文件,再从文件中读出,并按整数大小逆序打印。

这道面试题是我看了好多面试题后自己编的,希望能对将要面试的人有点帮助。

对于我这个新手来说,觉得这个题目考察的基础东西还是比较多的:

1.对文件的写入和读出方面的考察

2.对不同形的数组转换方面的考察

3.对string基本用法的考察(split,substring)

4.类型转换的考察

5.对算法的考察(排序)

ps:我写的这个题目肯定有其他更好的方法,我这个就算是一个笨方法了,由于我编程功力还不深厚,而且写下面的这些代码借助了myEclipse这样先进的IDE工具,还时不时的上baidu ,google搜索一下,但在笔试的时候全屏记忆在纸上写,这样难度可想而知。看来基础真的很重要

package com.xyq.demo;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

/**
 * 
 * @author xyq
 *
 * 作用:一道面试题
 */
public class T1 {
    /**
     * 把数组写入文件中
     * @throws IOException
     */
	void writefile() throws IOException {
		String str = "";
		FileOutputStream fos = new FileOutputStream("Result.txt");
		OutputStreamWriter osw = new OutputStreamWriter(fos);
		BufferedWriter bw = new BufferedWriter(osw);
		int[] intArr = new int[] { 10, -101,2, 5, 3, 4, 6 };
		//注意在这里输入到文件中的是字符串类型String而不是数组类型
		for (int i = 0; i < intArr.length; i++) {
			str += intArr[i] + ",";
		}
		str = str.substring(0, str.length()-1);
		bw.write(str);
		bw.close();
	}
    /**
     * 把数组从文件中读出来,并排序
     * @throws IOException
     */
	void readfile() throws IOException {
		String str = "";
		String str1 = "";
		FileInputStream fis = new FileInputStream("Result.txt");
		InputStreamReader isr = new InputStreamReader(fis);
		BufferedReader br = new BufferedReader(isr);
		//从文件中读出字符串String类型
		str = br.readLine();
		//把字符串转换成数组类型,再进行排序
		String[] strArr = str.split(",");
		//把String数组转换成int数组
		int[] intArr=new int[strArr.length];
		for(int i=0;i<strArr.length;i++){
		   intArr[i]=Integer.parseInt(strArr[i]);
		}
		sort(intArr);
		for (int i = 0; i < intArr.length; i++) {
			str1 += intArr[i]+",";
		}
		str1 = str1.substring(0, str1.length()-1);
		System.out.print(str1);
		br.close();
	}
    /**
     * 冒泡排序算法
     * @param data
     */
	public static void sort(int[] data) {
		int temp;
		for (int i = 0; i < data.length; i++) {
			for (int j = data.length - 1; j > i; j--) {
				if (data[i] < data[j]) {
					temp = data[i];
					data[i] = data[j];
					data[j] = temp;
				}
			}
		}
	}
    /**
     * main方法
     * @param args
     * @throws IOException
     */
	public static void main(String[] args) throws IOException {
		new T1().writefile();
		new T1().readfile();
	}
}

 
运行结果:

在Result.txt中为:10,-101,2,5,3,4,6

控制台打印为:10,6,5,4,3,2,-101

 

写完了,希望有更好方法或觉得我代码的不合理的朋友能指点一二,我最近要去面试,呵呵

分享到:
评论
3 楼 walkintojava 2010-11-16  
不讲效率的话,可以直接用:
Collections.sort(List,Comparator) 排序,毕竟JDK已经实现的排序
2 楼 cockspide 2009-10-20  
BufferedWriter 中没有write(String s)方法,只有write(String s,int offset,int len),其中s是要写入的字符串,offset是开始写入字符串的偏移量,len是要读入的字符数。
1 楼 oyprunner 2009-10-01  
冒泡改为快速排序

相关推荐

    Java全能学习面试手册——互联网企业面试真题.zip

    01 java面试——北京-百度-Java中级.pdf 02 java面试——北京-京东-Java中级.pdf 03 java面试——广州-唯品会-Java大数据开发工程师.pdf 04 java面试——杭州-阿里云-Java中级.pdf 05 java面试——杭州-蚂蚁金服-...

    最全面的java面试题——选择题部分

    最全面的java面试题——选择题部分

    java面试真题-江苏骏环昇旺科技.jpg

    java面试真题——江苏骏环昇旺科技.jpgjava面试真题——江苏骏环昇旺科技.jpgjava面试真题——江苏骏环昇旺科技.jpgjava面试真题——江苏骏环昇旺科技.jpgjava面试真题——江苏骏环昇旺科技.jpgjava面试真题——江苏...

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

    Java全能学习面试手册——Java面试题库.zip 01 7道消息队列ActiveMQ面试题!.pdf 02 10道Java高级必备的Netty面试题!.pdf 03 10道Java面试必备的设计模式面试题!.pdf 04 10个Java经典的List面试题!.pdf 05 10个...

    java面试——深圳-银盛支付-Java中级.zip

    这份"java面试——深圳-银盛支付-Java中级.zip"压缩包文件很可能包含了针对Java中级开发者的一系列面试问题和解答,旨在帮助求职者提升自己的技能,并在面试中脱颖而出。下面,我们将深入探讨一些可能涵盖的Java中级...

    java面试——Nginx面试专题.zip

    在Java面试中,Nginx是一个经常被提及的技术点,特别是在高级面试中,因为它在分布式系统、高并发和负载均衡中的重要角色。本面试专题主要围绕Nginx的基础概念、功能特性、配置与优化以及其在Java应用中的作用展开。...

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

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

    java程序员面试题——863面试集

    ### Java程序员面试题详解 #### 一、Java基础知识 1. **作用域public, private, protected, 以及不写时的区别** - **public**: 可以被任何类访问。 - **protected**: 可以被同一包内及不同包内的子类访问。 - ...

    java面试——杭州-蚂蚁金服-资深工程师.zip

    "java面试——杭州-蚂蚁金服-资深工程师.zip" 这个标题表明这是一份关于Java技术的面试准备资料,特别针对的是在杭州的蚂蚁金服公司应聘资深工程师的职位。这意味着这份压缩包可能包含了针对Java语言、高级编程技巧...

    java面试——深圳-OPPO-Java高级.zip

    在Java高级面试中,面试官通常会关注应聘者对核心概念、高级特性和实际问题解决能力的掌握。针对“深圳-OPPO-Java高级”这个主题,我们可以预想面试会涵盖多个关键知识点,包括但不限于: 1. **Java基础**: - 类...

    java面试——广州-唯品会-Java大数据开发工程师.zip

    【Java大数据开发工程师面试知识点概览】 在Java大数据开发工程师的面试中,考察的知识点广泛且深入,涵盖Java编程基础、大数据处理框架、分布式系统、数据库管理、算法与数据结构等多个方面。以下是对这些关键领域...

    java——面试题

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

    java面试题——数据结构

    Java面试中,数据结构是一个重要的考察点,因为它涉及到程序设计的基础和效率。以下是根据题目提供的内容,对相关知识点的详细阐述: 1. 栈和队列都是线性数据结构,它们的共同特性是仅允许在特定位置(栈顶或队尾...

    java面试——厦门-中软国际-Java中级.zip

    在Java面试中,中级开发者需要具备扎实的基础知识,以及对一些高级特性和设计模式的理解。以下是一些核心的Java中级面试知识点: 1. **内存管理与垃圾回收**: - 理解Java内存模型(JVM内存结构),包括堆、栈、...

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

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

    高级JAVA面试——最全的总结

    在准备高级JAVA面试时,全面了解和掌握...通过阅读"Java.doc"、"面试_JAVA_宝典—最全的总结.doc"、"Java框架面试题总结_201104.doc"和"java面试.doc"等文档,可以进一步强化这些知识,并找到面试中的常见问题和答案。

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

    Java面试题是每个Java开发者在求职过程中必须面对的挑战,涵盖范围广泛,从基础概念到高级特性和设计模式。这份终极列表包含115个Java面试题和...深入理解并熟练应用这些知识点,将大大提高你在Java面试中的竞争力。

    大厂Java面试真题——并发面试专题

    大厂Java面试真题分为Java、算法、操作系统、网络、面向对象、数据库、Java、系统设计、工具,本资料属于Java并发面试专题

    Java面试题必备——Java基础知识部分汇

    Java面试题必备——Java基础知识部分汇总 本文总结了Java基础知识部分的重要知识点,涵盖了Java面试中常见的问题,包括作用域、String类、int和Integer的区别、String和StringBuffer的区别、运行时异常与一般异常的...

Global site tag (gtag.js) - Google Analytics