z*******y 发帖数: 578 | 1
我是这样做的:
定义两个enum (相当于两个对照表),然后对于一个数字 123,456.35 (他给定上限
不超过$1,000,000)
前面整数部分每三位作为一个单位处理,做一些moduler % 和 divde /, 差不多就是
这个意思。我用C#写的,然后给他发过去。
public enum NumOne
{ one = 1, two = 2, three = 3, four = 4, five = 5, six = 6, seven = 7, eight
= 8, nine = 9, ten = 10, eleven = 11, twelve = 12, thirteen = 13, fourteen
= 14, fifteen = 15, sixteen = 16, seventeen = 17, eighteen = 18, nineteen =
19, }
public enum NumTwo
{ twenty = 2, thirty = 3, fourty = 4, fifty = 5, sixty = 6,seventy = 7,
eighty = 8, nint |
|
h*****g 发帖数: 944 | 2 Q1)
what are the variable types in the statement below?
int * x, y;
a) both x and y are of type int *
b) x is of type int* and y is of type int
c) x is of type int and y is of type int*
d) both x and y are of type int
我选的是b
Q2)
which of the following is a correct declaration for a pointer to a function
that returns a double and takes no arguments?
a) double (*ptr_function)(void);
b) double (ptr_function)(void);
c) double ptr_function(void);
d) double *ptr_function(void);
Q3)
Which of the followi... 阅读全帖 |
|
w****a 发帖数: 710 | 3 template
struct Num
{
enum { Result = Num::Result + 1 };
static void print(){
printf("%d ",Result);
Num::print();
};
};
template <>
struct Num<1>
{
enum { Result = 1 };
static void print(){
printf("%d ",Result);
Num<2>::print();
};
};
template <>
struct Num<10>
{
enum { Result = 10 };
static void print(){
printf("%d ",Result);
};
};
////////////
Num<1> x;
x.print(); |
|
w****a 发帖数: 710 | 4 template
struct Num
{
enum { Result = Num::Result + 1 };
static void print(){
printf("%d ",Result);
Num::print();
};
};
template <>
struct Num<1>
{
enum { Result = 1 };
static void print(){
printf("%d ",Result);
Num<2>::print();
};
};
template <>
struct Num<10>
{
enum { Result = 10 };
static void print(){
printf("%d ",Result);
};
};
////////////
Num<1> x;
x.print(); |
|
p*****p 发帖数: 379 | 5 来自主题: JobHunting版 - 电梯设计题 贴个我以前写的,仅供参考,肯定不是标准解
包括控制系统和电梯厢两个类
class ElevatorSystem
{
public:
struct SystemSetup{
int totalFloors;
int totalElevators;
};
ElevatorSystem(SystemSetup &);
~ElevatorSystem(void);
void requestUp(int floor);
void requestDown(int floor);
private:
int totalFloors;
int totalElevators;
Elevator **elevators;
enum RequestType {NONE, UP, DOWN};
RequestType *requests;
void resetRequest(int floor);
};
class Elevator
{
public:
Elevator(int... 阅读全帖 |
|
h**o 发帖数: 548 | 6 int test_parking_lots(){
ParkingLots p(3,40,50);//floor, row, column
Car car1 = Car();
Motor motor1 = Motor();
Bus bus1 = Bus();
int car1_id, motor1_id, bus1_id;
bool res;
res = p.park(car1, car1_id);
res = p.park(motor1, motor1_id);
res = p.park(bus1, bus1_id);
res = p.unpark(car1, car1_id);
return 0;
}
typedef enum VehicleType_e{
MOTOR_VEHICLE_TYPE = 0,
CAR_VEHICLE_TYPE,
BUS_VEHICLE_TYPE,
MAX_VEHICLE_TYPE_SIZE
} VehicleType;
typedef e... 阅读全帖 |
|
R*****i 发帖数: 2126 | 7 这个题目建议用红黑树做可能最快捷有效。红黑树每一次插入,删除都是log(k),求平
均值非常简单,就是根部的那个节点。所以总的计算量是O(nlog(k))。
以下是c/c++代码(需要修改数组,以便一个一个输入)。
#include
#include
#include
#define INDENT_STEP 4
enum rbtree_node_color {RED, BLACK};
typedef struct rbtree_node_t {
int value;
struct rbtree_node_t* left;
struct rbtree_node_t* right;
struct rbtree_node_t* parent;
enum rbtree_node_color color;
} *rbtree_node;
typedef rbtree_node node;
typedef enum rbtree_node_color color;
typedef struct... 阅读全帖 |
|
x**********4 发帖数: 70 | 8 昨天收到FB的电话,我的OFFER已经批下来了,这也意味着我的JOB HUNTING结束了,下
面是我这两个月来申请结果汇总:
Applications (7): Facebook, Google, Microsoft, Square, Twitter, Rocket Fuel,
Amazon
Offers (5): Facebook (accepted), Microsoft, Amazon, Rocket Fuel, Qualcomm (
return offer)
Rejections (3): Square, Twitter, Google
OFFER细节就不报了,上次看有人报MS的OFFER细节,结果引发口争,有人将其定性为
SHOW OFF。。。
在版上受益良多,我会陆续呈上各家公司的面试经历和面试题(FB的面试题除外),当
务之急是给LEETCODE捐点钱。
非大牛,版上互赞大牛的风气不可取。有二爷,半海和一帮真牛在这镇着,谁敢放肆!
============
Facebook
============
下面更新FB的面试经历吧,因为已经从了,所以不想说具体题目,只说我这... 阅读全帖 |
|
f******h 发帖数: 45 | 9 也找工作了一段时间了,从版上学了很多,上周G家面完了,求个bless。
之前的一些都挂了,还在继续找其他的。等定下来之后一定发面经回报本版。
谢谢大家啦!!
1. http://www.mitbbs.com/article_t/JobHunting/32005597.html
1) Implement a simple calculator (+,-,*,/);
2) Implement "+1" for a large integer;
3) How to match Ads to users;
4) How to extract useful information from a forum webpage (list all
kinds of useful signal you can think of)
5) How to detect the duplicate HTML pages (large scale);
6) Find all the paths between two places on Google map;
7)... 阅读全帖 |
|
x***h 发帖数: 8 | 10 use regedt32. select the entry. then from menu security -> permissions...
couple of things you need to clean up manually.
1. delete services hkey_local_machine->current control set->services...
2. delete hkey_local_machine->software->oracle
3. delete hkey_local_machine->current_control_set->enum->root->legacy...
4. delete hkey_local_machine->control_set001->enum->root->legacy...
5. delete hkey_local_machine->control_set002->enum->root->legacy...
6. delete oracle directory from the disk.
7. clean |
|
z*******3 发帖数: 13709 | 11 这个问题是我在实际工作中遇到的
关于singleton pattern
当然也关于abstract class
java1.5之后,singleton有一个非常容易的实现
public enum Singleton{
INSTANCE;
}
这样做有一个限制
如果你对enum了解的话
会发现
enum不支持extends class
但是支持implements interface
所以如果你按照我之前说的,坚决淘汰掉abstract class
只用一层继承,也就是所有的class都implements interface在你的工作中的话
你把以前的singleton class改造成1.5+以上版本的singleton
会非常轻松,而且是完全可行的
但是如果你不这么做的话
那……
写代码是一门艺术,很多人不理解代码的美感
java的美在于它的结构 |
|
z*******3 发帖数: 13709 | 12 真正的结构上的美要从包结构上入手
而不是从类这个层次入手解决
整体结构就应该划分清楚
而不是等到类这个层次再来切割
那就很痛苦了
所以整个软件工程就是从大而小的切割
而不是在最低一层也就是类层面上的切割
通俗点说就是先component diagram
再class diagram,结构应该是先总体后部分
enum是第一个坚决淘汰abstract class机制的api
如果说以前的api是还隐晦地表达对abstract class的不满
比如servlet, struts等使用abstract class的框架逐步被市场所淘汰
或被其它不需要严格继承的框架所替换
使得用户有更大的灵活性
还有很多api可以用abstract class全部具体化,以满足你不愿意继承的需要
的话
那么enum的出现,则是明确地拒绝你使用这种半实现的机制
看api的变迁足够感觉出这个趋势了
你写的那些代码再重要能比enum这个关键字更重要?
哼哼
下班咯,走人 |
|
r*****l 发帖数: 2859 | 13 enum和integer,float从语言层面上讲是很不同的东西。你前面提到了大小写的问题,
相信你对大小写是重视的。Java里面有int,有Integer。“integer”这个东西在Java
里面是什么呢?
我相信你是想写Integer,Float的。
编译以后一致不能说明编译以前就是一致(虽然编译以后enum和Integer是否一致还有
待商榷)。
enum能保证serialization/deserialization safe。能保证用“==”有一致的结果,
等等。Integer能吗? |
|
r*****l 发帖数: 2859 | 14 你以为我愿意理你似的。你愿意疯狗乱咬人,愿意胡说八道。跟我都没有关系。但是我
不愿意看到常来这里的人受到误导。你也就那么点jb起子。争论不过就随便贬低人。
高手看你有时胡说八道笑笑就过去了。他们都明白怎么回事,你在这里怎么忽悠都不会
影响他们。但是这里有不少Java新手。我是看不过你误导别人。否则都懒得理你。我要
说就会说的东西至少清楚。
告诉你,既然跟别人争,就不要给人留把柄。知道大小写有区别还敢integer写出来。
弱智呀你。我前面好好问你“integer”在Java里是个什么东西。正面回答都不敢?
是你说的“所有的基础数据类型都在这里
http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/package-
是你自己傻逼还是当别人傻逼?
是你说的“enum不仅没有不一样
真正编译后的enum还非常一致地跟integer, float等一样
都是final class,还都是具体实现类
而且几乎都采用了abstract class,而且这个abstract class都直接继承自object
同时也都继承了comparable... 阅读全帖 |
|
r*****l 发帖数: 2859 | 15 enum和integer,float从语言层面上讲是很不同的东西。你前面提到了大小写的问题,
相信你对大小写是重视的。Java里面有int,有Integer。“integer”这个东西在Java
里面是什么呢?
我相信你是想写Integer,Float的。
编译以后一致不能说明编译以前就是一致(虽然编译以后enum和Integer是否一致还有
待商榷)。
enum能保证serialization/deserialization safe。能保证用“==”有一致的结果,
等等。Integer能吗? |
|
r*****l 发帖数: 2859 | 16 你以为我愿意理你似的。你愿意疯狗乱咬人,愿意胡说八道。跟我都没有关系。但是我
不愿意看到常来这里的人受到误导。你也就那么点jb起子。争论不过就随便贬低人。
高手看你有时胡说八道笑笑就过去了。他们都明白怎么回事,你在这里怎么忽悠都不会
影响他们。但是这里有不少Java新手。我是看不过你误导别人。否则都懒得理你。我要
说就会说的东西至少清楚。
告诉你,既然跟别人争,就不要给人留把柄。知道大小写有区别还敢integer写出来。
弱智呀你。我前面好好问你“integer”在Java里是个什么东西。正面回答都不敢?
是你说的“所有的基础数据类型都在这里
http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/package-
是你自己傻逼还是当别人傻逼?
是你说的“enum不仅没有不一样
真正编译后的enum还非常一致地跟integer, float等一样
都是final class,还都是具体实现类
而且几乎都采用了abstract class,而且这个abstract class都直接继承自object
同时也都继承了comparable... 阅读全帖 |
|
s******n 发帖数: 21 | 17 Elegant or not, that's just personal opinion and there is no point to argue
about that. But I do think c# enum provides some very interesting features
that worth mentioning:
- Strongly typed
- Able to specify the base type, int32 will be used if no base type is
specified
- Build-in functions to convert from values to printable strings and vice
versa. Thrust has explained this in his post
- Able to define enum as a bit field.
- Since enum is a class, it can be extended.
Looks like C++ is trying |
|
I*****y 发帖数: 602 | 18 我的理解:
typedef enum { red, green, blue } *ColorPtr;
ColorPtr是个指针类型,指向无名的enum类型。
修改为:
typedef enum Color { red, green, blue } *ColorPtr;
可以通过编译。
而你定义的Point则是一个实实在在的无名的struct类型的别名。
b
a |
|
h*****g 发帖数: 944 | 19 Q1)
what are the variable types in the statement below?
int * x, y;
a) both x and y are of type int *
b) x is of type int* and y is of type int
c) x is of type int and y is of type int*
d) both x and y are of type int
我选的是b
Q2)
which of the following is a correct declaration for a pointer to a function
that returns a double and takes no arguments?
a) double (*ptr_function)(void);
b) double (ptr_function)(void);
c) double ptr_function(void);
d) double *ptr_function(void);
Q3)
Which of the followi... 阅读全帖 |
|
S*****H 发帖数: 90 | 20 1. What is Object?
2. What is Polymorphism? How to implement polymorphism?
3. What is Dynamic Binding and Static Binding?
4. What is OOP?
5. What are important features of OOP? Why OOP are better?
6. What is Class?
7. Difference between class and object.
8. What is enum? What is enum's limitation?
9. What are interface and abstract class?
10. How would you choose between an abstract class and interface?
11. What are struct and union?
12. What is the difference... 阅读全帖 |
|
S*****H 发帖数: 90 | 21 1. What is Object?
2. What is Polymorphism? How to implement polymorphism?
3. What is Dynamic Binding and Static Binding?
4. What is OOP?
5. What are important features of OOP? Why OOP are better?
6. What is Class?
7. Difference between class and object.
8. What is enum? What is enum's limitation?
9. What are interface and abstract class?
10. How would you choose between an abstract class and interface?
11. What are struct and union?
12. What is the difference... 阅读全帖 |
|
m******9 发帖数: 968 | 22 Design a Card Deck,并且写shuffle function,
我之前的一次onsite,class写的不周全,当时shuffle也没写出来,直接因为这个而
fail掉了,后来的面试又被问到过2次。
把它贴出来,我也搜了一个答案出来,不知是否很好,大家讨论一下,有没有更好的解
决方法。
enum Suit { SPADES, CLUBS, HEARTS, DIAMONDS, };
enum Face { ACE, TWO, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT, NINE, TEN, JACK,
QUEEN, KING, };
class Card {
public:
Card(Suit suit, Face face) : suit(suit), face(face) {}
Card(const Card& orig) : suit(orig.suit), face(orig.face) {}
Suit getSuit() const { return suit; }
Face getFace() const { return fa |
|
m******9 发帖数: 968 | 23 贴个card deck的,
我感觉停车场的 也可以用一用扑克牌的套路
enum Suit { SPADES, CLUBS, HEARTS, DIAMONDS, };
enum Face { ACE, TWO, THREE, FOUR, FIVE, SIX, SEVEN, EIGHT, NINE, TEN, JACK,
QUEEN, KING, };
class Card {
public:
Card(Suit suit, Face face) : suit(suit), face(face) {}
Card(const Card& orig) : suit(orig.suit), face(orig.face) {}
Suit getSuit() const { return suit; }
Face getFace() const { return face; }
private:
Card() {}
Suit suit;
Face face;
friend class Deck;
};
class Deck {
public:
Deck() {
int index = 0;
for |
|
z*******y 发帖数: 578 | 24 这个是我写的C#程序,可以run的。
欢迎大家批评指教
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace AmountConversion
{
class Program
{
public enum NumOne
{ one = 1, two = 2, three = 3, four = 4, five = 5, six = 6, seven = 7, eight = 8, nine = 9, ten = 10, eleven = 11, twelve = 12, thirteen = 13, fourteen = 14, fifteen = 15, sixteen = 16, seventeen = 17, eighteen = 18, nineteen = 19, }
public enum NumTwo
{
twenty = 2, th |
|
h****e 发帖数: 928 | 25 ctor可以用enum啊,这样compiler就可以帮你做检查了。然后提供一个
enum->string的函数。这样以后localization也容易。 |
|
y**********u 发帖数: 6366 | 26 如果有多个形参要改变的话,直接封装在一个HashMap里头当参数传递
更好
Enum是类型 |
|
g**e 发帖数: 6127 | 27 Map> m_beverage;
boolean getBeverage(Type ntype) {
if (m_beverage.contains(ntype)
&& m_beverage.get(ntype).size()>0) {
m_beverage.get(ntype).remove(0);
return true;
} else {
return false;
}
}
public enum Type {
COKE, PEPSI, ...
}
为什么不能知道子类型?买东西的时候总要选一个,把类型enum pass进来就行了 |
|
g**e 发帖数: 6127 | 28 我以为你说的enum是给定的? 另外我觉得这题不需要sub class。实际上我的code也没
用subclass啊
用一堆subclass加enum是不好,跟这哥们说的一样 |
|
g**e 发帖数: 6127 | 29 Map> m_beverage;
boolean getBeverage(Type ntype) {
if (m_beverage.contains(ntype)
&& m_beverage.get(ntype).size()>0) {
m_beverage.get(ntype).remove(0);
return true;
} else {
return false;
}
}
public enum Type {
COKE, PEPSI, ...
}
为什么不能知道子类型?买东西的时候总要选一个,把类型enum pass进来就行了 |
|
g**e 发帖数: 6127 | 30 我以为你说的enum是给定的? 另外我觉得这题不需要sub class。实际上我的code也没
用subclass啊
用一堆subclass加enum是不好,跟这哥们说的一样 |
|
r****i 发帖数: 528 | 31 Use cases:
No user request
User presses floor (Up/Down) buttons
User presses elevator buttons (emergency stop button, close/open button/
floor buttons)
User holds elevator door
Not working
Classes:
public enum ElevatorState
{
WAITING, RUNNING, INACTIVE
}
public enum Direction {UP, DOWN}
//to handle
class ElevatorGroup
{
private int id;
private List Elevators;
//to select an elevator in the list and add request to the elevator
request list
public Elevator pickUpElevator(Floo... 阅读全帖 |
|
u*********r 发帖数: 176 | 32 我不知道Java这种用enum实现singleton或者把enum拿来当class的用法到底是不是hack
,反正看着很不爽。。。 |
|
g**e 发帖数: 6127 | 33 enum比用private static class的方法有啥优势,不都是靠class loader实现的么?
enum还不能继承呢 |
|
g**e 发帖数: 6127 | 34 Josh Bloch确实提到Java 1.5以后应该用enum。可是我觉得没啥优势,enum不能继承反
倒是个劣势。
singleton这个东西,我个人认为是anti pattern的,理由以前说过。 |
|
b******g 发帖数: 1721 | 35 You are given a game board that contains a four by four (4x4) array of
pieces. The pieces can be one of six shapes and can be one of six colors
If the board contains 4 pieces of the same shape and same color, the board
contains a winning pattern.
public enum Color
{
Red,
Blue,
Green,
Yellow,
Black,
Purple
}
public enum Shape
{
Square,
Triangle,
Circle,
Star,
Pentagon,
Octagon
}... 阅读全帖 |
|
f********x 发帖数: 2086 | 36 已悲剧了,尽量全写中文,因为以前看见有一道题明显是从这里首发,被别人拷到别了
的网站。
两个电面,面谈4轮加上中午HM吃饭。电面有一轮明显是国人大哥让我水过了,做了一
道很简单的题,还扯淡了下东北部天气,只有半小时不到就完了,还给了正面评价。面
谈3个国人,两个烙印。3个国人都面的还可以。感觉烙印HM那轮聊的不好,我确实也代
码写的不够好,他也全程没兴趣的样子。最后一轮女烙印我面的也不好。她中间貌似不
认识java里的enum,一开始很质疑我写enum,后来感觉是用她电脑现查的,然后就同意
我说的了........
题有
最大子序列(及变种)
一个数列,每个数位置错位不到k,求排序算法,问复杂度(O(nlgk))
八个球,其中一个重量可能轻可能重,3次找出来(这题是那一轮答的好,貌似没题了
才随便问的)
单例模式
带peekMin的队列的变种
生产者消费者多线程(含文件读入输出)
final finally finalize
垃圾回收机制(早晨坐在lobby等待的时候看的,居然直接用上了)
Y家的面试内容明显和别家不同 |
|
p***y 发帖数: 637 | 37 向楼主请教两个关于交流的问题
一是如何防止剽窃。我有一次与人交流,提到我要做一个cache。对方回头立即做了一
个简单的cache类然后群发邮件说大家今后必须cahce数据,还提供他的类的调用例子。
其实他那个基本就是个key/value pair。但给老板们的印象就成了他思灵活创造力好。
二是如何说服别人。码工因而有绩效考核,相互之间其实是激烈竞争关系。很多人都不
喜欢采纳别人的意见,因为会损害自己的绩效而提高别人的。我遇到几个头疼的例子,
比如再三建议大家用enum不要用magic number,却被斥为不懂javascrip;提议引入结
构化和oop思维,也被斥为增加开发成本。许多个月过去后他们发现代码已经很难维护
了,才逐步引入enum和其他一些基本的结构化和面向对象思维,当然全是under他们的
credit.
CS
, |
|
S*******C 发帖数: 822 | 38 我已经写了一个,请大家看一下还有什么可以改进的地方
package design_a_pizza_maker;
/*
* @ServiceNow onsite
*/
import java.util.Scanner;
import java.util.Timer;
import java.util.TimerTask;
public class PizzaMaker extends Stopwatch{
public static void main(String[] args) {
PizzaMaker pizzamaker = new PizzaMaker();
Scanner sc = new Scanner(System.in);
System.out.println("Input a to add 30 seconds to current baking
schedule");
System.out.println("Input c to cancel current baking schedule");... 阅读全帖 |
|
z****e 发帖数: 54598 | 39 map也有很多种啊
不是所有的map都是hashmap那样amortised constant复杂度
比如treemap效率就比较低
switch的话,应该是写起来方便一点
而且这里几十种情况的话,建议你用上visitor
直接把这个switch去掉,还有古德霸说过那个反射的用法
也可以干掉switch
另外加上enum,有限数量的东西全部应该用enum
class是给无限数量用的 |
|
h********m 发帖数: 116 | 40 假设我有个abstract class,和两个不同的子类。根据enum type,决定生成哪个子类:
public abstract class Base {
enum type {c1, c2}
public Base(type){
switch case(c1) return Child1(xxx);
case(c2) return Child2(xxx);
}
}
public class Child1 extends Base
public class Child2 extends Base
可是具体生成instance的时候应该怎么做呢?下面这个语句会报错abstract class
cannot be instantiated:
Base newInstance = new Base(c1); |
|
c****o 发帖数: 265 | 41 This is a large corporation located in Sterling, VA.
The team is doing SIP and ENUM based network routing directory. 8+ years
experience of C/C++ network programming (TCP/UDP/TLS) is required.
Experiences of ENUM, SIP, C/C++ and Linux are also required.
One opening for Software Engineer IV. If you are interested, please send me
your resume, and I will forward it to my manager directly.
Thank you! |
|
F****n 发帖数: 3271 | 42 In Java5 "enum" is a reserved keyword. So I have many progams in which "enum"
has been used as variable names. Is there any tool I can used to convert the
names so those programs can get compiled under Java5? |
|
Z*****Z 发帖数: 723 | 43 问题:一个enum有多大?我前一阵子序列化过一个enum,好像挺大的。。。
efficient的话,一个0到52之间的整数就能表示一张牌,一个byte。。。。 |
|
H****r 发帖数: 2801 | 44 好啊,先说下个人想法:
Card有rank和suit, 分别可以用enum Rank, enum Suit来表示。
标准的playing cards包括4种花色和13种rank的所有组合,再加上2张jokers,共54张
。这54张牌组成一个static const array常驻内存singleton.
每次实际用到Card的地方实际都是一个reference以到这个singleton里查询rank和suit
, 这样只需要一个handle即可。 54张牌的话这个handle可以用byte?
这里偶还不太了解java如何实现const array以及如何合理使用handle. 刚刚写了个用
array的似乎不被肯定啊... |
|
H****r 发帖数: 2801 | 45 public class Card
{
public static final int NUM_UNIQUE_CARDS = 54;
public enum Rank { ACE(1), DEUCE(2), THREE(3), FOUR(4), FIVE(5), SIX(6),
SEVEN(7), EIGHT(8), NINE(9), TEN(10), JACK(11), QUEEN(12), KING(13),
JOKERONE(14), JOKERTWO(15); // including two jokers
private final int value; // face value
Rank(int faceValue) { value = faceValue; }
public int value() { return value; }
}
public enum Suit { CLUBS, DIAMONDS, HEARTS, SPADES, JOKER ... 阅读全帖 |
|
H****r 发帖数: 2801 | 46 谢好虫肯定!
如果用两个enum有浪费,或许可以只用一个enum CardId表示,rank和suit的结果都照
CardId做reference. |
|
Z*****Z 发帖数: 723 | 47 我刚才测试了一下,Hector的实现要是加上Serializable接口,序列化之后大小是72字
节。如果改用一个int或者byte实现的话,大小是30几字节。我猜想enum或许不大,但是
序列化的时候还要序列化enum的定义,可能20几字节吧? |
|
Z*****Z 发帖数: 723 | 48 虫哥别生气。。。我没有一点儿说enum不好的。。。要是我写,我也会写enum。。。只
是逗逗闷子而已。。。 |
|
z****e 发帖数: 54598 | 49 这点小内存不用刻意去省,没有必要
我只在一种时候考虑过java的内存使用,当然内存泄露不算
就是在读取image的时候,因为image占的内存很大,而applet等一些小程序有内存限制
只有64m,所以我要考虑这个大小,其它的,只要是类的使用,不加载特别大东西的话
一般不需要考虑内存的使用
enum就是一个特殊的class
两个特征
1.内存中有限个
2.serializable
所以用enum可以很容易实现singleton |
|
z*******3 发帖数: 13709 | 50 所有的基础数据类型都在这里
http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/package-
enum不仅没有不一样
真正编译后的enum还非常一致地跟integer, float等一样
都是final class,还都是具体实现类
而且几乎都采用了abstract class,而且这个abstract class都直接继承自object
同时也都继承了comparable和serializable接口
怎么看怎么一样
楼主真是万恶的,错成这个鸟样还要出来误导群众
尼玛,老子就算有错,也不至于错成这个卵样吧?
这厮整个一狗屁不通啊,估计还在大学里面学什么java吧
连jdk1.0都没学好,就出来大谈1.5和j2ee
强人年年有,今年特别多 |
|