Tag: 等效的

Java等效的Oracle翻译

在java中是否有任何与oracle翻译函数相同的字符串函数或库? 在oracle我可以这样做: select translate( ‘23423k!(dfgd){sdf};’, ‘(){}k!’, ‘{}()’ ) from dual; 得到这个: 23423{dfgd}(sdf); 但在java中,如果我这样做: String a=”23423k!(dfgd){sdf};”; String b=a .replace(“(“, “{“) .replace(“)”, “}”) .replace(“{“, “(“) .replace(“}”, “)”) .replace(“!”, “”) .replace(“k”, “”) ; System.out.println(“ori:”+a); System.out.println(“mod:”+b); 我明白了: ori:23423k!(dfgd){sdf}; mod:23423(dfgd)(sdf);

什么是与C ++静态块等效的C ++习惯用法?

我有一个带有一些静态成员的类,我想运行一些代码来初始化它们(假设这段代码不能转换成简单的表达式)。 在Java中,我会这样做 class MyClass { static int myDatum; static { /* do some computation which sets myDatum */ } } 除非我弄错了,C ++不允许这样的静态代码块,对吧? 我应该做什么呢? 我想要解决以下两个选项: 进程加载时(或加载此类的DLL时)会发生初始化。 首次实例化类时会发生初始化。 对于第二种选择,我在考虑: class StaticInitialized { static bool staticsInitialized = false; virtual void initializeStatics(); StaticInitialized() { if (!staticsInitialized) { initializeStatics(); staticsInitialized = true; } } }; class MyClass : private StaticInitialized […]