首页 > 其他 > 详细

flhs笔试题-回家上机实践

时间:2014-03-08 06:38:11      阅读:634      评论:0      收藏:0      [点我收藏+]

这是最近参加的一个公司的笔试题,回家上机写了下代码,希望对有需要的小伙伴有用,简单实现字符串和数组在指定位置的插入

package org.flhs;

import com.google.common.base.Strings;

/**
* Created with IntelliJ IDEA.
* User: cutter.li
* Date: 14-3-7
* Time: 下午3:10
* To change this template use File | Settings | File Templates.
*/
public class FLHSTest {


    public static void main(String[] args) {

//        changePosition("iloveyou", 5);


       Object[] objArray= insertObjArrayInPosition(new Object[]{"a","b","hello"},new Object[]{"fuck","you"},3);

       printArray(objArray);

    }

    private static void printArray(Object[] objArray) {
        if(null!=objArray&&objArray.length>0)
        {
            for(Object obj:objArray)
            {
                System.out.print(obj+" , ");
            }
        }
    }

    //对指定位置前后的字符串的内容进行调换
    public static void changePosition(String str, int position) {
        String res = "";
        if (Strings.isNullOrEmpty(str)) {
            res = "改变的字符串为空";
        } else {
            int len = str.length();

            if (position <= 0 || position >= len) {
                res = str;
            } else {
                String preTxt = str.substring(0, position);
                String remainTxt = str.substring(position, str.length());
                res = remainTxt + preTxt;

            }
        }
        System.out.println(res);
    }

//数组在指定位置的插入
    public static Object[] insertObjArrayInPosition(Object[] dest, Object[] source, int position) {
        if (null == dest) {
            return source;
        }

        if (null == source) {
            return dest;
        }
        int destSize = dest.length;
        int sourceSize = source.length;
        Object[] resObjArray = new Object[destSize + sourceSize];

        if (position <= 0) {
            System.arraycopy(source, 0,  resObjArray, 0, sourceSize);
            System.arraycopy(dest , 0, resObjArray, sourceSize, destSize);
        } else if (position > dest.length) {
            System.arraycopy(dest, 0,  resObjArray, 0, destSize);
            System.arraycopy(source, 0,  resObjArray, destSize, sourceSize);
        } else {
            System.arraycopy(dest, 0, resObjArray, 0, position);
            System.arraycopy(source, 0,  resObjArray, position, sourceSize);
            System.arraycopy(dest, position,  resObjArray, position+sourceSize, destSize - position);

        }
        return resObjArray;
    }


}

flhs笔试题-回家上机实践,布布扣,bubuko.com

flhs笔试题-回家上机实践

原文:http://www.cnblogs.com/snidget/p/3586592.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!