黑马程序员技术交流社区

标题: 我的基础测试题分享一下,不是太难,大家加油 [打印本页]

作者: dsh    时间: 2014-10-1 07:24
标题: 我的基础测试题分享一下,不是太难,大家加油


黑马程序员训练营基础测试



1、判断一个字符串是否是对称字符串,例如"abc"不是对称字符串,"aba"、"abba"、"aaa"、"mnanm"是对称字符串

2、 从键盘接受一个数字,打印该数字表示的时间,最大单位到天,例如:

键盘输入6,打印6秒;
键盘输入60,打印1分;
键盘输入66,打印1分6秒;
键盘输入666,打印11分6秒;
键盘输入3601,打印1小时1秒
3、 Collection和Collections有什么关系?List和Set有什么异同点?Map有哪些常用类,各有什么特点?

求斐波那契数列第n项,n<30,斐波那契数列前10项为 1,1,2,3,5,8,13,21,34,55
5、 编程打印所有的3位质数,质数特点:只能被1和其本身整除

6、 使用带缓冲功能的字节流复制文件。

7、 在打印语句中如何打印这3个x变量?

class A {
int x = 1;
class B {
int x = 2;
void func() {
int x = 3;
System.out.println( ? );
        }
    }
}
8、 数组去重复,例如: 原始数组是{4,2,4,6,1,2,4,7,8},得到结果{4,2,6,1,7,8}

9、 编写程序,将指定目录下所有.java文件拷贝到另一个目的中,并将扩展名改为.txt

10、编写函数,从一个字符串中按字节数截取一部分,但不能截取出半个中文(GBK码表),例如:从“HM程序员”中截取2个字节是“HM”,截取4个则是“HM程”,截取3个字节也要是"HM"而不要出现半个中文

作者: wingli    时间: 2014-10-1 09:55
楼主的基础题不难啊,为啥我就抽不到呢:'(
作者: daoqin    时间: 2014-10-1 10:04
数组去重复,例如: 原始数组是{4,2,4,6,1,2,4,7,8},得到结果{4,2,6,1,7,8}
这个题目你怎么写的?
作者: wisderm    时间: 2014-10-1 10:16
感谢分享,加油!!
作者: woshihf    时间: 2014-10-1 10:27
呵呵,不错,共勉加油哈,!
作者: 叫我小强    时间: 2014-10-1 16:33
目前没有会的
作者: 哈达洋    时间: 2014-10-1 19:56
看看。。
作者: dsh    时间: 2014-10-1 20:46
daoqin 发表于 2014-10-1 10:04
数组去重复,例如: 原始数组是{4,2,4,6,1,2,4,7,8},得到结果{4,2,6,1,7,8}
这个题目你怎么写的? ...

你想要???
作者: dsh    时间: 2014-10-1 20:49
daoqin 发表于 2014-10-1 10:04
数组去重复,例如: 原始数组是{4,2,4,6,1,2,4,7,8},得到结果{4,2,6,1,7,8}
这个题目你怎么写的? ...

这题  用集合做  建一个集合容器用来装数,从原始数组是{4,2,4,6,1,2,4,7,8}依次那数往集合中放,放之前判断集合中有没有,有就不放去哪下一个    最后遍历集合就ok
作者: dsh    时间: 2014-10-1 20:50
wingli 发表于 2014-10-1 09:55
楼主的基础题不难啊,为啥我就抽不到呢

呵呵   这些都是基础的   我的推荐信  写的很差    博文不怎么会写  哎  估计是去不了了
作者: weiyi    时间: 2014-10-1 20:56
感觉好难啊
作者: 千里马    时间: 2014-10-1 23:28
daoqin 发表于 2014-10-1 10:04
数组去重复,例如: 原始数组是{4,2,4,6,1,2,4,7,8},得到结果{4,2,6,1,7,8}
这个题目你怎么写的? ...

import java.util.*;
import java.util.Set;
import java.util.TreeSet;
import java.util.Iterator;
public class ArrayDemo {
        public static void main(String[] args) {int[] src= {4,2,4,6,1,2,4,7,8 };
        Set <Integer> set=new TreeSet <Integer>();for (int i : src) {
                set.add(i);
        }
        int[] test=new int[set.size()];
        Iterator <Integer> iter= set.iterator();
        for (int i=0; i < test.length&& iter.hasNext(); i++) {
                test= iter.next();
        }
        System.out.println(Arrays.toString(test));
        }
}

运行结果:[1, 2, 4, 6, 7, 8]
作者: wtjohn    时间: 2014-10-2 00:22
  1. public class test02 {
  2.         public static void main(String[] args) {
  3.                 time(3840);
  4.         }
  5.         public static void time(int i)
  6.         {
  7.                
  8.                 int[] a={i/(3600),(i%3600)/60,i%3600%60};
  9.                
  10.                 System.out.println(a[0]+"小时"+a[1]+"分"+a[2]+"秒");
  11.         }
  12. }
