`
i3587616
  • 浏览: 21428 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

怀具,面试亡在简单的API上

阅读更多
一道简单的回答不出来。就是问随便给一个数,转换成十六进制。笔试完了面试又问了如何转成八进制,如何转成二进制。
但我没想到的是答案,如此简单。
Integer.toString(target_i, 16);就是十六进制,
Integer.toString(target_i, 2);二进制。
Integer.toString(target_i,八进制。
完全杯剧啊,还写什么代码。怪不得笔试时那题给的地方那么小。只怪我不灵活。笔试时也无法查jdk文档。
分享到:
评论
17 楼 wzju64676266 2010-10-15  
比如System.out.print()能不能当成void来用

就像new Object()  能不能当Object来用,两个不同的概念
16 楼 wzju64676266 2010-10-15  
面试官的目的不是你怎么使用方法,而是你自己写个转换的功能吧,自己写也很简单啊
15 楼 rockis 2010-10-14  
Python实现
chars =  [chr(ord('0') +  c) for c in range(10)] + [chr(ord('A') +  c) for c in range(6)]
tohex = lambda num, str = '' : num == 0 and ('0x' + str) or tohex(num >> 4, chars[num & 0xf] + str)
print tohex(0x100cdef)

chars =  ['0', '1']
tobin = lambda num, str = '' : num == 0 and str or tobin(num >> 1, chars[num & 1] + str)
print tobin(0x100cdef)

chars =  [chr(ord('0') +  c) for c in range(8)]
tooct = lambda num, str = '' : num == 0 and str or tooct(num >> 2, chars[num & 7] + str)
print tooct(0x100cdef)


14 楼 風一樣的男子 2010-10-14  
toBinaryString()、toHexString()、 toOctalString() 都有好不
13 楼 i3587616 2010-10-14  
看了API源码,Integer的。
public static final int   MIN_VALUE = 0x80000000;

public static final int   MAX_VALUE = 0x7fffffff;

public static final Class<Integer> TYPE = (Class<Integer>) Class.getPrimitiveClass("int");
final static char[] digits = {
'0' , '1' , '2' , '3' , '4' , '5' ,
'6' , '7' , '8' , '9' , 'a' , 'b' ,
'c' , 'd' , 'e' , 'f' , 'g' , 'h' ,
'i' , 'j' , 'k' , 'l' , 'm' , 'n' ,
'o' , 'p' , 'q' , 'r' , 's' , 't' ,
'u' , 'v' , 'w' , 'x' , 'y' , 'z'
    };
public static String toString(int i, int radix) {

        if (radix < 2 || radix > 36)
    radix = 10;

/* Use the faster version */
if (radix == 10) {
    return toString(i);
}

char buf[] = new char[33];
boolean negative = (i < 0);
int charPos = 32;

if (!negative) {
    i = -i;
}

while (i <= -radix) {
    buf[charPos--] = digits[-(i % radix)];
    i = i / radix;
}
buf[charPos] = digits[-i];

if (negative) {
    buf[--charPos] = '-';
}

return new String(buf, charPos, (33 - charPos));
    }
public static String toString(int i) {
        if (i == Integer.MIN_VALUE)
            return "-2147483648";
        int size = (i < 0) ? stringSize(-i) + 1 : stringSize(i);
        char[] buf = new char[size];
        getChars(i, size, buf);
        return new String(0, size, buf);
    }
12 楼 flysnowxf 2010-10-14  
写了一个比较简单的实现:
	public static String toString(long num, int radix) {
		StringBuilder result = new StringBuilder();
		while(true) {
			long remainder = num % radix;
			result.append(toHexLetter(remainder));
			num = num / radix;
			if(num == 0) {
				break;
			}
		}
		
		return result.reverse().toString();
	}
	
	private static String toHexLetter(long num) {
		if(num < 10)
			return num + "";
		
		String letter = "";
		if(num == 10) letter = "a";
		else if(num == 11) letter = "b";
		else if(num == 12) letter = "c";
		else if(num == 13) letter = "d";
		else if(num == 14) letter = "e";
		else if(num == 15) letter = "f";
		
		return letter;
	}

如果不是16进制需要转字母,代码就很简单了。
11 楼 i3587616 2010-10-14  
yangyw 写道
或许人家是想考你进制转换之间的位运算,而不是要考你API!

就是要考你API的,它要你写出具体的程序,当然算法也行,但给出的位置只有二行大小。明显是填上API就算。
而且面试时有提示我是用JAVA的API来,我说不清楚哪个,用到时在查文档。
我说有些东西不用记,只要知道怎么做就好。那他就说,那有什么要记的。
10 楼 shadowvan 2010-10-14  
楼主,怀具
9 楼 yangyw 2010-10-14  
或许人家是想考你进制转换之间的位运算,而不是要考你API!
8 楼 EldonReturn 2010-10-14  
面试显然不会考API,要考这种古怪的API那这面试太失败
这题不是要考那个辗转求余法么
7 楼 lyw985 2010-10-14  
面试的时候不应该考API里的东西,应该是考算法才对吧
6 楼 i3587616 2010-10-14  
seele 写道
随便给一个数

超过Integer范围呢?

整数啦,Long也有这个方法。
不考虑超过long的。当时考的是十六进制。Float也有toHexString方法。就是没想到。
面试时又问了转化为二进制,八进制。
5 楼 skyuck 2010-10-14  
对啊   不熟悉api自己转换一下也很简单啊

ps:我最近也在熟悉api
4 楼 lkj107 2010-10-14  
刚工作的,就是考些细节,等你有工作经验了,就不考这个了
3 楼 rocketball 2010-10-14  
这TMD的自己转化一下也很简单
2 楼 seele 2010-10-14  
随便给一个数

超过Integer范围呢?
1 楼 i3587616 2010-10-13  
有什么直接转化的好的高速的方法吗。还有void的方法是无返回值。
比如System.out.print()能不能当成void来用。比如System.out.print().class好像行不通。

相关推荐

    JDK1.6API中文版+JavaScriptAPI+面试宝典

    Java开发文档集合包含JDK1.6 API中文版、JavaScript API、面试宝典以及Servlet API,这些都是Java开发者必备的学习资源。下面将详细讲解这些关键知识点。 首先,**JDK1.6 API中文版**是Java开发者理解Java平台核心...

    WebApi面试题.pdf

    在本资源中,我们将对 WebApi 相关面试题进行详细解析,从 DOM 结构操作到事件模型,再到 JavaScript 定时器和浏览器渲染过程。 1. 什么是 DOM? DOM(Document Object Model)是文档对象模型,用于描述 HTML 和 ...

    自动化测试工具,自动化测试框架,性能测试工具,测试报告工具 软件测试面试题,自动测试面试题,Java面试题,Python面试题

    在IT行业中,软件测试是确保产品质量的关键环节。随着技术的发展,自动化测试已成为现代软件开发流程中的重要组成...在面试中,展示对这些工具的深入理解和实践经验,往往能给面试官留下深刻印象,提高求职成功的机会。

    前端-webapi相关面试题.md

    内功概要:前端面试-webapi的相关面试题(问题+答案) 问题如下: 1. 请说下什么是重绘和重排(回流)?他们的区别是什么? 2 .说说this的指向问题吧? 3. 事件流分为哪两个阶段? 4 .事件委托的实现原理?如果获取...

    Asp.net 做的面试管理系统

    综上所述,这个Asp.net面试管理系统展示了Web开发中的多项关键技术,包括Asp.net的MVC架构、C#编程、Ajax异步更新、地图API集成以及实时通信解决方案。这些技术的综合运用,构建了一个高效、易用且功能丰富的面试...

    2023黑马面试宝典-Java面试宝典大全-java面试宝典黑马

    Java面试宝典是Java程序员求职面试的重要参考资料,它涵盖了Java编程语言的核心概念、...以上这些知识点构成了Java面试的主要内容,熟练掌握并能灵活应用,将极大地提升你在面试中的竞争力,助你在求职路上一马当先。

    面试题汇 总面试问题及回答技巧

    在IT行业的面试中,掌握扎实的技术知识和良好的面试策略至关重要。本篇文章将深入探讨.NET和Java领域的面试问题,以及如何有效回答这些问题的技巧。 首先,我们来看.NET领域。.NET是微软开发的一种全面的开发平台,...

    前端面试小册,包含Vue面试题,React面试题,JS面试题,HTTP面试题,工程化面试题,CSS面试题,算法面试题,大厂面试题

    【JavaScript】 JavaScript是前端开发的核心语言,面试中常常会涉及以下知识点: 1. **requestAnimationFrame**:这是一个...以上这些是面试中常见的技术点,掌握好这些知识将有助于在前端面试中取得优异的表现。

    JAVA程序员 面试 java面试资料集锦 经验 面试常问的问题 面试无忧

    - 完成经典面试题的练习,如LeetCode或HackerRank上的题目。 - 阅读官方文档,理解Java新特性,如Java 8及以后的Lambda表达式、Stream API等。 - 理解并实践性能调优,如JProfiler、VisualVM等工具的使用。 - 学习并...

    最新各大公司企业真实面试题-Java面试题

    Java是信息技术领域中广泛使用的编程语言,尤其在企业级应用开发方面占据主导地位。因此,对于求职者来说,掌握Java的核心知识并能应对各种面试题是至关重要的。本压缩包包含了一系列由IT资深专家单兴华整理的最新各...

    oracle,etl工程师--面试题锦集

    - **范式理论**:第一范式到第五范式,理解它们在减少数据冗余和提高数据一致性上的作用。 - **查询优化**:了解Oracle的执行计划,分析SQL性能,使用EXPLAIN PLAN进行查询优化。 3. **ETL过程**: - **数据提取...

    10万字总结java面试题和答案(八股文之一)Java面试题指南

    JavaOOP面试题 Java集合/泛型面试题 Java异常面试题 Java中的IO与NIO面试题 Java反射面试题 Java序列化面试题 Java注解面试题 多线程&并发面试题 JVM面试题 Mysql面试题 Redis面试题 Memcached面试题 MongoDB面试题 ...

    第012章 鲤鱼跳龙门第一招式-自动化工具.rarpython面试

    本章“鲤鱼跳龙门第一招式——自动化工具”主要探讨了如何利用Python在面试中展示自己的自动化能力,以及在实际工作中如何运用这些技能。 首先,Python中的自动化工具通常涵盖以下几个方面: 1. **脚本编写**:...

    2023年Vue最新面试题,包含Vue常用API原理,高频Vue面试题

    2023年Vue最新面试题,包含Vue常用API原理,高频Vue面试题

    2018秋招iOS面试总结

    在2018年的秋季招聘中,iOS面试成为众多求职者关注的焦点。这个时期的面试不仅反映了当时的iOS技术趋势,也为后来的求职者提供了宝贵的参考经验。以下是对2018年秋招iOS面试中常见知识点的详尽解析: 1. **...

    java面试试题 Java工程师面试试题

    Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。Java工程师的面试通常涵盖广泛的领域,包括基础知识、编程能力、并发处理、内存管理、设计模式、框架应用等。以下是一些可能出现在Java...

    2017java面试题

    Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。为了在激烈的求职竞争中脱颖而出,理解和掌握Java面试中的常见问题至关重要。"2017java面试题"这个压缩包文件提供了丰富的资源,帮助Java...

    Java面试题2022

    在准备2022年的Java面试时,了解和掌握关键知识点是至关重要的。Java作为一款广泛应用的后端开发语言,其面试通常会涵盖基础语法、面向对象编程、集合框架、多线程、JVM内存管理、数据库交互以及开源框架等方面。...

    java面试宝典2017版

    Java面试宝典2017版是一份集大成的面试资源,专为准备Java相关职位面试的求职者量身打造。这份文档旨在帮助求职者系统性地复习和掌握Java编程语言的关键知识点,以应对各类面试挑战。以下将对这份资料中的主要知识点...

Global site tag (gtag.js) - Google Analytics