复制代码


第二题我是这么做的,有更好的方法吗?

作者: wtjohn    时间: 2014-10-2 01:57
千里马 发表于 2014-10-1 23:28
import java.util.*;
import java.util.Set;
import java.util.TreeSet;
  1. class test06
  2. {
  3.         public static void main(String[] args) {
  4.                 int[] a={4,2,4,6,1,2,4,7,8};
  5.                 quchong(a);
  6.         }
  7.         public static void quchong(int[] a)
  8.         {
  9.                 ArrayList al=new ArrayList();
  10.                 for(int i=0;i<a.length;i++)
  11.                 {
  12.                         if(!al.contains(a[i]))
  13.                         {
  14.                                 al.add(a[i]);
  15.                         }
  16.                 }
  17.                 System.out.println(al.toString());
  18.         }
  19. }
复制代码



作者: 水竹    时间: 2014-10-2 02:27
wtjohn 发表于 2014-10-2 00:22
第二题我是这么做的,有更好的方法吗?

最大单位到天,你这才到小时吧?
作者: dsh    时间: 2014-10-2 08:31
wtjohn 发表于 2014-10-2 00:22
第二题我是这么做的,有更好的方法吗?

package com.itheima;
这是我的答案
import java.util.Scanner;

/*
* 2、 从键盘接受一个数字,打印该数字表示的时间,最大单位到天,例如:

        键盘输入6,打印6秒;
        键盘输入60,打印1分;
        键盘输入66,打印1分6秒;
        键盘输入666,打印11分6秒;
        键盘输入3601,打印1小时1秒
       
        分析:  一天是86400秒
                一个小时 3600秒
       
*/
public class Test02 {

        public static void main(String[] args) {
                //创建文本扫描器
                Scanner sc = new Scanner(System.in);
                //输入一个数
                System.out.println("输入一个正数:");
               
                int number = sc.nextInt();
                while(number<0){
                        System.out.println("输入有误,重新输入:");
                        number = sc.nextInt();
                }
                //创建一个字符串反冲区
                StringBuffer sb= new StringBuffer();
                countTime(number,sb);
               

        }

        private static void countTime(int num,StringBuffer sb) {
                int day = num/86400;  //得到天数
                int  num1 =num %86400;  //得到剩余的秒数
                int hour = num1/3600;  //得到小时数
                int num2 = num1%3600;        //得到剩余的秒数
                int minute= num2/60;  //等到分钟
                int miao = num2%60;  //得到剩余的秒数
               
                if(day>0){
                        sb.append(day).append("天");
                       
                }
                if(hour>0){
                        sb.append(hour).append("小时");
                }
                if(minute>0){
                        sb.append(minute).append("分钟");
                }
                if(miao>0){
                        sb.append(miao).append("秒");
                }
                System.out.println(sb);
        }

}

作者: 不系之舟王    时间: 2014-10-2 11:02
我基础题貌似比这难
作者: wtjohn    时间: 2014-10-2 14:21
dsh 发表于 2014-10-2 08:31
package com.itheima;
这是我的答案
import java.util.Scanner;

恩。。。。我也改了一下..你这个更符合题目要求
作者: 残羹夜宴丶    时间: 2014-10-3 08:42
我在想如果我要抽到农夫过河问题我就呵呵了。
作者: 沈木生    时间: 2014-10-3 12:55
都差不多的题目
作者: dsh    时间: 2014-10-3 13:37
残羹夜宴丶 发表于 2014-10-3 08:42
我在想如果我要抽到农夫过河问题我就呵呵了。

这是个什么题   我是最怕递归类型的
作者: dsh    时间: 2014-10-3 13:40
不系之舟王 发表于 2014-10-2 11:02
我基础题貌似比这难

可以分享下
作者: 沙拉很好吃    时间: 2014-10-3 13:44
dsh 发表于 2014-10-3 13:40
可以分享下

在吗,讨论一个问题啊
作者: dsh    时间: 2014-10-3 16:12
沙拉很好吃 发表于 2014-10-3 13:44
在吗,讨论一个问题啊

刚刚在弄我的博文
作者: 北风    时间: 2014-10-3 16:20
感谢分享。加油
作者: yueyazhishang    时间: 2014-10-4 10:23
比较基础
作者: 雨夜忧伤    时间: 2014-10-4 19:59
差不多,貌似,谢谢分享!
作者: zz_job    时间: 2014-10-4 20:11
面试会不会比这个难很多啊...
作者: 风无向梦无痕    时间: 2014-10-4 20:12
谢谢分享




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2